Fechar porta SSH padrão em Centos

1

Tenho recebido milhares de logins com falha por hora nas últimas semanas e tenho certeza de que 99% deles são de bots. Instalei o fail2ban e tenho bloqueado algumas sub-redes, mas também decidi alterar a porta que uso para o SSH. É só eu usando o servidor, então é uma mudança simples para se livrar de um monte de pedidos de bot.

Eu fiz a mudança e tudo está funcionando bem. Eu quero agora bloquear a porta 22. Eu verifiquei firewalld e nunca houve uma regra para a porta 22, o que me faz pensar como isso funcionou em primeiro lugar. Alguma coisa deve ter sido feita para garantir que as solicitações da porta 22 não fossem bloqueadas. Como faço para desativar isso e bloquear completamente a porta 22?

    
por Dan Hastings 12.01.2017 / 09:48

2 respostas

1

De sua pergunta anterior, vejo que você está usando o CentOS 6. O arquivo /etc/sysconfig/iptables conterá o estado do seu firewall IPv4 quando for carregado pela primeira vez. Isso pode ser diferente do estado de execução do seu firewall, especialmente se você tiver adicionado regras arbitrárias. Você pode salvar o estado atual do seu firewall com o comando

service iptables save

que sobrescreve /etc/sysconfig/iptables (pode ser prudente fazer um backup primeiro).

Em circunstâncias normais, você encontrará uma linha como esta

-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT 

que permite conexões para a porta 22. Simplesmente apague a linha e salve o arquivo. Quando você está de volta na linha de comando, execute o comando

service iptables reload 

Isso garantirá que o estado do firewall salvo e o estado do firewall em execução sejam os mesmos. Isso funciona porque o firewall padrão no CentOS 6 tem uma regra geral REJECT no final da cadeia INPUT.

Se você não quiser confiar no cobertor REJECT, mude a linha para

-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j DROP

salve e reinicie como acima.

Note que o que o @ipor diz é verdade. Se você moveu o sshd para uma porta diferente, ele será efetivamente fechado, pois nada está escutando.

    
por 12.01.2017 / 11:16
-1

Use abaixo as regras do IPtable para bloquear a porta 22 no nível do firewall após o login como root.

bloqueie ssh sobre eth0 (nic card) de fora para o sistema.

iptables -F

service iptables save

iptables -A INPUT -i eth0 -p tcp --dport 22 -j DROP

iptables -A OUTPUT -o eth0 -p tcp --sport 22 -j DROP

service iptables save

Por isso, manterá o estado de iptable para sempre. (lembre-se que há muita maneira de bloquear pedidos indesejados, você pode selecionar qual deles quer usá-lo em seu env. como por sua exigência desde que qualquer um pode fazer o "googling".)

    
por 12.01.2017 / 09:55