O site mostra uma página que não é sua. Ou o Google avisa que o seu site "pode danificar o computador". Ou o servidor está lentíssimo e nos processos há algo chamado kdevtmpfsi a comer o CPU. Entraram-lhe. É um mau bocado, mas se tiver instantâneos, resolve-se numa tarde e sem pagar a ninguém.
A ideia central é que uma máquina comprometida não se limpa: abandona-se. Nunca saberá com certeza o que mais deixaram lá dentro. O que sabe é que o instantâneo de há dez dias estava são. Por isso levanta uma máquina nova a partir dessa cópia, põe-na em dia, fecha a porta por onde entraram e passa-lhe o endereço do site. A antiga deixa-a desligada e isolada, caso seja preciso ver o que aconteceu.
O guia está escrito para o Lightsail; no EC2 os passos são os mesmos com outros nomes de menu.
Antes de começar: o que significa cada coisa
- Instantâneo
- Uma cópia completa do disco da máquina num dado momento: sistema, programas, site e dados. A partir dele pode criar-se uma máquina nova idêntica a como estava então.
- Máquina comprometida
- Um servidor em que alguém de fora conseguiu entrar ou executar coisas. Mesmo que apague o que vê, pode ficar algo escondido.
- Porta traseira
- O que um atacante deixa para voltar a entrar mesmo que mude a palavra-passe: um utilizador novo, uma chave acrescentada, um ficheiro PHP escondido. É a razão pela qual não se reutiliza a máquina.
- IP estático
- O endereço fixo da internet que aponta para a sua máquina no Lightsail. Pode desassociar-se de uma máquina e associar-se a outra; assim o site muda de servidor sem mudar de endereço.
- DNS
- A "agenda" que traduz o seu domínio (asuaempresa.pt) para o endereço IP do servidor. Se o IP estático se move com o site, não é preciso tocar no DNS.
- Firewall
- A lista de portas abertas da máquina e de onde se pode entrar por cada uma. No Lightsail está no separador Rede de cada instância.
- Porta 22 (SSH)
- A porta por onde se administra uma máquina Linux. Aberta a toda a internet é o alvo favorito dos robôs que experimentam palavras-passe.
- Chave SSH
- O ficheiro que substitui a palavra-passe para entrar por SSH. Se a máquina estava comprometida, dê por certo que a levaram.
Passo a passo
Confirme que lhe entraram e não apague nada
Sinais habituais: conteúdo ou ligações que não pôs, redirecionamentos para outros sites, e-mails da AWS sobre atividade suspeita, avisos do Google Search Console, a máquina a 100% de CPU sem motivo, utilizadores novos no WordPress ou no sistema, ficheiros modificados a horas estranhas.
E a primeira coisa que NÃO se deve fazer: não apague ficheiros, não reinstale por cima, não "limpe" o servidor. Duas razões. Uma, o atacante provavelmente deixou mais do que uma porta e limpar à mão não as encontra todas. Duas, se tem seguro, clientes com dados pessoais ou tem de avisar a autoridade de proteção de dados, vai querer conservar a máquina tal como está para que alguém a possa examinar. Faça agora mesmo um instantâneo da máquina comprometida com um nome claro (
web-COMPROMETIDA-2026-10-28) e não lhe toque mais.Isole a máquina fechando o firewall
Entre no Lightsail, clique no nome da máquina e abra o separador Rede. No bloco Firewall IPv4 verá as regras: normalmente SSH (22), HTTP (80) e HTTPS (443). Elimine todas as regras salvo a de SSH e, nessa, clique no lápis, marque Restringir a endereço IP e escreva só o seu IP atual (vê-o procurando "qual é o meu IP" no Google). Faça o mesmo em Firewall IPv6 se estiver ativado.
Com isto o site deixa de se ver, sim. Mas também deixa de servir malware aos seus visitantes, de enviar spam e de atacar terceiros a partir do seu endereço. Umas horas sem site explicam-se; uma queixa, não. Para os passos seguintes não precisa de entrar na máquina antiga, por isso pode tirar também a regra de SSH.
Escolha um instantâneo anterior ao ataque
No menu da esquerda do Lightsail, Snapshots. Verá a lista de cópias dessa máquina com a sua data. Precisa de um que seja anterior ao primeiro sintoma, com margem: se notou algo no dia 25, não apanhe o do dia 24, porque o ataque pode ter começado dias antes de se tornar visível. Se o site é WordPress, os ficheiros modificados têm data: veja-a na cópia ou no painel de ficheiros, e escolha um instantâneo de pelo menos uma semana antes.
É inevitável perder as alterações feitas desde essa data: encomendas, artigos, fotografias. Aponte quais são para as repor à mão no fim. Se a base de dados está noutra máquina ou no RDS, não é afetada por este passo, mas reveja na mesma os seus utilizadores e palavras-passe (passo 5). Se não tiver nenhum instantâneo limpo, veja a secção de problemas: a recuperação é outra.
Crie uma máquina nova a partir do instantâneo
No instantâneo escolhido, menu dos três pontos, Criar nova instância. Escolha a mesma zona de disponibilidade da máquina antiga (o IP estático só se pode mover dentro da mesma região), o mesmo plano ou um maior, e dê-lhe um nome novo (
web-2026-10-28). Deixe-a arrancar: demora uns dois minutos.A máquina nova nasce com o firewall por defeito (22, 80 e 443 abertos a todos). Antes de mais, separador Rede e restrinja a 22 ao seu IP, tal como fez no passo 2. Deixe a 80 e a 443 fechadas por agora: não a publique antes de a ter atualizado.
Atualize e mude todas as palavras-passe e chaves
Entre na máquina nova com o botão Ligar através de SSH do Lightsail (abre um terminal no navegador, sem instalar nada). Agora, por ordem:
- Atualize o sistema: em Ubuntu ou Debian,
sudo apt update && sudo apt upgrade -y. Nas imagens da Bitnami, atualize além disso a aplicação a partir do seu painel. - Atualize o site: WordPress, tema e todos os plugins. Apague os plugins que não usa. Em 90% dos casos a porta foi um plugin desatualizado.
- Palavras-passe do site: todos os utilizadores administradores. Elimine os que não reconhecer.
- Palavra-passe da base de dados, e atualize-a no ficheiro de configuração do site (
wp-config.phpou equivalente). - Chave SSH: no Lightsail, menu Conta, Chaves SSH, crie uma nova e apague a antiga; na máquina, substitua o conteúdo de
~/.ssh/authorized_keys. A chave antiga pode ter saído da máquina comprometida. - Chaves de serviços externos que estivessem na máquina: e-mail (SMTP), gateway de pagamento, API da AWS se houvesse alguma. Gere novas e revogue as anteriores.
Veja também
/etc/passwde ocrontabdo root, caso o instantâneo não fosse tão limpo como pensava: utilizadores que não conhece ou tarefas agendadas estranhas. Se vir algo, volte ao passo 3 com um instantâneo mais antigo.- Atualize o sistema: em Ubuntu ou Debian,
Mova o IP estático e reveja o DNS
No Lightsail, menu Rede (o da esquerda, não o separador da máquina). Clique no IP estático do site: verá a que instância está associado. Desassocie-o da máquina antiga e associe-o à nova. A mudança é imediata e o domínio continua a apontar para o mesmo endereço, por isso não é preciso esperar que o DNS se propague.
Ainda assim, entre no seu fornecedor de domínio (ou em Zonas DNS do Lightsail, se o gerir lá) e repasse todos os registos. Os atacantes às vezes não tocam no servidor, mas acrescentam registos que desviam o e-mail ou um subdomínio. Se vir um registo A, MX ou TXT que não reconhece, apague-o.
Agora sim: na máquina nova, separador Rede, acrescente as regras HTTP (80) e HTTPS (443) abertas a todos. Verifique o site a partir do telemóvel com dados, que não passa pela sua rede, e veja a data de validade do certificado HTTPS: está no instantâneo e deveria renovar-se sozinho.
Depois: fechar a porta e não voltar aqui
A máquina antiga: deixe-a parada um mês, com o firewall fechado. No Lightsail continua a ser cobrada parada, por isso se o custo importar, apague-a e conserve o instantâneo do passo 1, que guarda as provas. Passado um tempo prudente, apague também esse instantâneo.
E três medidas para que não se repita:
- Instantâneos automáticos: na máquina nova, separador Snapshots, ative os automáticos (o Lightsail guarda os últimos sete, um por dia). Para conservar alguns por mais tempo, faça um manual por mês.
- Atualizações: uma vez por semana, sistema e site. Ponha um lembrete. É aborrecido e é o que evita 90% das intrusões.
- Porta 22 só para o seu IP, e fechada quando não a usar. Há um guia nesta secção só sobre isso. E se o site não precisa que ninguém carregue ficheiros por FTP, não tenha a 21 aberta.
Por último, se o site guardava dados de clientes, consulte quem trata da proteção de dados na sua empresa: uma intrusão no servidor pode obrigar a comunicá-la em 72 horas.
O que pode correr mal
Todos os instantâneos são posteriores ao ataque
Acontece quando só há instantâneos automáticos (sete dias) e o ataque está lá dentro há mais tempo. Resta-lhe a via longa: máquina nova a partir da imagem limpa do Lightsail, instalar o site de raiz, e copiar da máquina antiga unicamente o conteúdo (fotografias, documentos) e uma exportação da base de dados, revendo esta última à procura de utilizadores e artigos que não reconheça. Nunca copie ficheiros de programa (temas, plugins) da máquina comprometida.
Movi o IP e o site não carrega
Veja primeiro o firewall da máquina nova: a 80 e a 443 estão abertas? É o que mais se esquece. Depois confirme no terminal que o servidor web está arrancado (sudo systemctl status apache2 ou, na Bitnami, sudo /opt/bitnami/ctlscript.sh status). Se carregar sem estilos ou com ligações partidas, reveja o endereço do site nas definições do WordPress.
O Google continua a marcar o site como perigoso
O Google demora a voltar a rever. Entre no Search Console, secção Segurança e ações manuais, e peça a revisão explicando o que fez. Costuma resolver-se num ou dois dias. Se o domínio aparecer em listas de spam, cada lista tem o seu próprio formulário de remoção.
Voltaram a entrar na máquina nova
Então a porta não estava na máquina mas em algo que continua igual: uma palavra-passe que não mudou, um plugin com uma falha pública sem correção, uma chave da base de dados reutilizada, ou um computador do escritório infetado a partir do qual se entra por SSH. Repasse a lista do passo 5 linha a linha e mude também as palavras-passe do fornecedor de domínio e da própria conta da AWS. E veja o firewall: se a 22 está aberta a todos, já sabe por onde.
No Simplio
A partir do Simplio a recuperação são uns poucos cliques no mesmo ecrã: vê os instantâneos da máquina com a sua data, escolhe um e restaura-o numa máquina nova. O firewall de cada máquina mostra as portas abertas e a partir de onde; fechar todas as portas ou abrir a 22 só para o seu IP é um botão ("adicionar o meu IP"), e há um terminal no navegador para atualizar e mudar palavras-passe sem instalar nada.
Restaurar e apagar pedem o duplo fator na hora, e o registo de atividade deixa registado quem fez cada coisa e quando, que é exatamente o que precisa de documentar depois de um incidente. Se uma máquina parar ou deixar de responder, o Simplio avisa-o por e-mail antes que um cliente lho diga.
O mesmo, na AWS e no Simplio
| Na consola da AWS | No Simplio | |
|---|---|---|
| Isolar a máquina | Separador Rede, apagar regras uma a uma, escrever o seu IP à mão | Fechar portas com um clique; "adicionar o meu IP" para a 22 |
| Restaurar numa máquina nova | Snapshots, criar instância, escolher zona e plano, mover o IP estático | Escolher o instantâneo e clicar em restaurar; o IP move-se a partir do mesmo ecrã |
| Entrar para atualizar | Ligar através de SSH do Lightsail ou um cliente instalado | Terminal no navegador, com o acesso registado |
| Saber quem fez o quê durante o incidente | CloudTrail, por serviço e região | Registo de atividade em linguagem normal |