Jak Nainstalovat a Nakonfigurovat FTP Server v Ubuntu

FTP (File Transfer Protocol) je poměrně starý a většina používá standardní síťový protokol používaný pro nahrávání/stahování souborů mezi dvěma počítači přes síť. FTP však svým původním nejistým způsobem, protože přenáší data společně s uživatelskými pověření (uživatelské jméno a heslo) bez šifrování.

varování: pokud plánujete používat FTP, zvažte konfiguraci připojení FTP pomocí SSL / TLS (bude pokrývat v dalším článku). V opačném případě je vždy lepší použít zabezpečený FTP, jako je SFTP.,

Navrhl Přečtěte si: Jak Nainstalovat a Secure FTP Server na CentOS 7,

V tomto tutoriálu, budeme vám ukázat, jak nainstalovat, konfigurovat a zabezpečit server FTP (VSFTPD v plné „Very Secure FTP Daemon“), v Ubuntu mají silné zabezpečení proti FTP zranitelnosti.

Krok 1: Instalace serveru VsFTP v Ubuntu

1. Nejprve musíme aktualizovat seznam zdrojů systémového balíčku a poté nainstalovat binární balíček VSFTPD takto:

$ sudo apt-get update$ sudo apt-get install vsftpd

2., Jakmile se instalace dokončí, bude služba vypnuta zpočátku, a proto, musíme spustit ručně z té doby a také umožnit tak, aby automaticky spustit od příštího spuštění systému:

3., Dále, pokud máte UFW firewall povolena ( není povolen ve výchozím nastavení) na server, budete muset otevřít porty 21 a 20, kde FTP démonů posloucháte, za účelem umožnění přístupu na FTP služby ze vzdáleného stroje, pak přidání nového pravidla brány firewall takto:

$ sudo ufw allow 20/tcp$ sudo ufw allow 21/tcp$ sudo ufw status

Krok 2: Konfigurace a Zajištění VsFTP Server v Ubuntu

4. Nyní provedeme několik konfigurací pro nastavení a zabezpečení našeho FTP serveru, nejprve vytvoříme zálohu původního konfiguračního souboru /etc/vsftpd/vsftpd.,conf like so:

$ sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.orig

dále otevřeme konfigurační soubor vsftpd.

$ sudo vi /etc/vsftpd.confOR$ sudo nano /etc/vsftpd.conf

Přidat/upravit následující možnosti tyto hodnoty:

anonymous_enable=NO # disable anonymous loginlocal_enable=YES# permit local loginswrite_enable=YES# enable FTP commands which change the filesystemlocal_umask=022 # value of umask for file creation for local usersdirmessage_enable=YES # enable showing of messages when users first enter a new directoryxferlog_enable=YES# a log file will be maintained detailing uploads and downloadsconnect_from_port_20=YES # use port 20 (ftp-data) on the server machine for PORT style connectionsxferlog_std_format=YES # keep standard log file formatlisten=NO # prevent vsftpd from running in standalone modelisten_ipv6=YES # vsftpd will listen on an IPv6 socket instead of an IPv4 onepam_service_name=vsftpd # name of the PAM service vsftpd will useuserlist_enable=YES # enable vsftpd to load a list of usernamestcp_wrappers=YES # turn on tcp wrappers

5. Nyní nakonfigurujte VSFTPD tak, aby umožnil/odepřel přístup FTP uživatelům na základě souboru seznamu uživatelů /etc/vsftpd.uživatel.

Všimněte si, že ve výchozím nastavení jsou uživatelé uvedeni v userlist_file= / etc / vsftpd.seznam uživatelů jsou přihlášení přístup odepřen s userlist_deny=YES userlist_enable=YES.,

možnost userlist_deny=NO zvraty smyslu výchozí nastavení, takže pouze uživatelé, jejichž uživatelské jméno je výslovně uveden v userlist_file=/etc/vsftpd.uživatelský seznam se bude moci přihlásit na ftp server.

Důležité: Když uživatelé přihlášení k FTP serveru, které jsou umístěny v chroot vězení, to je místní kořenový adresář, který bude jednat jako jejich domovský adresář pro FTP relaci.

dále se podíváme na dva možné scénáře, jak nastavit adresář chrooted jail (local root), jak je vysvětleno níže.

6., V tomto okamžiku přidáme / upravíme / Zrušíme tyto dvě následující možnosti, jak omezit uživatele FTP na jejich domovské adresáře.

chroot_local_user=YESallow_writeable_chroot=YES

možnost chroot_local_user=YES důležité znamená, že místní uživatelé budou po přihlášení umístěni do chroot jail, jejich domovského adresáře.

A musíme také pochopit, že je VSFTPD neumožňuje chroot vězení adresář musí být zapisovatelný, ve výchozím nastavení z bezpečnostních důvodů, nicméně, můžeme použít možnost allow_writeable_chroot=ANO na toto nastavení zakázat.

uložte soubor a zavřete jej., Pak musíme restartovat VSFTPD služby pro změny výše, aby se účinek:

------------- On SystemD ------------- # systemctl restart vsftpd------------- On SysVInit ------------- # service vsftpd restart

Krok 3: Testování VsFTP Server v Ubuntu

7. Nyní budeme testovat FTP serveru vytvoření FTP uživatele s useradd příkaz takto:

$ sudo useradd -m -c "Aaron Kili, Contributor" -s /bin/bash aaronkilik$ sudo passwd aaronkilik

Pak musíme explicitně seznamu uživatel aaronkilik v souboru /etc/vsftpd.userlist s příkazem echo a příkazem tee níže:

$ echo "aaronkilik" | sudo tee -a /etc/vsftpd.userlist$ cat /etc/vsftpd.userlist

8. Nyní je na čase vyzkoušet naše výše uvedené konfigurace fungují podle potřeby., Začneme testováním anonymních přihlášení; z výstupu níže můžeme jasně vidět, že anonymní přihlášení nejsou na FTP serveru povolena:

9. Dále otestujeme, zda uživatel není uveden v souboru / etc / vsftpd.uživatelskému seznamu bude uděleno oprávnění k přihlášení, což není pravda z výstupu, který následuje:

10. Nyní provedeme závěrečný test, abychom zjistili, zda je uživatel uveden v souboru / etc / vsftpd.userlist, je ve skutečnosti umístěn ve svém domovském adresáři po přihlášení., A to je pravda, z výstupu níže:

Ověřit FTP Přihlášení v Ubuntu

Upozornění: Nastavení možnosti allow_writeable_chroot=YES může být tak nebezpečné, to má možné bezpečnostní důsledky, a to zejména pokud mají uživatelé nahrát povolení, nebo více, shell přístup. Používejte jej pouze tehdy, pokud přesně víte, co děláte.

měli Bychom si uvědomit, že tyto bezpečnostní důsledky nejsou specifické pro VSFTPD, mohou také mít vliv na všechny ostatní FTP démonů, které nabízejí dát místní uživatele v chroot vězení.,

z tohoto důvodu v níže uvedené části vysvětlíme bezpečnější způsob nastavení jiného než zapisovatelného lokálního kořenového adresáře pro uživatele.

Krok 4: konfigurace domovských adresářů uživatelů FTP v Ubuntu

11. Nyní znovu otevřete konfigurační soubor VSFTPD.,

$ sudo vi /etc/vsftpd.confOR$ sudo nano /etc/vsftpd.conf

a komentář z nezabezpečené možnost pomocí # charakter, jak je uvedeno níže:

#allow_writeable_chroot=YES

Next, vytvořit alternativní místní kořenový adresář pro uživatele (aaronkilik, ten tvůj možná ne stejné) a nastavte požadovaná oprávnění zakázání oprávnění k zápisu pro všechny ostatní uživatele k tomuto adresáři:

$ sudo mkdir /home/aaronkilik/ftp$ sudo chown nobody:nogroup /home/aaronkilik/ftp$ sudo chmod a-w /home/aaronkilik/ftp

12., Pak vytvořte adresář pod místní kořen s příslušná oprávnění, kde uživatel bude ukládat své soubory:

Poté, přidat/upravit možnosti níže v VSFTPD config s jejich odpovídající hodnoty:

Uložte soubor a zavřete jej. A restartujte služby VSFTPD pomocí nedávných nastavení:

------------- On SystemD ------------- # systemctl restart vsftpd------------- On SysVInit ------------- # service vsftpd restart

13. Nyní provedeme závěrečnou kontrolu a ujistíme se, že místní kořenový adresář uživatele je adresář FTP, který jsme vytvořili v jeho domovském adresáři.,

FTP User Home Directory Login

Share

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *