Desativando o FTP

1

Estou configurando um novo servidor Debian e não preciso de FTP, por isso quero removê-lo. De acordo com o netstat -tap, o ftp não está escutando nada. No entanto, quando eu faço uma varredura de porta (nmap) externamente, ele diz que a porta ftp está aberta (21). O inetd não está começando nada, o xinetd não está no sistema.

O que devo fazer?

resultado do netstat tap

obu1:/etc/pam.d# netstat -tap
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 *:225                   *:*                     LISTEN     2237/sbadm
tcp6       0      0 *:ssh                   *:*                     LISTEN     2399/sshd
tcp6       0    448 obu1.hostname.:ssh rrcs-XXX-XXX-XXX-XXX:56721 ESTABLISHED  16639/sshd: username

NMap de não local

Starting Nmap 4.90RC1 ( http://nmap.org ) at 2009-07-13 10:47 Eastern Daylight Time
Interesting ports on obu1.hostname (ipaddress):
Not shown: 972 closed ports, 26 filtered ports
PORT   STATE SERVICE
21/tcp open  ftp
22/tcp open  ssh

Nmap done: 1 IP address (1 host up) scanned in 3.60 seconds
    
por Malfist 13.07.2009 / 16:35

8 respostas

4

Você deve saber que o Windows XP (e provavelmente outras versões) tem um wrapper interno para conexões FTP (o objetivo é tentar permitir que o comando PORT seja concluído com sucesso, mesmo atrás de um firewall ou roteador).

Este wrapper intercepta qualquer conexão com qualquer host na porta 21, para que possa monitorá-lo e tentar abrir a porta de entrada de um comando PORT emitido pelo cliente.

Esse wrapper também tem um efeito colateral: como intercepta qualquer conexão a uma porta 21, ele envia um sinal de que a conexão foi estabelecida com o software, que verá a conexão como estabelecida, mas a conexão é realmente estabelecida apenas para o wrapper interno do Windows.

O wrapper então tenta abrir a conexão com o host real, e se o tempo limite acabar, ele envia um sinal para o software de que a conexão foi perdida. O software verá a conexão como perdida.

Resumindo, o software acredita que uma conexão foi estabelecida e perdida com sucesso, mas nenhuma conexão real foi estabelecida.

Então, no seu caso, o que acontece: você roda o nmap. O Nmap tenta se conectar ao seu servidor na porta 21. O wrapper do Windows intercepta a conexão. O Nmap "pensa" que está conectado ao seu servidor (mas está conectado apenas ao wrapper) e relata a porta como aberta.

Você pode confirmar isso digitando uma linha de comando:

ftp 4.3.2.1

Você verá: C: > ftp 4.3.2.1

Conectado ao 4.3.2.1.

Conexão fechada por host externo.

Você pode tentar qualquer IP válido, o FTP sempre se conectará e desconectará logo após, ao passo que deverá informar "Tempo limite da conexão esgotado".

Eu nunca vi nenhuma documentação sobre isso. Depois de muitas investigações, descobri esse comportamento estranho e, depois de mais investigações, descobri por que está aqui.

Bem, a conclusão desta (grande) resposta é que a porta 21 do seu servidor está definitivamente fechada, como reporta o netstat, e o nmap é enganado por esse comportamento.

    
por 13.07.2009 / 17:44
3

apt-get remove --purge ftp

Substitua o ftp por qualquer que seja o pacote chamado. Eu não tenho certeza exatamente o que é, mas ao meu conhecimento que o comando deve funcionar.

apt-get clean

Isto irá limpar o seu diretório var após uma desinstalação.

    
por 13.07.2009 / 16:39
3

Use um dos comandos abaixo para descobrir qual programa está realmente escutando na porta 21.

netstat -lp

lsof -i :21

Isso deve ajudá-lo a descobrir qual pacote específico precisa ser removido ou reconfigurado.

    
por 13.07.2009 / 16:47
2

Dependendo de qual inetd e do estilo de configuração que você está executando, procure uma definição de serviço de FTP em /etc/inetd.conf , /etc/xinetd.d e / ou /etc/xinetd.conf . Se encontrado, destrua.

    
por 13.07.2009 / 16:48
2

Tem certeza de que está digitalizando o IP correto? O netstat mostra a porta 225 e 22, o nmap mostra 21 e 22 ... ou você está fazendo a varredura do IP errado, há um firewall entre eles que está fazendo coisas, ou talvez algumas regras do iptables no seu servidor reencaminhando pacotes. Eu diria que verifique 'iptables -L -n' para ter certeza de que não há nada relacionado ao FTP.

    
por 13.07.2009 / 17:37
1

O nmap externo que você está fazendo para o endereço IP do servidor? Talvez esteja passando por um firewall ou roteador. O que acontece quando você faz um nmap do host local?

    
por 13.07.2009 / 17:25
0
  1. Verifique as regras de firewall no host

  2. Tente o nmap a partir de hosts diferentes, todos eles vêem a porta 21 aberta.

  3. Certifique-se de estar executando todos os comandos como root.

  4. Use um cabo cruzado para se conectar ao seu servidor. Switch do firewall no servidor e na máquina você conectou ao servidor usando cross-cable e faz o nmap novamente.

  5. Telnet de algum host para a porta 21. Não pressione a tecla quando aparecer a mensagem "Pressione qualquer tecla para continuar ..". Então, como root, tente esses comandos

    netstat -lp lsof-i: 21

  6. Se ainda não tiver sorte. Pare o firewall. Inicie algum serviço de notícias no host (digamos, httpd) e, novamente, faça a varredura de portas em locais diferentes. Você pode ver uma porta http adicional aberta?

Se o localhost não puder ver o processo escutando na porta 21, então há algo entre o host de onde você está fazendo o nmap e o servidor. É por isso que o ponto 4 trata da conexão do host com o nmap e o servidor diretamente.

    
por 13.07.2009 / 17:41
0

Você deve definitivamente verificar se seu roteador NÃO está encaminhando qualquer porta 21 para o seu servidor, mesmo que você não esteja executando nenhum serviço FTP, o NMAP listará as portas como abertas se o roteador está fazendo seu trabalho de encaminhamento.

    
por 14.07.2009 / 06:31