Para facilitar a depuração, defina a diretiva LogLevel em / etc / ssh / sshd_config para Verbose ou Debug (é Info por padrão)
Eu tenho um servidor Ubuntu 12.04 com nomes de host 'example.org' e 'sub.domain.com' e alguns IP x.x.x.x e com fail2ban instalado.
Em um computador cliente, posso usar o SSH no meu servidor em [email protected], [email protected] e [email protected]. Em outro cliente, no entanto, não posso usar o SSH em [email protected].
Além disso, ao pesquisar os arquivos /var/log/ do servidor, não há registros para o segundo cliente tentando efetuar login via [email protected]. Isso também é evidente porque fail2ban não bane o segundo cliente após várias tentativas de senha com falha em [email protected].
Executando ssh -vvv [email protected] no segundo cliente, a última mensagem de depuração diz apenas que o cliente está falando com o servidor - e depois é negado.
Existe alguma maneira de eu depurar ainda mais o problema no servidor, ou algo que está faltando?
Editar: também devo observar que o nome do host está resolvendo corretamente em todas as máquinas - ping , nslookup e wget parecem funcionar corretamente ao tentar resolver example.org.
Para facilitar a depuração, defina a diretiva LogLevel em / etc / ssh / sshd_config para Verbose ou Debug (é Info por padrão)
É difícil dizer qual é o problema real porque você está ofuscando as mensagens de erro. Eles são informativos, familiares e menos ambíguos do que suas interpretações / interpretações. Se você tiver mensagens de erro, forneça-as ao solicitar suporte.
A diferença, eu entendo, está em onde essas máquinas clientes estão localizadas em relação ao servidor. Eu estou supondo que um é , enquanto o outro está em fora .
O erro "- e depois é negado". significa que o servidor não está escutando nessa porta. Ou seja, a porta TCP solicitada não está vinculada a um soquete de escuta na interface solicitada (endereço IP). Como alternativa, significa - o cliente não pode acessar a porta solicitada em x.x.x.x devido a um firewall.
Você precisa:
a. Permitir que conexões originadas da interface externa atinjam a porta TCP 22
b. Configure o sshd para escutar em todas as interfaces (padrão) ou no ip da interface externa.
Se a interface externa do seu host sshd tiver um endereço IP diferente do que o exemplo.org resolve, você terá um NAT.
c. Configure o Masquerading (NAT) no seu roteador.
INTERNAL_IP=10.3.0.7
INTERNAL_NM=255.255.255.224
INTERNAL=eth0
EXTERNAL=wlan0
ifconfig $INTERNAL $INTERNAL_IP netmask $INTERNAL_NM up
echo 1 >/proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o $EXTERNAL -s 10.3.0.0/24 -j MASQUERADE
iptables -A FORWARD -i $EXTERNAL -o $INTERNAL -m state \
--state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i $INTERNAL -o $EXTERNAL -j ACCEPT
# -m state is deprecated these days so you should probably figure out what the
# new NAT method is
Para obter uma resposta adequada, tente atualizar suas perguntas com:
ref: iptables do Ubuntu