Eu acidentalmente proíbo a conexão SSH com um servidor remoto… O que vem a seguir?

60

Vamos dizer de novo, todos cometemos erros , e acabei de fazer um.

Uma breve história: Eu estava fazendo algumas coisas em um VPS (Debian) que estou alugando, quando notei um comportamento estranho. Usando o comando netstat , vi uma conexão não autorizada por meio do SSH. Eu não sabia o que fazer, então decidi fechar a conexão dele usando iptables :

iptables -A INPUT -p tcp --dport ssh -s IP -j DROP

Mas estou cansado e escrevi

iptables -A INPUT -p tcp --dport ssh -j DROP

e eu me chutei (e todos os outros) para fora ...

Como corrijo isso?

    
por tomatoGuy 22.04.2015 / 16:42

5 respostas

60

Existem várias alternativas:

  • Veja se eles têm acesso IPMI / "KVM" / console ao servidor, o que permite controlá-lo como se você tivesse um teclado físico conectado a ele.
  • Se eles não oferecerem isso, veja se você pode inicializar a VM em um CD de recuperação do linux (alguns provedores oferecem isso) e, em seguida, corrigir as regras de firewall dessa maneira e inicializá-lo normalmente.
  • Se você não tiver acesso ao console, antes de inicializar a recuperação ou anexar o volume a outra VM (como no caso da Amazon, responda ao usuário do crédito3550767), tente a resposta do Ankh2054 de reinicializar primeiro se não tiver salvado as regras (provavelmente o caso desde que você chutou para fora antes que você tivesse a chance de salvar). Use o painel de controle ou peça a alguém para ligar e desligar o sistema usando um reset / poweroff não-convencional (também conhecido como hard reboot ou hard shutdown) caso o script de inicialização salve as regras automaticamente quando reinicializar normalmente (crédito @jfalcon, @joshudson). p>

    Pese as desvantagens disso (por exemplo, dados que estão sendo gravados durante a reinicialização podem ser perdidos e a verificação do sistema de arquivos pode ser necessária na inicialização por um tempo de inicialização maior, embora esse atraso possa ser inferior à inicialização).

por 22.04.2015 / 16:44
47

Se você ainda não salvou a regra IPtables, poderá reinicializar o servidor no VPS (se disponível) e a regra deverá desaparecer.

    
por 22.04.2015 / 16:47
30

É para isso que servem as linhas de ajuda com pessoal humano. Ligue para o provedor de serviços e peça a um de seus operadores para remover a regra para você.

    
por 22.04.2015 / 17:55
3

Uma maneira geral de corrigir uma instância quebrada é desligá-lo e anexar o volume raiz a uma instância em funcionamento. Você pode montar o volume lá e visualizar logs ou editar arquivos de configuração. Você pode então desanexar o volume e iniciá-lo em sua própria instância.

    
por 23.04.2015 / 01:14
3

Resposta formal: vá ao painel de gerenciamento do VPS, obtenha acesso local (KVM virtual) de alguma forma ou ligue para eles.

Explicação dos passos / regras para evitar cair novamente:

  1. Existem alterações nas regras de ip, roteamento e firewall que podem danificar e bloquear seu acesso.
  2. e aplica-se também à configuração de dispositivos de rede dedicados, não apenas aos VPSs

Então, a menos que você tenha 100% de certeza de que pode se recuperar .. Recomendo sempre fazer uma maneira de redefinir a configuração de rede para seu estado anterior ... como abrir sessão em segundo plano com screen , nohup ou tmux , mesmo cron pode funcionar para isso e adicionar iptables -F ou outros meios desejados para redefinir qualquer coisa para o estado anterior.

    
por 23.04.2015 / 12:33