Uma auto-resposta muito decepcionante
Tendo deixado esse problema de lado por um dia e voltado para ele, fiquei ao mesmo tempo aliviado e perturbado (mais perturbado do que aliviado) ao descobrir que tudo estava, misteriosamente, funcionando apropriadamente.Então, qual foi o problema?
Nenhuma configuração foi alterada ou ajustada - não no roteador, não no servidor SSH e não na máquina do cliente SSH. É bastante seguro dizer que o roteador não está manipulando o tráfego de entrada corretamente, apesar das configurações adequadas. Dado que o software de roteador doméstico dinky não é realmente projetado para lidar com o encaminhamento de porta, levou o pobre rapaz um tempo para implementar as mudanças necessárias.
Mas tem sido como 6 horas !!
Sim cara, eu sei. Passei o dia todo tentando descobrir o que estava errado - e nunca o encontrei porque não havia nada de errado. Evidentemente, pode levar 6 horas - possivelmente mais - para que as configurações do roteador entrem em vigor.
Então, como eu sei se esta é a minha questão?
Uma ferramenta bacana que encontrei durante essa escapada é tcpdump
. Esse rapazinho magro fareja o tráfego para você, oferecendo informações valiosas sobre o que realmente está acontecendo. Além disso, ele tem alguns recursos de super filtragem que permitem que você diminua exatamente o que você quer ver. Por exemplo, o comando:
tcpdump -i wlan1 port 22 -n -Q inout
Informa tcpdump
para procurar tráfego por meio da interface wlan1 ( -i
= 'interface'), somente pela porta 22, ignorar a resolução de nomes DNS ( -n
= 'sem resolução de nomes') e queremos veja o tráfego de entrada e de saída ( -Q
aceita in
, out
ou inout
; inout
é o padrão).
Ao executar este comando no seu servidor SSH ao tentar se conectar através de uma máquina remota, fica rapidamente claro onde está o problema. Existem, essencialmente, 3 possibilidades:
- Se você estiver vendo o tráfego recebido da máquina remota, mas o tráfego sem saída do servidor local, o problema está no servidor: provavelmente há uma regra de firewall que precisa ser mudado, etc.
- Se você está vendo entrada e saída , mas sua máquina remota não está recebendo a resposta, é mais provável que o roteador: esteja permitindo o tráfego de entrada, mas descartando seus pacotes de saída.
- Se não houver nenhum tráfego , isso provavelmente também é um problema do roteador: os pacotes
SYN
da máquina remota estão sendo ignorados e descartados pelo roteador antes mesmo de chegarem ao seu servidor.
E uma vez que você descobriu onde está o problema, uma correção é (geralmente) trivial.