I don't know what to say, I have the same strange problem!!!
When port 22 is open in firewall
Code:
iptables -I INPUT 3 -i ppp0 -s My.IP.From.Work -d 192.168.0.254 -p tcp --dport 22 -j ACCEPT
then port 21 is also open and connections are accepted:
Code:
$ telnet xxx.xxx.xxx.xxx 22
Trying xxx.xxx.xxx.xxx...
Connected to xxx.xxx.xxx.xxx
Escape character is '^]'.
SSH-2.0-dropbear_0.50
Code:
$ telnet xxx.xxx.xxx.xxx 21
Trying xxx.xxx.xxx.xxx...
Connected to xxx.xxx.xxx.xxx
Escape character is '^]'.
Connection closed by foreign host.
And this is happening even with:
Code:
iptables -I INPUT 4 -i ppp0 -p tcp --dport 21 -j DROP
Luckily xinetd and vsftpd have:
Code:
only_from = 192.168.0.0/24