Você iniciou proftp
? Há duas coisas que você precisa fazer ao configurar um serviço. Você tem a primeira coisa feita, com o firewall permitindo que as portas sejam abertas. Mas o telnet parece estar indicando que nada está escutando nas portas 20 & 21.
Você pode usar netstat
e nmap
para confirmar.
netstat
$ sudo netstat -tapn -4 | grep -E ':20 |:21 '
Eu não tenho o FTP em execução, por isso vou usar sshd
como substituto para o meu exemplo.
$ sudo netstat -tapn | grep -E ':20 |:21 |:22 '
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 894/sshd
tcp 0 0 192.168.1.20:51560 67.253.170.83:22 ESTABLISHED 5892/ssh
tcp 0 0 192.168.1.20:39411 192.168.1.109:22 ESTABLISHED 21079/ssh
tcp6 0 0 :::22 :::* LISTEN 894/sshd
tcp6 0 0 ::1:48375 ::1:22 ESTABLISHED 27962/ssh
tcp6 0 0 ::1:22 ::1:48375 ESTABLISHED 27963/sshd: saml [p
Aqui podemos ver o ID do processo para sshd
, 894, que é o principal servidor sshd
no meu sistema.
nmap
O Nmap é uma ferramenta para escanear para ver se as portas estão abertas em um sistema e se algo está escutando. Onde netstat
trabalha a partir do "interior", nmap
trabalha do lado de fora olhando para dentro.
$ sudo nmap -sS -P0 192.168.1.20
Starting Nmap 6.40 ( http://nmap.org ) at 2014-01-19 11:08 EST
Nmap scan report for 192.168.1.20
Host is up (0.000013s latency).
Not shown: 998 closed ports
PORT STATE SERVICE
22/tcp open ssh
111/tcp open rpcbind
Nmap done: 1 IP address (1 host up) scanned in 11.44 seconds
Aqui, podemos ver que apenas sshd
e rpcbind
têm permissão para acessar a LAN externa.
regras de iptable
Considerando que você pode se conectar via FTP quando o firewall está desativado, isso parece indicar um problema com suas regras. Tente estes em vez disso.
permitir porta 21 entrada / saída
$ sudo iptables -A INPUT -p tcp -m tcp --dport 21 -m conntrack --ctstate ESTABLISHED -j ACCEPT -m comment --comment "Allow ftp connections on port 21"
$ sudo iptables -A OUTPUT -p tcp -m tcp --dport 21 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT -m comment --comment "Allow ftp connections on port 21"
permite a entrada / saída da porta 20 - ativa
$ sudo iptables -A INPUT -p tcp -m tcp --dport 20 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT -m comment --comment "Allow ftp connections on port 20"
$ sudo iptables -A OUTPUT -p tcp -m tcp --dport 20 -m conntrack --ctstate ESTABLISHED -j ACCEPT -m comment --comment "Allow ftp connections on port 20"
permitir porta 20 de entrada / saída - passiva
$ sudo iptables -A INPUT -p tcp -m tcp --sport 1024: --dport 1024: -m conntrack --ctstate ESTABLISHED -j ACCEPT -m comment --comment "Allow passive inbound connections"
$ sudo iptables -A OUTPUT -p tcp -m tcp --sport 1024: --dport 1024: -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT -m comment --comment "Allow passive inbound connections"
Fonte: Iptables para permitir o FTP de entrada