File Transfer Protocol (FTP) je oblíbený a široce používaný nástroj pro přenos souborů mezi serverem a klienty po síti. Hlavním problémem výchozího nastavení FTP je bezpečnostní riziko spojené s nešifrovaným přenosem uživatelských pověření a dat po síti. Mohlo by to ohrozit podrobnosti uživatelského účtu.
Proto je potřeba nainstalovat zabezpečený server, který podporuje šifrování. Pro Linux máte k dispozici několik open-source FTP serverů. Mezi nejčastěji používané servery patří Vsftpd, PureFTPd a ProFTPD.
V tomto tutoriálu popíšeme, jak nainstalovat a nakonfigurovat server VSFTPD, což je velmi bezpečný FTP démon.
Instalace FTP serveru na CentOS
Zde použijeme instalaci Centos 7 Minimal pro demonstraci a přihlášení root k provádění příkazů.
Krok 1 – Instalace balíčku vsftpd
Obecně je balíček vsftpd dostupný ve výchozích úložištích CentOS. Spuštěním následujícího příkazu nainstalujte server FTP.
yum install vsftpd
Po instalaci zkontrolujte stav služby FTP.
systemctl status vsftpd
Pokud služba není spuštěna, můžete službu spustit pomocí níže uvedeného příkazu.
systemctl start vsftpd
nyní bychom měli povolit službu FTP při spouštění systému.
systemctl enable vsftpd
Krok 2 – Konfigurace vsftpd
Konfigurační soubor VSFTPD umístěný v adresáři „/etc/vsftpd/“. Takže upravíme „vsftpd.conf“. Před úpravou proveďte zálohu původního souboru.
cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.origbackup
Nyní soubor upravte.
vi /etc/vsftpd/vsftpd.conf
Přístup k FTP serveru povolíme pouze místním uživatelům, takže upravíme a upravíme následující parametry.
anonymous_enable=NO local_enable=YES
Najděte „write_enable“ a zrušte komentář k nastavení, abyste povolili změny souborového systému.
write_enable=YES
Najděte a odkomentujte direktivu „chroot“, která uživatelům FTP zabrání v přístupu k jakýmkoli souborům mimo jejich domovské adresáře.
chroot_local_user=YES
Zde nakonfigurujeme adresáře FTP tak, aby umožňovaly nahrávání, když je povolen chroot. Toto je doporučená metoda. Přidejte tedy následující řádky do souboru „vsftpd.conf“.
user_sub_token=$USER local_root=/home/$USER/ftp
Normálně může vsftpd používat jakýkoli port pro pasivní FTP připojení. Zde uvádíme minimální a maximální rozsah portů pro vsftpd.
Přidejte tyto řádky do souboru
pasv_min_port=40000 pasv_max_port=41000
Chcete-li omezit uživatele, přihlaste se a přidejte následující konfigurace za řádek „userlist_enable=YES“.
userlist_file=/etc/vsftpd/user_list userlist_deny=NO
Nyní soubor uložte a ukončete.
Restartujte službu VSFTPD.
systemctl restart vsftpd
Krok 3 – Konfigurace brány firewall
Povolit porty FTP přes bránu firewall.
firewall-cmd --permanent --add-port=20-21/tcp firewall-cmd --permanent --add-port=40000-41000/tcp
Nyní znovu načtěte firewall.
firewall-cmd --reload
Krok 4 – Vytvoření uživatele FTP
Přidat uživatele. Nahraďte „darsh“ požadovaným uživatelským jménem.
adduser darsh
Nastavte heslo pro uživatele.
passwd darsh
Nyní přidejte uživatele do seznamu povolených uživatelů FTP. Chcete-li to provést, upravte konfigurační soubor a přidejte uživatelské jméno creed.
vi /etc/vsftpd/user_list
Poté soubor uložte a ukončete.
Vytvořte adresář pro nahrávání pro uživatele.
mkdir -p /home/darsh/ftp/upload
Nastavte oprávnění k adresáři.
chmod 550 /home/darsh/ftp chmod 750 /home/darsh/ftp/upload
Změňte vlastnictví adresáře.
chown -R darsh: /home/darsh/ftp
Vytvořili jsme uživatele s přístupem k shellu a pokud chcete, můžete mu zakázat přístup k shellu.
usermod -s /sbin/nologin darsh
Krok 5 – Test FTP serveru
Nyní můžete používat FTP klienta a přistupovat k serveru. Pokud žádnou nemáte, doporučuji použít bezplatnou a open-source aplikaci „FileZilla“.
Můžete procházet adresář pro nahrávání a vytvořit soubor pro testování.
A je to! Úspěšně jste nakonfigurovali FTP server v CentOS. Dejte nám vědět, jak vaše instalace dopadla, a sdílejte článek se svými přáteli na sociálních platformách.