Tento článek popisuje, jak nainstalovat a nakonfigurovat server vsFTPD na CentOS®, Red Hat® Enterprise Linux® (RHEL) a operační systém Ubuntu®.
Poznámka: Abyste mohli použít pokyny v tomto článku, musíte být přihlášeni přes SSH jako uživatel root.
Instalovat vsFTPD
K instalaci serveru vsFTPD použijte v různých distribucích Linuxu následující příkazy:
CentOS a RHEL
yum -y install vsftpd
Operační systém Ubuntu
apt-get install vsftpd
Proces instalace vygeneruje konfigurační soubor. Pro CentOS a RHEL se soubor jmenuje/etc/vsftpd/vsftpd.conf a pro operační systém Ubuntu se soubor jmenuje /etc/vsftpd.conf . Ke konfiguraci nastavení v konfiguračním souboru vsFTPD použijte pokyny v následujících částech.
Konfigurovat vsFTPD
Otevřete konfigurační soubor vsFTPD v editoru souborů nebo pomocí vi
a nahraďte obsah souboru následujícími řádky:
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
pasv_min_port=60000
pasv_max_port=65000
Pokud chcete povolit chroot jail, přidejte následující řádky na konec konfiguračního souboru:
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/vsftpd.chroot_list
Musíte vytvořit vsftp.chroot_list a vložte do něj uživatele, kteří nejsou zakořeněné. Všichni uživatelé jsou ve výchozím nastavení chrootováni. Soubor musíte vytvořit, i když do něj nemáte žádné uživatele.
Poznámka: Pro operační systém Ubuntu je řádek pro soubor chroot listu chroot_list_file=/etc/vsftpd.chroot_list
.
Pokud chcete uživateli povolit použití seznamů řízení přístupu k souborům (FACL) nebo nastavit skupinová oprávnění ve výchozím nastavení, přidejte na konec konfiguračního souboru následující řádky:
file_open_mode=XXXX
local_umask=XXX
Zde můžete změnit file_open_mode
na 0775, 0664 a tak dále, abyste splnili vaše základní požadavky na oprávnění. Možná ji nebudete muset kombinovat s umask, v závislosti na tom, co chcete dělat.
Umask odebere oprávnění ze souborů. Například soubor s 777 se změní na 755 s umask 022 (výchozí). To omezuje přístup z bezpečnostních důvodů. Někteří lidé omylem nastavili umask na 000 a mysleli si, že soubory se pak zobrazí jako 777. Tento rozdíl je důležitý. Zatímco file_open_mode
říká vsFTPD výchozí oprávnění k použití, umask pouze odebírá oprávnění, nikdy je nemůže udělit.
Restartujte a povolte vsFTPD
Po úpravě konfiguračního souboru musíte restartovat službu vsFTPD, aby se změny projevily. Pomocí následujícího příkazu restartujte vsFTPD na CentOS, RHEL a operačním systému Ubuntu:
systemctl restart vsftpd
Po restartování vsFTPD byste jej měli také nakonfigurovat, aby se spustil při spuštění serveru. Pomocí následujícího příkazu povolte spuštění vsFTPD při spuštění na CentOS, RHEL a operačním systému Ubuntu:
systemctl enable vsftpd
Povolit vsFTPD přes bránu firewall
Posledním krokem je povolit vsFTPD přes firewall vašeho serveru pomocí následujících příkazů v různých distribucích Linuxu:
CentOS a RHEL
iptables -I RH-Firewall-1-INPUT -p tcp --dport 21 -m comment --comment "FTP" -j ACCEPT
iptables -I RH-Firewall-1-INPUT -p tcp -m multiport --dports 60000:65000 -m comment --comment "FTP passive mode ports" -j ACCEPT
/etc/init.d/iptables save
Operační systém Ubuntu
ufw allow 21
ufw allow proto tcp from any to any port 60000:65000