Para vsftpd
, a configuração é extremamente simples:
sudo apt-get install vsftpd
então:
sudo nano /etc/vsftpd.conf
verifique se você tem os seguintes parâmetros definidos corretamente:
# Depending on the version you're running, you might want to set the following
# parameter to YES
# (if affected by https://bugs.launchpad.net/ubuntu/+source/vsftpd/+bug/1313450)
listen=YES
# to allow local users to log on:
local_enable=YES
#if you want write access too:
write_enable=YES
# Set anonymous user directory to /srv/ftp (no default)
anon_root=/srv/ftp
# Uncomment this to allow the anonymous FTP user to upload files. This only
# has an effect if the above global write enable is activated. Also, you will
# obviously need to create a directory writable by the FTP user.
#anon_upload_enable=YES
#
# Uncomment this if you want the anonymous FTP user to be able to create
# new directories.
#anon_mkdir_write_enable=YES
# following for debugging purposes (to ensure you're on the right server)
ftpd_banner=Welcome to Aravind's FTP service.
# Now restrict users to their home directories:
chroot_local_user=YES
allow_writeable_chroot=YES
E agora, se você quiser definir um usuário específico para um diretório específico, basta criar um usuário com um diretório específico:
sudo adduser ftpuser --home /usr/local/example
Para testar:
Vá para um terminal na máquina executando vsftpd
e digite: ftp 127.0.0.1
e se você for saudado pelo seu próprio banner, vsftpd
funciona!
Em seguida, teste na mesma máquina seu endereço público: ftp 1.2.3.4
e, finalmente, de uma máquina remota para o endereço público. Se algo der errado com os endereços públicos, verifique as configurações do firewall.
Notas adicionais:
Se você não quiser que o usuário faça o logon, adicione o parâmetro --shell /bin/false
ao comando adduser
.
Você também pode querer excluir todos os diretórios / arquivos ( Desktop
, Pictures
, ... que o adduser
criou se você não os quiser lá ...