FTP - vsftpd

vsftpd (Very Secure FTP Daemon) to serwer FTP dla systemów uniksowych.

Instalacja: sudo apt-get install vsftpd

Standardowy folder w którym umieszczamy pliki to: /srv/ftp.

Plik konfiguracyjny znajduję się w katalogu etc: /etc/vsftpd.conf

Podstawowe komendy:

Start: sudo /etc/init.d/vsftpd start

Stop: sudo /etc/init.d/vsftpd stop

Restart: sudo /etc/init.d/vsftpd restart

Konfiguracja serwera tak by było logowanie:

Najpierw instalujemy serwer ftp oraz narzędzie do obsługi bazy użytkowników: aptitude install db4.2-util

Edytujemy plik /etc/vsftpd.conf:

# /etc/vsftpd.conf
#Uruchamianie serwera w trybie standardowy
listen=YES
listen_ipv6=NO
#Zabronienie logowania się użytkownikom anonimowym
anonymous_enable=NO 
#Zezwolenie na logowanie się użytkownikom lokalnym
local_enable=YES
guest_enable=YES
virtual_use_local_privs=YES
pam_service_name=vsftpd-virtual
guest_username=ftp
local_root=/srv/ftp
#Umask (w większości serwerów używany jest 022)
local_umask=022
#Zezwolenie na zapis w katalogu użytkownika lokalnego
write_enable=YES
hide_ids=YES
dirmessage_enable=YES
use_localtime=YES
#Włączenie logowania
xferlog_enable=YES
log_ftp_protocol=YES
setproctitle_enable=YES
connect_from_port_20=YES
#Ograniczenie użytkownikom do poruszania się jedynie w obrębie katalogu domowego
chroot_local_user=YES
#Zabronienie użytkownikom, poruszania się poza katalogiem domowym
chroot_list_enable=NO
#Katalog dla chroot-a
secure_chroot_dir=/var/run/vsftpd/empty

Przygotowujemy plik /etc/pam.d/vsftpd-virtual:

auth required pam_userdb.so db=/etc/vsftpd-virtual

account required pam_userdb.so db=/etc/vsftpd-virtual

Przygotowujemy plik z użytkownikami i hasłami /etc/vsftpd-konta:

uzytkownik1
haslo1
uzytkownik2
haslo2

umieszczamy hasła w bazie: db4.2_load -T -t hash -f /etc/vsftpd-konta /etc/vsftpd-virtual.db a następnie restartujemy: sudo /etc/init.d/vsftpd restart

Po każdej zmianie użytkowników odświeżamy bazę i restartujemy serwer.