Nastavení zabezpečeného serveru FTP pomocí SSL/TLS na Ubuntu

instagram story viewer

V tomto tutoriálu popíšeme, jak zabezpečit a FTP server (VSFTPD znamená „Velmi bezpečný démon FTP") použitím SSL/TLS v Ubuntu 16.04/16.10.

Pokud chcete nastavit bezpečný FTP server pro distribuce založené na CentOS, můžete si přečíst - Zabezpečte server FTP pomocí SSL/TLS v CentOS

Po provedení různých kroků v této příručce se naučíme základy povolení šifrovacích služeb na serveru FTP pro zabezpečené přenosy dat.

Požadavky

  1. Musíš Nainstalujte a nakonfigurujte server FTP v Ubuntu

Než se přesuneme dále, ujistěte se, že všechny příkazy v tomto článku budou spuštěny jako root nebo privilegovaný účet sudo.

Krok 1: Generování certifikátu SSL/TLS pro FTP na Ubuntu

1. Začneme vytvořením podadresáře pod: /etc/ssl/ uložit SSL/TLS soubory certifikátů a klíčů, pokud neexistují:

$ sudo mkdir/etc/ssl/private. 

2. Nyní vygenerujeme certifikát a klíč v jednom souboru spuštěním níže uvedeného příkazu.

$ sudo openssl req -x509 -nodes -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem -days 365 -newkey rsa: 2048. 

Výše uvedený příkaz vás vyzve k zodpovězení níže uvedených otázek. Nezapomeňte zadat hodnoty, které platí pro váš scénář.

Název země (dvoumístný kód) [XX]:V
Název státu nebo provincie (celé jméno) []:Dolní Parel
Název lokality (např. Město) [Výchozí město]:Bombaj
Název organizace (např. Společnost) [Výchozí společnost Ltd]:TecMint.com
Název organizační jednotky (např. Sekce) []:Linux a open source
Běžný název (např. Vaše jméno nebo název hostitele vašeho serveru) []:tecmint
Emailová adresa []:[chráněno emailem]

Krok 2: Konfigurace VSFTPD pro použití SSL/TLS na Ubuntu

3. Než nějaké provedeme VSFTPD konfigurace pro ty, kteří mají Firewall UFW povolen, musíte otevřít porty 990 a 40000-50000 aby bylo možné v konfiguračním souboru VSFTPD nastavit připojení TLS a rozsah portů pasivních portů:

$ sudo ufw povolit 990/tcp. $ sudo ufw povolit 40000: 50 000/tcp. $ sudo ufw status. 

4. Nyní otevřete konfigurační soubor VSFTPD a definujte v něm podrobnosti SSL:

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

Potom přidejte nebo vyhledejte možnost ssl_enable a nastavte jeho hodnotu na ANO abychom znovu aktivovali používání SSL, protože TLS je bezpečnější než SSL, omezíme VSFTPD, aby místo toho používalo TLS, povolením ssl_tlsv1 volba:

ssl_enable = ANO. ssl_tlsv1 = ANO. ssl_sslv2 = NE. ssl_sslv3 = NE. 

5. Dále komentujte níže uvedené řádky pomocí # znak následovně:

#rsa_cert_file =/etc/ssl/private/ssl-cert-snakeoil.pem. #rsa_private_key_file =/etc/ssl/private/ssl-cert-snakeoil.key. 

Poté přidejte následující řádky a definujte umístění certifikátu SSL a souboru klíčů:

rsa_cert_file =/etc/ssl/private/vsftpd.pem. rsa_private_key_file =/etc/ssl/private/vsftpd.pem. 

6. Nyní také musíme zabránit anonymním uživatelům v používání SSL, poté vynutit, aby všechna neanonymní přihlášení používala pro přenos dat zabezpečené připojení SSL a při přihlašování zasílala heslo:

allow_anon_ssl = NE. force_local_data_ssl = ANO. force_local_logins_ssl = ANO. 

7. Kromě toho můžeme pomocí níže uvedených možností přidat na FTP server další funkce zabezpečení. S možností require_ssl_reuse = ANO, všechna datová připojení SSL jsou vyžadována k opětovnému použití relace SSL; což dokazuje, že znají stejné hlavní tajemství jako kontrolní kanál. Měli bychom to tedy zakázat.

require_ssl_reuse = NE. 

Kromě toho můžeme nastavit, které šifry SSL VSFTPD povolí pro šifrovaná připojení SSL pomocí ssl_ciphers volba. To pomůže zmařit veškeré snahy útočníků, kteří se pokoušejí vynutit konkrétní šifru, u které případně objevili zranitelnosti:

ssl_ciphers = VYSOKÉ. 

8. Poté definujme rozsah portů (minimální a maximální port) pasivních portů.

pasv_min_port = 40000. pasv_max_port = 50 000. 

9. Chcete -li povolit ladění SSL, což znamená, že diagnostika připojení openSSL se zaznamenává do souboru protokolu VSFTPD, můžeme použít debug_ssl volba:

debug_ssl = ANO. 

Nakonec soubor uložte a zavřete. Poté restartujte službu VSFTPD:

$ systemctl restart vsftpd. 

Krok 3: Ověřte FTP pomocí připojení SSL/TLS na Ubuntu

10. Po provedení všech výše uvedených konfigurací vyzkoušejte, zda VSFTPD nyní používá připojení SSL/TLS použijte FTP z příkazového řádku jak je uvedeno níže.

Z níže uvedeného výstupu je chybová zpráva, která nám říká, že VSFTPD může povolit přihlášení pouze uživatelům (neanonymním) ze zabezpečených klientů, kteří podporují šifrovací služby.

$ ftp 192,168,56.10
Připojeno k 192.168.56.10 (192.168.56.10). 220 Vítejte ve službě Fec TecMint.com. Název (192.168.56.10:root): ravi. 530 neanonymních relací musí používat šifrování. Přihlášení selhalo. 421 Služba není k dispozici, vzdálený server má uzavřené připojení. ftp>

Příkazový řádek nepodporuje šifrovací služby, což má za následek výše uvedenou chybu. Abychom se tedy mohli bezpečně připojit k serveru FTP s povolenými šifrovacími službami, potřebujeme klienta FTP, který ve výchozím nastavení podporuje připojení SSL/TLS, jako např. FileZilla.

Krok 4: Nainstalujte si FileZilla na klienty, abyste se mohli bezpečně připojit k FTP

FileZilla je výkonný, široce používaný multiplatformní FTP klient, který podporuje FTP přes SSL/TLS a další. Chcete -li nainstalovat FileZilla na klientský počítač Linux, použijte následující příkaz.

 Na Debianu/Ubuntu 
$ sudo apt-get install filezilla  Na CentOS/RHEL/Fedora  # yum nainstalovat epel-release filezilla  Na Fedoře 22+  $ sudo dnf nainstalovat filezilla. 

12. Jakmile je instalace dokončena, otevřete ji a přejděte na Soubor => Správce webů nebo (stiskněte Ctrl+S) získat Stavbyvedoucí rozhraní níže.

Správce stránek Filezilla
Správce stránek Filezilla

13. Nyní definujte název hostitele/webu, přidejte IP adresu, definujte protokol, který chcete použít, šifrování a typ přihlášení jako na níže uvedeném snímku obrazovky (použijte hodnoty, které platí pro váš scénář):

Klikněte na Nový web tlačítko pro konfiguraci nového připojení web/hostitel.

Hostitel: 192.168.56.10
Protokol: FTP - protokol pro přenos souborů
Šifrování: Vyžadovat explicitní FTP over #doporučený typ přihlášení: Požádejte o heslo #doporučený uživatel: uživatelské jméno
Konfigurujte nový server FTP na serveru Filezilla
Konfigurujte nový server FTP na serveru Filezilla

14. Poté klikněte na Připojit z výše uvedeného rozhraní zadejte heslo a poté ověřte použitý certifikát SSL/TLS připojení a klikněte na OK ještě jednou pro připojení k serveru FTP:

Ověřte certifikát FTP SSL
Ověřte certifikát FTP SSL

15. Nyní byste se měli úspěšně přihlásit k serveru FTP prostřednictvím připojení TLS, další informace z níže uvedeného rozhraní naleznete v části o stavu připojení.

Připojeno k serveru Ubuntu FTP
Připojeno k serveru Ubuntu FTP

16. Nakonec pojďme přenášet soubory z místního počítače na server FTP ve složce souborů se podívejte na spodní konec rozhraní FileZilla a zobrazte si zprávy týkající se přenosů souborů.

Zabezpečený přenos souborů FTP pomocí Filezilla
Zabezpečený přenos souborů FTP pomocí Filezilla

To je vše! Vždy pamatujte, že instalace serveru FTP bez povolení šifrovacích služeb má určité důsledky pro zabezpečení. Jak jsme vysvětlili v tomto tutoriálu, můžete nakonfigurovat server FTP tak, aby používal připojení SSL/TLS k implementaci zabezpečení v Ubuntu 16.04/16.10.

Pokud máte problémy s nastavením SSL/TLS na serveru FTP, použijte níže uvedený formulář pro komentář a podělte se o své problémy nebo myšlenky týkající se tohoto kurzu/tématu.

Teachs.ru