PROCURAR:     
  Terça, 06/01/2009
» Introdução
» Programação
» Administração
» Hardware
» Aplicativos
» Jogos
» Segurança
» Editorial
» Entrevistas
» Fórum
» Links
» Notícias
» Pegue o Linux
» Documentação
» Programas
» Dúvidas
» Oportunidades
» Sobre
» Contato
» Publicidade
 
Powered By:
DEBIAN
GNU/LINUX
 
English Version
 
 
Shopping OLinux
Segurança em FTP
Por: Nivaldo Godinho

Introdução

Neste artigo iremos falar sobre segurança em FTP (File Tranfer Protocol). O FTP é um protocolo da família do TCP/IP, assim como o Telnet, SMTP, SNMP etc. A sua função, especificamente, é a de transferência de arquivos entre um host e um cliente.

Como todos devem saber, hoje em dia tudo é passível de ser burlado e o FTP não foge a regra, por ser um protocolo antigo, já foram inventadas algumas formas de quebrá-lo.

Para evitar isso, ou dificultar, é necessário que ele seja configurado corretamente e é isso que vamos passar para vocês. Mãos na massa!

Configuração do WU-FTPD (nativo)

Os principais problemas de um servidor FTP são:

  • Autenticação do servidor (username e senha) e todos os comandos enviados como texto, ou seja, com um sniffer é possível obter facilmente o username e a senha do usuário;
  • Diversos Denial of Service existem para vários servidores FTP;
  • Diversos exploits para servidores FTP;

Quando se fala em segurança em servidores FTP, não se pode ser feito muita coisa além de configurá-lo corretamente, estar bem documentado com logs, backup, versões atualizadas etc.

Se você inicializa o FTP pelo inetd (daemon no qual inicializa a maioria dos serviços de rede, como telnet, ftp, finger, ntalkd, smtp, login etc.), o que é o mais comum em todas as versðes de Linux, verifique no arquivo de configuração ( /etc/inetd.conf ) a linha que começa com ftp e coloque-a da seguinte forma:

ftp stream tcp nowait root /usr/sbin/tcpd wu.ftpd -l -L -i -o

A única diferença do atual em seu arquivo deve ser as síntaxes -l (cada sessão de FTP é logada no syslog), -L (todos os comandos enviados para o servidor são logados no syslog), -i (todos os arquivos recebidos pelo servidor são logados para o /usr/adm/xferlog), -o (todos os arquivos transmitidos do servidor são logados para o /usr/adm/xferlog). Vejamos como fica o syslog com uma simples sessão de ftp com o comando tail -f /var/log/messages :

    Oct 30 01:32:21 presario in.identd[8463]: reply to
    192.168.10.2: 1400 , 21 : USERID : UNIX :root
    Oct 30 01:32:21 presario wu.ftpd[8462]: connect from
    root@192.168.10.2
    Oct 30 01:32:30 presario ftpd[8462]: USER molder
    Oct 30 01:32:35 presario ftpd[8462]: PASS password
    Oct 30 01:32:35 presario ftpd[8462]: FTP LOGIN FROM
    presario.earth.com [192.168.10.2] , molder
    Oct 30 01:32:35 presario ftpd[8462]: SYST
    Oct 30 01:32:49 presario ftpd[8462]: TYPE Image
    Oct 30 01:32:49 presario ftpd[8462]: PORT
    Oct 30 01:32:49 presario ftpd[8462]: RETR Untitled
    Oct 30 01:32:53 presario ftpd[8462]: QUIT
    Oct 30 01:32:53 presario ftpd[8462]: FTP session closed
    

Nesta sessão foi feito o login, baixado o arquivo Untitled e fechada a sessão.

Outra arquivo de configuração é o /etc/ftpaccess . Existem três tipos de logins que o WU-FTPD dispõe:

  • Anonymous FTP : que é usado normalmente na Internet, o usuário entra com o username anonymous e na senha o e-mail (ou deveria) :-)
  • Guest FTP : neste login o usuário usa uma conta e senha cadastrada realmente no servidor, mas ele fica amarrado ao seu diretório home (/home/user), é o mais indicado quando se quer trabalhar com uploads de arquivo;
  • Real FTP : neste último o usuário entra com uma senha e username válidos e tem acesso a todo o disco, este é o menos seguro e indicado.

Todas estas configurações são feitas no ftpaccess , além de outras configurações como: a quantidade de falhas no login; quantidade de conexões quando for remoto ou local; mensagens de login, erro, limites e logout; permissões; diretórios para upload, entre outras coisas. Caso queira saber maiores opções nada como um man ftpaccess ;-).

Obs.: para poder utilizar o arquivo ftpaccess , você terá que colocar a opção -a para habilitar no /etc/inetd.conf . Exemplo:

ftp stream tcp nowait root /usr/sbin/tcpd wu.ftpd -a -l -L -i -o

Existem outros arquivos de configuração para o WU-FTPD, como /etc/ftpusers (para bloquear usuários), ftpservers (para servidores virtuais) e /etc/ftphosts (para bloquear hosts).

Estas são algumas das implementações que podem ser feitas em um servidor FTP padrão, que são encontrados normalmente em qualquer distribuição Linux. Pois isto se aplica ao FTP Server WU-FTPD ( http://www.wuftpd.org ), o qual vem por default nas principais distribuições.


Próximo»

Introdução
Configuração do WU-FTPD (nativo)
Alternativas para servidores FTP
ProFTPD
ProFTPD (continuação)
Conclusão


Enviar para um amigo

Imprimir

Índice de artigos

ENQUETE
Neste novo ano,qual distribuição você pretende usar?

Goblinx
Opensuse 11
Debian 4.0
O novo ubuntu
Outra


NEWSLETTER
Inscreva-se e receba as últimas notícias, programas, artigos, novidades e tudo do mundo Linux que aconteceu na semana.
 
Digite seu email:

Publicidade / Sobre OLinux / Entre em Contato / Privacidade
Copyright (c) 2000-2007, OLinux - O Portal de Linux do Brasil.
Desenvolvido por: Linux Solutions
Todos os Direitos Reservados.