Jakub Jedelský
Vsftpd je jednoduchý FTP server, jehož kódy jsou poskytovány pod licencí GPL. Najdete jej snad již ve všech linuxových distribucích a pomocí něj beží např. i ftp.redhat.com. Proč? Rychlý, bezpečný, stabilní a s jednoduchou konfigurací. Pro jednodušší řešení jak dělaný.
Z wikipedie:
Aktivní režim
Na portu TCP/20 jsou přenášena data (data connection). V aktivním režimu navazuje připojení pro přenos dat server, klient naslouchá. Problém zpravidla nastává v případě, kdy se klient připojuje z privátní sítě a jeho IP adresa je překládána (NAT) nebo se nachází za firewallem.Pasivní režim
V pasivním režimu navazuje data connection klient, kterému při sestavování připojení poslal server svou IP adresu a TCP port, na kterém naslouchá.
Obsáhlejší objasnění (i s pěknými obrázky) můžete najít na slacksite.com (EN).
V systému naleznete pouze jeden - pěkně dokumentovaný - soubor (v RHEL a
klonech je to /etc/vsftpd/vsftpd.conf
).
Je dobré si projet celou konfiguraci. vsftpd má například ve výchozím
nastavení povoleno anonymní přihlašování (nastavit na
anonymous_enable=NO
). Dobré je povolit uživatelům přístup pouze do
jejich složek, aby se Vám nepotulovali po systému (direktiva
chroot_local_user=YES
).
Samotné nastavení pro pasivní režim je následující:
# passive mode
pasv_enable=YES
pasv_min_port=20000
pasv_max_port=20100
port_enable=YES
Kde pomocí pasv_enable
povolíme pasivní režim, pasv_min_port
a
pasv_max_port
stanoví, jaký rozsah portů se bude využívat - jejich
hodnoty musí být mezi 1024 a 65535 (mnou zvolené jsou čistě náhodné).
Direktiva port_enable
nám povolí jak aktivní, tak pasivní režim.
FTP server je poté nutné restartovat pro znovunačtení konfigurace:
# pro RHEL
$ service vsftpd restart
# pro jiné
$ /etc/init.d/vsftpd restart
V konfiguraci jsme použili porty 20000 - 20100. Pro iptables
musíme
tento rozsah povolit a to umožňuje přepínač --dport
:
$ iptables -A INPUT -p TCP --dport 20000:20100 -j ACCEPT
Dokumentace RedHatu Vám řekne (skoro) vše.