havia uma regra no iptables semelhante a esta que fazia com que ela não funcionasse:
iptables -I INPUT -p TCP --dport 22 -m state --state NEW -m limit --limit 4/minute --limit-burst 5 -j ACCEPT
Estou trabalhando em um servidor unix, conectando a máquina usando plink ou session.net (um módulo C # que abre uma conexão ssh com o servidor e executa comandos).
Tudo estava bem até que reiniciamos a máquina na segunda-feira. Agora, sempre que tento acessar a máquina com o programa, ela faz algo como banir meu endereço IP.
Eu tentei vi /etc/hosts.deny
, mas não há nada lá e só tenho acesso de leitura a ele e hosts.allow
. Eu não sei muito sobre a administração do sistema unix, mas eu preciso deste computador para parar de proibir o meu ipaddress. (O nome de usuário e as senhas que estou usando estão corretos, porque quando eu uso putty e winscp, o servidor não bane automaticamente meu IP no início.)
Obrigado pela ajuda.
Eu encontrei /sbin/iptables
, mas ele diz que não é permitido executar /sbin/iptables -L -v
como root no pc
Meu chefe executou iptables -L -v
como root e não havia informações sobre as proibições
Descobri que após um certo período de tempo - cerca de uma hora - a proibição ou bloqueio no meu endereço IP é liberada, mas é rapidamente restabelecida quando eu penetrei na máquina
A criptografia rsa e o login automático não resolvem o problema
A reinicialização da máquina faz com que ela permita de 1 a 4 plinks e recusa todas as novas conexões de um endereço IP
$ cat /etc/*release 20110420_1358 CentOS release 5.5 (Final) $ cat /etc/hosts.deny hosts.deny This file describes the names of the hosts which are *not* allowed to use the local INET services, as decided by the '/usr/sbin/tcpd' server. The portmap line is redundant, but it is left to remind you that the new secure portmap uses hosts.deny and hosts.allow. In particular you should know that NFS uses portmap! $ which denyhosts fail2ban /usr/bin/which: no denyhosts in (/usr/kerberos/bin:/opt/454/bin:/usr/local/bin:/bin:/usr/bin:/home/adminrig/bin) /usr/bin/which: no fail2ban in (/usr/kerberos/bin:/opt/454/bin:/usr/local/bin:/bin:/usr/bin:/home/adminrig/bin) $ tail --lines=50 /var/log/auth.log /var/log/secure tail: cannot open '/var/log/auth.log' for reading: No such file or directory tail: cannot open '/var/log/secure' for reading: Permission denied
Se a mensagem de erro for algo como:
Received disconnect from 123.123.123.123: 2: Too many authentication failures for userXXX
Então, na verdade, você não o baniu, apenas tentou usar várias chaves ssh, que não está forçando a autenticação de senha no script usando algumas opções, como ssh -o PubkeyAuthentication=no [email protected]