Como recuperar o acesso SSH depois de ser bloqueado pelo iptables?

8

TL: DR

Eu fiz alterações na minha configuração do iptables e agora o SSH está recusando todas as conexões. Posso corrigir isso sem entrar em contato com minha empresa de hospedagem?

Versão longa

Ok, isso é mais provável 100% minha culpa ...

Na preparação da mudança de um site para um servidor dedicado, obtivemos uma nova máquina hospedada rodando o CentOS 5.6. A máquina tem o iptables bastante bloqueado, apenas permitindo ssh (22) e http (80), mas também precisávamos aceitar o FTP pela porta 20 e 21.

Nesta tarde, adicionei linhas ao meu iptables para aceitar a conexão de entrada para as portas 20 e 21. No começo, isso não funcionou porque havia uma linha reject all acima das linhas que adicionei para o ftp. Então mudei essa linha para baixo, salvei e reiniciei o iptables e o ftp estava funcionando.

Duas horas depois, quando tento me conectar novamente, port 22: Connection refused O mesmo para http.

Portanto, não consigo acessar o servidor por meio do SSH. Posso corrigir isso sem entrar em contato com minha empresa de hospedagem?

    
por Jan Henckens 12.08.2011 / 20:47

4 respostas

11

Infelizmente, não. Não, a menos que você tenha alguma outra interface de gerenciamento disponível como um console serial remoto, iDRAC, iLO, etc. Faça a experiência e lembre-se de testar as configurações antes de sair da próxima vez;)

    
por 12.08.2011 / 20:55
6

Assumindo que você ainda pode fazer o ftp para o servidor, e você pode logar como root via ftp (improvável e normalmente mal aconselhado) em um ambiente não-chrooted (etc):

Coloque um arquivo em /etc/cron.d com estes conteúdos:

* * * * * root /sbin/service iptables stop 
    
por 13.08.2011 / 00:47
0

De acordo com estas instruções , você também pode anexar:

scripts2/doautofixer?autofix=iptablesflush

... para o seu URL WHM. Eu fiz isso e acabei com uma URL:

https://mysite:2087/SESSION_ID/scripts2/doautofixer?autofix=iptablesflush

Ele redefiniu meus iptables e tudo ficou bem com o mundo novamente. :)

    
por 24.05.2014 / 06:59
0

No CentOS você tem o arquivo /etc/sysconfig/iptables , se você não o possui, você pode criá-lo simplesmente usando iptables-save para despejar o conjunto atual de regras em um arquivo.

iptables-save > /etc/sysconfig/iptables

Para carregar o arquivo, você não precisa reiniciar a máquina, você pode usar iptables-restore

iptables-restore < /etc/sysconfig/iptables
    
por 10.04.2017 / 01:30