Vous êtes sur la page 1sur 11

Acessar servidores de FTP por trs do Firewall

F.A.Q Redes, modems e compartilhamento de conexo

" Instalei recentemente o Mandrake security como firewall da empresa onde trabalho mas estou com o
seguinte problema: os usurios no conseguem acessar pginas ftp no modo ativo. Ele consegue se conectar ao
servidor, mas fica travado e no lista diretrio. Como posso resolver isso?"
A transferncia de arquivos via FTP sempre feita utilizando duas portas TCP/IP diferentes, uma para envio de
comandos (listar diretrios, transferir arquivos, etc.) e a segunda para a transferncia dos arquivos propriamente dito.
No Active Mode, o modo tradicional, o cliente se conecta ao servidor FTP na porta 21 (ou a porta em que o servidor
estiver escutando) e o servidor responde, iniciando a transferncia dos dados contatando o cliente numa porta
randmica, geralmente acima da 1024.
O problema que quando voc acessa atravs de um firewall, ou mesmo atravs de uma conexo via NAT, o servidor
quase sempre bloquear o acesso feito pelo servidor FTP. Ou seja, o cliente contata o servidor, faz o login e solicita a
lista de diretrios, mas a resposta do servidor bloqueada no firewall e o cliente fica parado esperando.
A soluo configurar o cliente de FTP para utilizar o Passive Mode; a grande maioria dos clientes suporta esta
opo.
Ao conectar usando o Passive Mode o procedimento muda e o cliente passa a iniciar ambas as conexes. Ele contata
o servidor na porta de comandos e recebe como resposta a porta em que deve se conectar para iniciar a transferncia
de dados. Neste caso o servidor apenas responde s solicitaes do cliente, sem nunca iniciar uma conexo.
justamente por isso que chamamos de "modo passivo". Graas a isso o firewall deixa de bloquear as conexes,
permitindo que os clientes acessem servidores de FTP normalmente.
Uma curiosidade que o IE, Mozilla e a maioria dos outros browsers j utilizam o passive mode por default. Ou seja,
na falta de um cliente de FTP compatvel voc pode utilizar o prprio navegador.
Como depende de uma dupla conexo do cliente, o passive mode um pouco mais lento; voc vai perceber isso na
hora de transferir um grande nmero de pequenos arquivos mas, o importante que funciona. Outro ponto importante
que nem todos os servidores de FTP oferecem suporte ao passive mode, pois aceitar conexes em portas acima da
1024 um risco de segurana que muitos adiministradores preferem no correr.

Servidor FTP
Apresentao
FTP um acrnimo para File Transfer Protocol ou Protocolo de Transferncia de Arquivos. O protocolo FTP permite
a transferncias de arquivos binrios e arquivos texto com alta eficincia atravs de uma rede. muito interessante
para empresas que desejam compartilhar arquivos com os usurios na rede, ou servidores web que desejam
disponibilizar reas para usurios fazerem transferncia de arquivos.
Nesta seo ser explicada a configurao do servidor FTP. O Proftpd (Professional File Transfer Protocol Daemon)
o programa que implementa o servidor padro e realiza os servios de FTP no Conectiva Linux. O Proftpd possui
uma configurao muito simples, parecida com a configurao do servidor web Apache, possuindo toda a
configurao do servidor em um nico arquivo, com diretivas. Alm disso, implementaes de segurana podem ser
feitas em diretrios (seguindo o exemplo do arquivo .htaccess do Apache, o Proftpd pode utilizar o arquivo
.ftpaccess), permitindo restries a diretrios que sero acessados por usurios.

Implementao

Pr-requisitos
Para implementar esta soluo voc no precisar de nenhum pr-requisito especial, basta que sua mquina possua
uma placa de rede e tambm que o Webmin j esteja instalado.

Instalao
Para instalao do servidor FTP execute o Synaptic e instale os seguintes pacotes:

proftpd
anonftp

ou utilize o apt-get:
# apt-get install anonftp proftpd

Configurao
Para iniciar a configurao do servidor FTP, acesse Servidores -> Servidor ProFTPD pelo Webmin.
Assim como outros mdulos do Webmin, o mdulo do Proftpd tambm dividido em duas partes: uma para
configuraes globais e outra para servidores virtuais. As configuraes aplicadas nas opes globais iro ter efeito
sobre o servidor padro e todos os servidores virtuais. Opes de um servidor virtual especfico devero ser
configuradas na sesso do prprio servidor virtual. Entre as configuraes globais, algumas esto citadas abaixo:

Opes de Rede

Figura 10.4. Opes de Rede do Servidor FTP


o
o

Numero mximo de sesses concorrentes: Nmero de conexes simultneas no servidor FTP pode
receber;
Tempo de inatividade antes de desconectar: Tempo ocioso que o servidor deve aguardar antes de
desconectar o usurio;

Tempo de espera para a primeira transferncia: Tempo mximo de espera para a primeira transferncia
antes de o servidor desconectar o usurio;

Tempo de espera para autenticao: Tempo mximo de espera para a autenticao.

Controle de Acesso
o

Mensagem de sucesso no login: Mensagem apresentada ao usurio quando o login for realizado com
sucesso. Pode-se deixar a mensagem padro, ou optar por uma personalizada;

Mensagem de falha no login: idem a anterior, porm apresentada ao usurio quando o login falhar;

Autorizar escrita sobre arquivos j existentes? - Permitir ou no que os arquivos sejam sobrescritos no
servidor.

Usurios FTP Negados


Nesta opo, possvel configurar quais usurios do sistema sero proibidos de acessar o servidor.

Lembre-se de sempre clicar no boto Salvar depois de ter alterado alguma configurao.
Para criar um servidor virtual, basta preencher o formulrio que est na parte de baixo da pgina principal do mdulo
do Proftpd no Webmin - lembre-se de que as configuraes realizadas em um determinado servidor virtual
sobrescrevem as configuraes globais:

Figura 10.5. Configurao de um Servidor FTP Virtual

Endereo: Endereo IP do servidor;


Porta do FTP: Porta na qual o servidor dever estar funcionando; o recomendado deixar marcada a opo
Padro;

Nome do servidor: Nome de acesso ao servidor virtual.

Aps isto, clique em Criar e aguarde a atualizao da pgina, onde sero exibidas as opes de configurao para o
servidor virtual.
Alm das mesmas opes que pode ser realizadas nas opes globais, como por exemplo proibir o acesso a
determinados usurios, existem outras configuraes exclusivas do servidor virtual de FTP, como por exemplo a
opo Configurar Servidor Virtual. Nesta opo, alm de poder editar as configuraes feitas anteriormente para
endereo, porta e nome do servidor virtual, o usurio tambm poder remover o servidor clicando em Remover
servidor virtual.
Depois de ter realizado todas as configuraes necessrias, na pgina inicial do mdulo do Proftpd no Webmin,
clique em Iniciar Servidor para iniciar o servidor FTP.

Acesso FTP Annimo


A configurao de FTP annimo tambm pode ser realizada via Webmin. Para isso, clique no cone do servidor
desejado (ao final da pgina principal, em forma de cone), acesse a opo Anonymous FTP e preencha o formulrio
de acordo com as informaes listadas a seguir:

Figura 10.6. Configurao do Acesso FTP Annimo

Limitar ao diretrio: Este o diretrio em que o usurio ficar restrito quando estiver logado como usurio
annimo. O diretrio deve existir para que possa ser includo aqui, portanto, crie-o ou verifique se ele j est
criado. Por exemplo: /srv/ftp/anonymous;
Acessar arquivos como usurio: Usurio com o qual sero acessados os arquivos. Inclua o usurio ftp;

Acessar arquivos como grupo: Grupo com o qual sero acessados os arquivos. Inclua o grupo ftp.

Aps ter feito as configuraes, clique em Criar para que as alteraes sejam realizadas no arquivo de configurao
do Proftpd.
Agora, na seo Opes para FTP Anonymous, clique em Autenticao para criar o alias entre o usurio anonymous e
ftp. Note que esta opo diferente de Opes de autenticao, que permite configuraes de log do acesso
annimo.
Para criar o alias, na opo Apelidos para nomes de usurios, preencha o campo Login username com o valor
anonymous, e Nome real do usurio com o valor ftp.
Clique em Salvar para realizar as alteraes e, na pgina inicial do mdulo de configurao do Proftpd, clique em
Iniciar servidor para inici-lo ou em Aplicar mudanas caso o servidor j esteja sendo executado.

Testando a Configurao

Primeiramente, verifique se um processo est executando o servidor:


$ ps aux | grep proftpd
proftpd
5935 0.0 0.5
(accepting connections)

4496 2224 ?

23:57

0:00 proftpd:\

Para testar o acesso ao servidor FTP anonimamente, fornea o usurio anonymous e uma string qualquer (um
endereo de e-mail, por exemplo):
$ ftp localhost
Connected to localhost
220 ProFTPD 1.2.9 Server Ready (ProFTPD - Instalao Padro)
Name (localhost:usuario): anonymous
331 Anonymous login ok, send your complete email address as
your password.
Password:
230 Acesso annimo aceito para anonymous.
Remote system type is UNIX.
Using binary mode to transfer files.

ftp>

Note que a senha no mostrada. O usurio anonymous no precisa (nem deve) ser cadastrado em seu
Conectiva Linux, j que ele um usurio especial para o servidor FTP. Quando feita uma tentativa de acesso
com o usurio anonymous, o servidor automaticamente trata o acesso como annimo, aceitando o endereo de
correio eletrnico como senha. Se algo no der certo, verifique se o pacote para acesso annimo est instalado
e reveja as configuraes.

Voc pode utilizar um arquivo .message para dar breves explicaes sobre os propsitos dos diretrios que
esto sendo acessados. Alm disso, voc poderia ajudar o usurio a encontrar o que ele est procurando. Para
testar, crie um arquivo .message como um arquivo texto e coloque-o no diretrio onde ele deve ser mostrado,
com mensagens teis sobre o acesso ao servidor FTP. Reinicialize o Proftpd e acesse o servidor novamente.

Material escrito por Zigeuner em 21/12/2005.


Dvidas? Leia nosso FAQ ou mande um e-mail para mim: ciganogypsy@hotmail.com
Ateno: As telas contidas neste tutorial foram cedidas com autorizao por Itarci Jos Possamai
(possamai81@brturbo.com), e que esto hospedadas no site http://www.abusar.org/manuais/502G/telas_502g.html.
Probida a reproduo deste material sem autorizao.
Quero tambm agradecer a todos aqueles que tambm contriburam com telas, mas que minha falta de memria no
ajuda na hora de atribuir os devidos crditos.

D-Link
Liberando Portas
Devido grande quantidade de pessoas reclamando que as verses de firmwares de seus respectivos 502G no batem
com as telas do primeiro tutorial que eu fiz, estou disponibilizando uma verso que seria uma verso alternativa do
primeiro tutorial, mas que ficar como sendo a verso principal mesmo, pois o maior nmero de usurios tem esta
firmware.
Se por acaso as telas deste tutorial no forem iguais s do seu modem, peo para que voc visite a verso alternativa
deste tutorial, disponvel em http://www.portaladsl.com.br/modules.php?name=Content&pa=showpage&pid=113.
Com toda a certeza, um deles o do seu modem. Se mesmo assim qualquer um dos dois tutoriais no for o correto,
seu modem est com a firmware do 500G. O tutorial para a liberao de portas do 500G est disponvel aqui:
http://www.portaladsl.com.br/modules.php?name=Content&pa=showpage&pid=62.

1 - Para configurar, digite o IP do seu modem (padro: 10.1.1.1) no seu navegador, preferencialmente o Internet
Explorer. A seguinte tela dever aparecer:

2 - Login: admin, Senha, admin. Se esta senha no funcionar, experimente as outras duas possibilidades possveis:
Login: TMARDLKT93319; Senha: DLKT93319
Login: admin; Senha: b39Tlv
Aperte Enter e teremos a tela a seguir:

3 - Clique em Advanced, depois em NAT. Temos a tela a seguir:

4 - Confira se o campo NAT est como Enabled. Clique em Apply, depois clique em Port Forwarding.

Existem duas maneiras de se liberarem as portas deste modem: por seleo de portas (opo de Redirecionamento de
Portas, ou Port Forwarding) ou por desmilitarizao de IP (DMZ), que libera todas as portas de um determinado IP.
A pedidos, vou fazer aqui as duas configuraes.

Liberando Portas
Usando DMZ

5 - Mude a opco DMZ para Enabled. Em seguida, preencha o campo abaixo com o seu IP fixo local. Se voc no
possui um IP fixo local ou no sabe o que isso, recomendo fortemente que voc leia este outro tutorial:
http://www.portaladsl.com.br/modules.php?name=Content&pa=showpage&pid=118. No meu caso, meu IP o
10.1.1.2.

6 - Clique em Apply.

Liberando Portas
Usando Port Forwarding

5 - Preencha os dados conforme as instrues dadas mais abaixo. Se voc fez tudo certo, sua tela dever ficar mais ou
menos assim:

Port Forwarding

Private IP: Especifica o IP local a ser aplicada a regra. Insira aqui o IP da sua placa de rede, isto , seu IP fixo local.
Se voc no possui um IP fixo local ou no sabe o que isso, recomendo fortemente que voc leia este outro
tutorial: http://www.portaladsl.com.br/modules.php?name=Content&pa=showpage&pid=118. No meu caso, meu IP
o 10.1.1.2.
Protocol Type: Determina o protocolo a ser usado: TCP, UDP ou ALL (Todos).
Private Port: Porta da sua placa de rede a receber a regra. Deixe em Zero para todas as portas. Se voc liberar apenas
uma porta, especifique a porta.
Public Port: Aqui deve ser primeiro determinado como vai ser a liberao das portas: apenas uma porta (Single Port,
aqui apenas o primeiro campo da esquerda habilitado), um intervalo de portas (Port Range, os dois campos
esquerda so habilitados para preenchimento), qualquer porta (Any Port, no demanda preenchimento dos campos
esquerda), ou apenas as portas seguras (Safe Ports, no demanda preenchimento dos campos esquerda).

6 - Clique em Apply.

Para as duas configuraes


7 - Clique agora em Tools, depois em Misc. . Voc ver esta tela:

8 - Clique em Save and Reboot.

Seu modem est configurado.