Вы находитесь на странице: 1из 16

servidor FTP no Ubuntu

instalar como servidor de FTP o vsftpd pela flexibilidade, segurana,


simplicidade e rapidez que oferece

Passo 1 Instalar o vsftpd

sudo apt-get install vsftpd

Passo 2 Configuraes do servio vsftpd

Por norma os ficheiros de configurao dos servios encontram-se em /etc. No caso do


vsftpd o ficheiro de configurao /etc/vsftpd.conf

Vamos abrir o ficheiro e editar/rever algumas directivas:

sudo nano -w /etc/vsftpd.conf

Ficheiro vsftpd.conf

Desactivar o acesso annimo.

anonymous_enable=NO

Permitir o acesso a utilizadores locais

local_enable=YES

Passo 3 Adicionar uma Shell fake

Por forma a no permitir a autenticao dos utilizadores FTP via SSH ou login local
vamos adicionar uma shell fake e assim limitar o acesso a esses utilizadores. Desta
forma, as credenciais de um utilizador FTP apenas servem para se autenticar via FTP.

Vamos ento abrir o ficheiro /etc/shells e adicionar a linha /bin/false

# /etc/shells: valid login shells


/bin/sh

/bin/bash

/bin/false

Passo 4 Criar um utilizador (conta) FTP

Como j referido anteriormente, importante que as credenciais de uma conta FTP


apenas funcionam para autenticao via FTP. Neste passo vamos proceder ao seguinte:

Criar pasta do utilizador (ex. /home/ftp/ftpuser)


Criar utilizador, definir qual a sua directoria e associ-lo a shell fake (ex. user
ftpuser)

Criar/mudar a password do utilizador (com o comando passwd)

sudo mkdir -p /home/ftp/ftpuser


sudo useradd ftpuser -d /home/ftp/ftpuser/ -s /bin/false

sudo passwd ftpuser

tambm importante que o utilizador tenha permisses de escrita na sua pasta uma vez
que a pasta criada ficou associada ao root. Para isso podemos simplesmente mudar o
owner da pasta atravs do comando

sudo chown ftpuser /home/ftp/ftpuser

Passo 5 As configuraes esto feitas, teremos apenas de reiniciar o servio vsftpd


atravs do comando:

sudo /etc/init.d/vsftpd restart

Coloquei entretanto 2 ficheiros na pasta /etc/vsftpd.conf para exemplificar o exemplo.

Nota: No ficheiro de configurao (/etc/vsftpd.conf) do servio possvel especificar


muitos parmetros como por exemplo: o nmero de clientes, adicionar um banner, etc
etc.

Como aceder ao FTP

Depois do servio montado o acesso ao FTP pode ser realizado via um simples browser
ou atravs de uma aplicao cliente para FTP (ex. filezzila, fireFTP). Neste exemplo
vou usar o browser.

Colocamos ento ftp://<IP_Servidor>

No esquecer, que o <IP_Servidor> deve ser mudado pelo IP da mquina onde


instalaram o vsftpd (No meu caso o 192.168.193.13)
Inserimos os dados de autenticao (criados no passo 4)

E acedemos ao nosso servidor FPT. Agora basta colocar contedos e partilhar. claro
que as aplicaes cliente FTP do mais flexibilidade na gesto dos contedos, por isso
basta por exemplo fazerem download do filezzila (FileZilla 3.3.2 RC2 Um excelente
cliente FTP)

Servidor FTP externo no Ubuntu 12.04 - Criao e configurao


INSTALAO E CONFIGURAO

INSTALANDO E CONFIGURANDO O PROFTPD

O primeiro passo instalar o ProFTPD, para isso, digite no terminal:

sudoaptgetinstallproftpd

Com o ProFTPD instalado, o prximo passo alterar o arquivo


/etc/proftpd/proftpd.conf, mas antes, faa um backup da configurao
padro:

sudocp/etc/proftpd/proftpd.conf/etc/proftpd/proftpd.conf
original
$sudonano/etc/proftpd/proftpd.conf

Nesse arquivo, verifique se as seguintes linhas esto presentes e com essa


configurao:

ServerName "Nome para o seu servidor"


ServerIdent on "Mensagem para os usuarios"
ServerAdmin root@localhost
ServerType standalone
DefaultRoot ~
RequireValidShell off

Onde:

ServerName: o nome do seu servidor. Ex.: Servidor FTP

ServerIdent: a mensagem que mostrada quando um usurio vai


conectar no servidor.

ServerAdmin: o e-mail do administrador do servidor.

ServerType: a forma que o ProFTPD vai trabalhar.


DefaultRoot: o diretrio onde o usurio do FTP vai ter acesso.

RequireValidShell: Diz se o usurio precisa ter um shell vlido. Ex.:


bash, sh, csh...

Obs.: essas linhas no esto uma embaixo da outra no arquivo, voc vai
precisar procurar por elas.

Com o arquivo configurado, crie um usurio especificamente para acessar o


FTP, com os comandos:

sudouseraddms/bin/falseusuario_ftp
$sudopasswdusuario_ftp

No primeiro comando, a flag -m indica que deve ser criada uma pasta para
esse usurio em /home e a flag -s, especifica o shell desse usurio (nesse
caso sem shell). No segundo comando, definida a senha do novo usurio.

Feito isso, reinicie o ProFTPD com o comando:

sudoetc/init.d/proftpdrestart

Pronto, com isso seu servidor FTP j deve estar funcionando na rede
interna (se no, deixe um comentrio).

Para testar, acesse a URL com seu navegador padro: ftp://localhost

Com tudo funcionando na rede interna, agora vou mostrar como configurar
para ter acesso de forma externa.

HABILITANDO O ACESSO EXTERNO

Para que seja possvel acessar o servidor FTP de fora da sua rede,
necessrio saber o seu IP externo, para isso acesse esse site:

http://www.whatismyip.com

O mais provvel, que o seu IP externo no seja fixo, toda vez (ou quase)
que voc desligar o seu modem, ele recebe um IP diferente, se esse for o
caso, voc vai precisar utilizar o NO-IP ou algo semelhante... (NO-IP???
clique aqui e veja como usar).

Mesmo que seu IP no seja fixo e que voc no tenha o NO-IP, possvel
continuar com esse tutorial, apenas verifique seu IP externo e no desligue
nada (se acontecer de algo ser desligado, ser necessrio verificar o IP
novamente).

Altere ou crie as seguinte linhas no arquivo /etc/proftpd/proftpd.conf:

MasqueradeAddress aqui.vaiSeu.ip.externo
PassivePorts 65500 65534

Obs.: essas linhas, se existirem, podem ter um # no incio. Voc precisa


retirar esse caractere.

O seu IP externo, na verdade, corresponde ao seu modem/roteador. Ser


necessrio configurar esse aparelho de forma que, ao receber uma conexo
FTP, ele envie para o seu computador (onde est o ProFTPD).

Para isso, necessrio saber o IP da rede interna do seu computador e do


seu roteador. Voc pode usar os comandos ifconfig e o route para localizar
essas informaes:
Para acessar seu roteador, coloque o IP interno dele no seu navegador. Vai
precisar saber o login e a senha para acessar as configuraes (se voc
no sabe, tente usurio admin e senha admin, ou clique aqui).

Procure por Port Forwarding ou algo parecido, voc vai ter que fazer a
seguinte configurao:

Obs.: troque o 192.168.0.20 pelo IP interno do seu computador.

Obs.:

Usei a porta 2121, porque geralmente a porta padro do FTP (21)


bloqueada pela operadora.

O IP do computador deve ser configurado manualmente e no por


DHCP.

Agora, reinicie o ProFTPD novamente e pronto. Voc j deve ser capaz de


acessar seu servidor com o IP externo.

necessrio colocar o numero da porta junto do IP externo, ex.:


ftp://xxx.xxx.xxx.xxx:2121
Instalando e configurando um servidor FTP

INTRODUO

Neste artigo estarei ensinando como instalar e configurar um servidor de


FTP, o mais usado para transferncia de arquivos na internet.

Imagine voc poder ir em um cliente e no precisar levar CDs, disquetes,


somente acessar os arquivos pelo navegador (ftp://ip) e copi-los para a
mquina do cliente, ou ento imagine voc no seu trabalho e querer
transferir alguns arquivos para poder trabalhar em casa, pode ser pesado e
no caber no seu e-mail ou no seu pen, Enfim, o FTP entrar em ao.

BAIXANDO E INSTALANDO O APLICATIVO FTP

FTP --> File Transfer Protocol (Protocolo de Transferncia de Arquivos),


melhor forma de se transferir ou compartilhar arquivos.

Existem alguns tipos de servidores de ftp no Linux, dentre eles esto:


proftpd

wu-ftp

vsftpd

Neste artigo usarei o proftpd , bastante simples de se implementar e de


configurar.

Bem, vamos a luta. Estarei usando os repositrios do Debian, portanto:

# apt-get install proftpd

Mas se voc est usando outra distribuio como Fedora/Red Hat, acredito
que resolva com um simples:

# yum install proftpd


ou
# yum search proftpd

Mas para aqueles que querem fazer na mo ou no usam nenhuma


distribuio com repositrios, ento:

ftp://ftp.proftpd.org/distrib/source/

Baixe a verso mais recente. No meu caso foi a proftpd-1.2.8.tar.gz.

Vamos descompact-lo:

$ tar zxvf proftpd-1.2.8.tar.gz

Entre na pasta que foi criada:

$ cd proftpd-1.2.8

Vamos compilar:
$ ./configure --sysconfdir=/etc --prefix=/usr/local/
$ make

E logo em seguida:

# make install

CONFIGURANDO O PROFTPD

Se voc escolheu instalar de um repositrio, ele ir perguntar qual o tipo de


execuo ir querer, escolha standalone.

Agora vamos configurar o arquivo de configurao do servio:

# vim /etc/proftpd.conf

#Nome do Servidor
ServerName ''Nome do seu servidor''

#Modo no qual rodar (standalone ou inetd)


ServerType standalone
DeferWelcome off

#No exibe informaes sobre que tipo de servidor est rodando


ServerIdent off

#fuso horrio universal (GMT) e no o local


TimesGMT off
MultilineRFC2228 on

#Tempo Mximo sem transferncia de dados


TimeoutNoTransfer 600

#Tempo Mximo com transferncia parada(travada)


TimeoutStalled 600
#Tempo Mximo conectado mas sem troca de dados
TimeoutIdle 1200

DisplayLogin welcome.msg
DisplayFirstChdir .message
ListOptions ''-l''
DenyFilter \*.*/

#Logs no Proftp
WtmpLog off

#Arquivo de log geral


SystemLog /var/log/proftpd.log

#Arquivo de log das transferncias


TransferLog /var/log/xferlog

#Porta para socket de controle


Port 21
Umask 022 022

#Mximo de usurios autenticados


MaxClientesPerHost 4 ''Mensagem de erro para usurio''

#Numero Mximo de tentativas de login


MaxLoginAttempts 3

#Usurio sob qual o servidor ir rodar


User
nobody
#Grupo
Group nogroup

#Os Usurios no podero sair de seu diretrio home


DefaultRoot ~

#No permite o login do usurio root


RootLogin off
#No requer que os usurios tenham um shell vlido
RequireValidShell off

#No bloqueia usurios baseando-se no arquivo /etc/ftpusers


UseFtpUsers off

Existe um usurio chamado "anonymous" permitido em muitos FTPs, ele


usado para voc dar a um cliente e o mesmo poder olhar os arquivos e
baixar sem que seja feito nenhum upload, por questo de segurana, e de
falta de sentido cri-lo, no coloquei aqui.

CRIANDO USURIO E ACESSANDO PELO CLIENTE FTP

Servidor configurado, agora iremos restart-lo para ele ler o arquivo:

# /etc/init.d/proftpd restart

Existem vrios clientes FTP, uso muito o CuteFTP, mas uso ainda mais o IE
(Internet Explorer), pois no me deixa preso e onde eu estiver no preciso
instalar nenhum programa.

Vamos criar um usurio no Linux para acessar ao FTP:

# adduser abelardo

Aps criado o usurio, mos obra, v em qualquer IE da rede e digite:

ftp://ipdoseuservidor

Ele ir pedir um usurio e senha, agora voc entra com "abelardo" e sua
senha.

E pronto, voc conseguiu entrar em um servidor FTP que voc criou.

Os arquivos postos dentro dessa pasta iro parar em /home/abelardo.

Se precisar de algo e no estiver conseguindo d um:


# chmod 777 /home/abelardo

BLOQUEANDO USURIO E FAZENDO A SEGURANA DO SEU SERVIDOR

O usurio que criamos um usurio Linux e poder entrar no servidor via


ssh (ex.putty), ento iremos bloquear isso.

Existem vrias maneiras, como ir no sshd_conf e bloquear o usurio, mas


um simples comando resolve isso:

# usermod -s /bin/false abelardo

Pronto, com isso ele ir bloquear o acesso via ssh.

Agora s ir implementando o seu servidor, se quiser colocar limite de


tamanho de upload ou quiser implantar na sua rede para que todo dia meia-
noite (o que bem comum) os arquivos sejam deletados, basta configurar o
cron.

Para apagar todo dia os arquivos da pasta /home/abelardo:

Artigo sobre cron:

Usando cron e crontab para agendar tarefas

Espero ter ajudado algum e qualquer dvida estarei aqui respondendo, vlw,
abraos!!!
Instalar um servidor FTP no Ubuntu

1. Instalar o servidor FTP

Para instalar o servidor FTP, digite:

sudo aptitude install vsftpd

2. Configurar o servidor FTP

A configurao do servidor FTP feita editando o arquivo /etc/vsftpd.conf

Para editar este arquivo, faa:

gksu gedit /etc/vsftpd.conf

2.1 Proibir o FTP annimo


Mudar a linha:

anonymous_enable=YES

para:

anonymous_enable=NO

2.2 Autorizar os usurios locais a se conectarem

Adicione:

local_enable=YES

Isto permitir aos usurios registrados no Ubuntu de usarem o mesmo login/senha


para acessar o servidor FTP.

2.3 Autorizar os usurios a atualizarem seus arquivos

Adicione:

write_enable=YES

2.3 Escolher a interface

Por padro, o servidor FTP ouvido em todas as interfaces. Se voc quiser limitar, por
exemplo, apenas sua rede local em 10.0.0.x, adicione a linha:

listen_address=10.0.0.1

Se o endereo do IP for LAN seu servidor FTP 10.0.0.1

3. (Re)Iniciar o servidor FTP

(Re)Inicie o servidor FTP para que ele leve em conta a configurao que voc acabou
de modificar.
Digite:

sudo /etc/init.d/vsftpd restart

Observaes

Para mais informaes, consulte Instalar o VSFTPD no Ubuntu

Вам также может понравиться