# Aviso "REMOTE HOST IDENTIFICATION HAS CHANGED" ao acessar a VPS: o que fazer

> O aviso aparece quando a VPS apresenta uma identificação diferente da que o seu computador guardou. Depois de reinstalar o sistema, é normal: apague a identificação antiga com ssh-keygen -R <IP_DA_VPS> e conecte de novo. Se você não reinstalou nem trocou de VPS, não continue e fale com o Suporte.

O aviso `REMOTE HOST IDENTIFICATION HAS CHANGED` aparece quando a VPS apresenta uma identificação (a chave do host) diferente da que o seu computador guardou na primeira conexão. As causas mais comuns são: você reinstalou o sistema da VPS, o IP passou a ser de outra VPS ou as chaves do SSH da VPS foram trocadas. Nesses casos é normal: apague a identificação antiga com `ssh-keygen -R <IP_DA_VPS>` e conecte de novo. Se nada disso aconteceu, não continue: pode ser alguém no meio da conexão, e o certo é falar com o Suporte.

> **Atenção: segurança da sua VPS.** Este aviso existe para proteger você. Só apague a identificação antiga quando souber por que ela mudou.

## Sintomas

Ao conectar com `ssh root@<IP_DA_VPS>`, o terminal mostra uma mensagem como esta e não conecta:

```
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
...
Offending ED25519 key in /home/<USUARIO>/.ssh/known_hosts:3
Host key verification failed.
```

No Windows, o caminho aparece como `C:\\Users\\<USUARIO>/.ssh/known_hosts`. O arquivo `known_hosts` é onde o seu computador guarda a identificação de cada servidor em que você já entrou.

## Causa 1: você reinstalou o sistema da VPS

**Como confirmar:** você usou **Reinstalar SO** na **Zona perigosa** da aba **Sistema** (**Minhas VPS › Gerenciar › Sistema**) pouco antes do aviso. A reinstalação cria chaves novas para o SSH da VPS, então a identificação muda. Isso é esperado.

**Como resolver:** no terminal do seu computador (Linux, Mac ou PowerShell no Windows), apague a identificação antiga:

```
ssh-keygen -R <IP_DA_VPS>
```

O terminal mostra `# Host <IP_DA_VPS> found` e `Original contents retained as ...`. Conecte de novo com `ssh root@<IP_DA_VPS>`: aparece a pergunta `Are you sure you want to continue connecting (yes/no/[fingerprint])?`, como na primeira conexão. Digite `yes`.

Se você conecta por outra porta, use `ssh-keygen -R "[<IP_DA_VPS>]:<PORTA>"`. Se conecta pelo domínio, apague também `ssh-keygen -R seudominio.com.br`.

Para ter certeza antes do `yes`, confira a identificação pelo Console SSH do painel, que não passa pela rede (veja "Como acessar sua VPS pelo Console SSH do painel"):

```
ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub
```

O código que começa com `SHA256:` deve ser igual ao que o terminal mostra na pergunta (`ED25519 key fingerprint is SHA256:...`).

## Causa 2: o IP passou a ser de outra VPS

**Como confirmar:** você contratou uma VPS nova, cancelou uma antiga ou recebeu um IP que já tinha usado antes. O seu computador guardou a identificação da máquina antiga para aquele IP. Confira o IP atual em "Como ver os IPs e a rede da VPS pelo painel".

**Como resolver:** se o IP é mesmo o da sua VPS atual, faça como na causa 1: `ssh-keygen -R <IP_DA_VPS>` e conecte de novo, conferindo a identificação pelo Console SSH.

## Causa 3: as chaves do SSH da VPS foram trocadas

**Como confirmar:** você (ou um script, ou o seu desenvolvedor) gerou chaves novas para o servidor SSH, ou restaurou um snapshot ou backup feito antes de uma reinstalação, o que traz de volta as chaves antigas.

**Como resolver:** confira pelo Console SSH, com o `ssh-keygen -lf` da causa 1, se a identificação da VPS é a que o terminal mostra. Se for, apague a antiga com `ssh-keygen -R <IP_DA_VPS>` e conecte de novo.

## Causa 4: nada mudou na VPS (sinal de alerta)

**Como confirmar:** você não reinstalou, não trocou de VPS, não mexeu nas chaves e não restaurou nada. Nesse caso, alguém pode estar se passando pela VPS no caminho da conexão (o ataque chamado man-in-the-middle). Teste de outra rede, como o 4G do celular, e compare a identificação mostrada no terminal com a do Console SSH (`ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub`).

**Como resolver:** não rode o `ssh-keygen -R` e não digite a senha. Se o aviso some em outra rede, o problema está na rede de onde você conectou (por exemplo, um Wi-Fi público). Se a identificação no Console SSH é diferente da que você conhecia e ninguém mexeu na VPS, trate como possível invasão: abra um chamado no Suporte antes de continuar.

## Quando chamar o Suporte

Na VPS, você tem acesso root e cuida do que instala; o suporte da StayCloud cuida da infraestrutura: a VPS ligada, a rede e o painel. Veja "Perguntas frequentes sobre o que o suporte da StayCloud faz". Abra um chamado se o aviso aparece sem que você tenha reinstalado, trocado de VPS ou mexido nas chaves.

No chamado, informe o IP da VPS ou o nome dela no painel, o horário, a mensagem completa do aviso (a identificação `SHA256:` não é secreta e pode ir no chamado), de qual rede você conectou e o resultado do `ssh-keygen -lf` no Console SSH. Nunca mande senha nem chave privada. O passo a passo está em "Como abrir um chamado no Suporte".

## Relacionados

- Como acessar sua VPS por SSH pelo terminal (Linux, Windows e Mac)
- Como acessar sua VPS pelo Console SSH do painel
- Como reinstalar o sistema operacional da VPS pelo painel
- Como ver os IPs e a rede da VPS pelo painel
- Perguntas frequentes sobre o que o suporte da StayCloud faz
- Como abrir um chamado no Suporte

---
Fonte: https://help.staycloud.com/artigos/aviso-remote-host-identification-has-changed-ao-acessar-a-vps-o-que-fazer
