Acontece que meu roteador foi configurado para encaminhar algumas portas altas para a porta SSH interna - então, basicamente, o problema foi causado por algumas sobras antigas de configuração.
Que estupidez.
Meu iptables.conf
é mais ou menos assim:
-A INPUT -p tcp --dport 65000 -j ACCEPT
-A INPUT -j DROP
Meu sshd_config
é assim:
Port 22
Port 65000
#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::
Meu objetivo é abrir apenas a porta 65000 para o mundo externo, enquanto eu tenho a porta 22 aberta para minha LAN.
Eu testei essa configuração usando canyouseeme.org na porta 65000
e não consigo me conectar à minha máquina, a menos que eu adicione a seguinte regra:
-A INPUT -p tcp --dport 22 -j ACCEPT
Então eu posso conectar na porta 65000.
O que está acontecendo? Por que tive que abrir a porta 22 para poder conectar na porta 65000?
Conforme solicitado, aqui está minha configuração completa:
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
0 0 DROP all -- * * 5.10.83.0/25 0.0.0.0/0
1040 146K ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 ctstate RELATED,ESTABLISHED
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:25
1 60 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:110
11 640 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
1 40 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:443
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpts:60000:60020
0 0 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpts:60000:60020
3 180 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:65000
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:65001
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:65011
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:8888 state NEW,ESTABLISHED
0 0 ACCEPT all -- * * 127.0.0.1 0.0.0.0/0
735 67148 ACCEPT all -- * * 192.168.0.0/24 0.0.0.0/0
0 0 ACCEPT all -- * * 192.168.1.0/24 0.0.0.0/0
0 0 ACCEPT all -- * * 46.238.126.0/23 0.0.0.0/0
0 0 ACCEPT all -- * * 78.10.202.145 0.0.0.0/0
0 0 ACCEPT all -- * * 109.173.223.100 0.0.0.0/0
1274 166K DROP all -- * * 0.0.0.0/0 0.0.0.0/0
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
1409 219K ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp spt:8888 state ESTABLISHED
NAT:
Chain PREROUTING (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination