FTP (File Transfer Protocol) je pravděpodobně nejoblíbenější metodou nahrávání souborů na server. ProFTPD je oblíbený a snadno konfigurovatelný FTP server pro systémy Linux, který podporuje šifrování SSL / TLS.
FTP je nezabezpečený protokol, protože všechna hesla a všechna data jsou přenášena jasně (jako prostý text). Pomocí TLS lze celou komunikaci šifrovat, čímž se FTP stává bezpečným protokolem pro přenos souborů. Tento článek popisuje jak nakonfigurovat proftpd s TLS na serveru Ubuntu 15.04 .
Předpoklady
- Ubuntu Server 15.04 64bit
- práva sudo/root
Co budeme dělat v tomto tutoriálu:
- Nainstalujte Proftpd a OpenSSL
- Nakonfigurujte Proftpd
- Konfigurovat uživatele
- Nakonfigurujte TLS pomocí proftpd
- Testování
Instalovat Proftpd a OpenSSL
Proftpd a OpenSSL jsou k dispozici v úložišti Ubuntu a lze je nainstalovat pomocí příkazu apt. Jako obvykle u instalačních příkazů spustíme příkaz apt prostřednictvím sudo, abychom jej spustili s právy root:
sudo apt-get install -y proftpd openssl
Po zahájení instalace budete dotázáni, zda spustit Proftpd jako inetd nebo samostatnou službu. Zde vyberte samostatnou možnost a poté OK.
Konfigurovat Proftpd
Jakmile je Proftpd nainstalován, budete muset změnit některé konfigurační soubory. Konfigurační soubor Proftpd se nachází v adresáři /etc/proftpd/. Upravím soubor profpd.conf pomocí editoru nano.
cd /etc/proftpd/
nano proftpd.conf
V řádku ServerName změňte název na název hostitele nebo doménu:
Název serveru "myhostname"
Odebrat komentář DefaultRoot:
# Použijte toto k uvěznění všech uživatelů v jejich domovechDefaultRoot ~
a restartujte Proftpd:
systemctl restart proftpd
Přidat uživatele FTP
Existují dva běžné způsoby přístupu k serveru FTP:
1.Anonymní FTP FTP server poskytuje přístup komukoli bez nutnosti mít uživatelský účet a heslo.
2. Přístup pomocí uživatelského jména a hesla , pouze uživatelé, kteří mají uživatelský účet a heslo pro přístup k serveru FTP.
Zde nakonfiguruji možnost 2. Anonymní FTP bylo populární na začátku internetové éry, ale dnes by se anonymní FTP servery zneužívaly natolik, že je tato možnost použitelná pouze v uzavřených prostředích, jako je domácí nebo firemní síť.
Než vytvoříte uživatele pro Proftpd, přidejte /bin/false do svého souboru /etc/shells.
echo "/bin/false">> /etc/shells
a nyní vytvoříte uživatele s domovským adresářem, kam bude mít přístup pomocí FTP. Zakážu tomuto uživateli přístup k shellu tím, že mu přiřadím shell "/bin/false", aby se zajistilo, že se nebude moci přihlásit pomocí SSH. Mé uživatelské jméno se jmenuje "yuuki", nahraďte prosím yuuki v dalším příkazu svým uživatelským jménem.
adduser --home /home/yuuki --shell /bin/false yuuki
Výše uvedený příkaz vytvoří nového uživatele s názvem yuuki s domovským adresářem /home/yuuki/ a bez shellového přístupu /bin/false.
A nyní nakonfigurujte Proftpd tak, aby uživateli yuuki umožnil přístup k FTP serveru.
cd /etc/proftpd/
nano proftpd.conf
přidejte tuto konfiguraci, abyste umožnili uživateli yuuki přihlásit se a nahrát/stáhnout soubor do/z jeho domovského adresáře /home/yuuki :
Umask 022 022AllowOverwrite off AllowUser yuuki DenyALL Objednávka Povolit,Odepřít AllowUser yuuki Odepřít VŠE AllowUser yuuki Odepřít VŠE
a poté restartujte Proftpd.
systemctl restart proftpd
Do této fáze lze FTP používat již bez šifrování. Nyní to zajistíme povolením TLS.
Konfigurace TLS v Proftpd
Chcete-li používat TLS, musíte si vytvořit certifikát SSL. Certifikát SSL vygeneruji pomocí příkazu OpenSSL:
openssl req -x509 -newkey rsa:1024 -keyout /etc/ssl/private/proftpd.key -out /etc/ssl/certs/proftpd.crt -nodes -days 365
Příkaz vygeneruje soubor certifikátu proftpd.crt v adresáři /etc/ssl/certs/ a soubor klíče certifikátu proftpd.key v adresáři /etc/ssl/private/.
Změňte oprávnění k souborům certifikátů na 600, abyste zakázali přístup ostatním uživatelům:
chmod 600 /etc/ssl/certs/proftpd.crt
chmod 600 /etc/ssl/private/proftpd.key
Nyní zpět do adresáře Proftpd a nakonfigurujte Proftpd tak, aby používal SSL certifikát, který jste vygenerovali.
cd /etc/proftpd/
nano proftpd.conf
Odkomentujte řádek tls:
Zahrňte /etc/proftpd/tls.conf
Uložte jej a upravte soubor tls:
nano tls.conf
Odkomentujte všechny tyto řádky:
TLSEngine onTLSLog /var/log/proftpd/tls.logTLSProtocol SSLv23TLSRSACertificateFile /etc/ssl/certs/proftpd.crtTLSRSACertificateKeyFile /etc/ssl/private/proftpd.CertRequestentTLSOptions onSVCertifydTLSOptions NoUložit a odejít. Posledním krokem je restartování serveru Proftpd:
systemctl restart proftpdTestování
Chcete-li otestovat konfiguraci, zkuste se připojit k serveru FTP pomocí FTP klienta. Budu používat FileZilla tady. Vyplňte IP adresu serveru, uživatelské jméno, heslo a port:
IP serveru:192.168.1.108uživatelské jméno:yuukiPassword ******Port:21a poté klikněte na Rychlé připojení. Budete požádáni o potvrzení certifikátu SSL, stačí kliknout na ok.
Nyní jste přihlášeni k FTP serveru pomocí TLS/SSL certifikátu .
Jak monitorovat servery CentOS a Ubuntu pomocí Pandora FMS Perfect Server Automated ISPConfig 3 instalace na Debian 10 - 11 a Ubuntu 20.04Ubuntu