FTP nebo File Transfer Protocol je oblíbený protokol pro přenos souborů na a ze serveru FTP. Je však plný bezpečnostních rizik, protože odesílá data a citlivé informace v prostém textu. VSFTPD ( Very Secure FTP Daemon ) je rychlý, bezpečný a stabilní FTP server, který používá šifrování k zabezpečení dat vyměňovaných se serverem.
V tomto kurzu nainstalujeme vsftpd FTP server na Debian 11 .
Krok 1:Nainstalujte balíček vsftpd
Nejprve aktualizujte seznam balíčků a upgradujte svůj server Debian.
# apt update
# apt upgrade

Poté nainstalujte balíček vsftpd.
# apt install vsftpd

Po instalaci se vsftpd spustí automaticky. Můžete to potvrdit spuštěním příkazu:
# systemctl status vsftpd.service

Krok 2:Vytvořte uživatele FTP
Dále vytvoříme jedinečný uživatelský účet FTP, který budeme používat pro přihlášení k serveru FTP. použijte adduser příkaz následovaný jménem uživatele a odpovídajícím způsobem odpovězte na výzvy.
# adduser unixcop-user

Krok 3:Přidejte uživatele FTP do seznamu uživatelů s povoleným přihlášením
Nyní přidáme uživatele FTP do vsftp.userlist soubor. Místním uživatelům uvedeným v tomto souboru je uděleno oprávnění k přístupu k serveru FTP.
# echo unixcop-user >> /etc/vsftpd.userlist

Krok 4:Vytvoření uživatelského adresáře FTP
Nyní vytvořte adresář FTP pro uživatele FTP a přiřaďte mu příslušná oprávnění k adresáři a vlastnictví.
# mkdir -p /home/unixcop-user/ftp-dir
# chmod -R 750 /home/unixcop-user/ftp-dir
# chown -R unixcop-user: /home/unixcop-user/ftp-dir

Krok 5:Nakonfigurujte službu vsftpd
Nyní musíme pokračovat a upravit hlavní konfigurační soubor /etc/vsftpd.conf
# nano /etc/vsftpd.conf
Ve výchozím nastavení mají přístup anonymní uživatelé. Ale to z bezpečnostních důvodů nechceme. Proto zakážeme přihlášení anonymnímu uživateli a udělíme přístup pouze místnímu uživateli.
anonymous_enable=NO
local_enable=YES
Dále musíte povolit místnímu uživateli nahrávat soubory a získat přístup do jejich domovského adresáře a také provádět změny v souborech, jak je uvedeno.
write_enable=YES
chroot_local_user=YES
allow_writeable_chroot=YES
Kromě toho můžete omezit místní uživatele, kteří mohou přistupovat k souborům a nahrávat je, zadáním pouze uživatelů obsažených v /etc/vsftpd.userlist soubor.
userlist_enable=YES
userlist_file=/etc/vsftpd.userlist
userlist_deny=NO
Aby bylo zajištěno zabezpečené FTP připojení k serveru, musíme server zašifrovat pomocí certifikátu SSL. Chystáme se vygenerovatcertifikát SSL s vlastním podpisem k zašifrování serveru. Chcete-li tak učinit, spusťte příkaz.
# openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd-key.pem -out /etc/ssl/private/vsftpd-cert.pem

Vraťte se k výchozímu konfiguračnímu souboru /etc/vsftpd.conf a vložením těchto řádků zadejte cestu k vygenerovaným certifikátům SSL a povolte SSL.
rsa_cert_file=/etc/ssl/private/vsftpd-cert.pem
rsa_private_key_file=/etc/ssl/private/vsftpd-key.pem
ssl_enable=YES
Stručně řečeno, váš konfigurační soubor by měl obsahovat tyto řádky:
listen=NO
listen_ipv6=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/private/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.pem
ssl_enable=YES
user_sub_token=$USER
local_root=/home/$USER/ftp
userlist_enable=YES
userlist_file=/etc/vsftpd.userlist
userlist_deny=NO
Aby se změny projevily, restartujte server.
# systemctl restart vsftpd.service
# systemctl status vsftpd.service

Krok 5:Přístup k serveru vsftpd
Nyní jsme s konfiguracemi hotovi. Poslední věcí je povolit porty 20 a 21, pokud je povolena brána firewall.
# ufw allow 20/tcp
# ufw allow 21/tcp
# ufw reload
Nakonec vezměte svého FTP klienta, jako je FileZilla, a vyplňte podrobnosti následovně:
Hostitel :server-IP
Uživatelské jméno: unixcop-user
Heslo :Heslo uživatele unixcop

Po úspěšném výpisu adresáře můžete nyní začít bezpečně přenášet soubory přes SSL.

to se nám líbí,0 naučili se, jak nainstalovat ftp server vsftpd na Debian 11.