vsftpd
Instalar o pacote vsftpd:
apt-get install vsftpd
1- Editar esse arquivo:
vi /etc/vsftpd/vsftpd.conf


Mudar(caso tiver comentada, descomentar):

local_enable=YES


2- Editar esse arquivo:
vi /etc/shells

E adicionar na ultima linha:

/bin/ftponly
3- Criar um arquivo em branco:
touch /bin/ftponly
4- Copiar o seguinte arquivo:
cp /bin/false /bin/ftponly
5- Colocar o vsftpd para rodar:
service vsftpd start
Obs: caso nao tenha o serviço vsftp, eh necessário instalar o serviço xinetd
6- O vsftpd ta configurado, agora so fazer um teste:
ftp localhost

Se tiver funcionando vai pedir usuário e senha, o usuário root não vai funcionar, pra que o root funcione, edite os seguintes arquivos:
vi /etc/vsftpd.user_list
vi /ete/vsftpd.ftpusers

É só comenta o usuário root nos dois arquivos usando '#',e reiniciar o vsftpd (service vsftpd -ou xinetd- restart) e vai logar com o root. Para criar um usuário que vai funcionar somente no ftp, crie um usuário:
adduser teste
passwd 123 confirme a senha 123
Edite o arquivo:
vi /etc/passwd

Na ultima linha vai estar o usuário teste que acabamos de criar:

teste:x:501:501::/home/teste:/bin/bash

mudar e colocar assim:
 
teste:x:501:501::/ftp:/bin/ftponly
fonte: http://www.linuxit.com.br/section-viewarticle-742.html
IP
35.172.217.174