GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come installare Proftpd con TLS su Ubuntu 15.04

FTP (File Transfer Protocol) è probabilmente il metodo più diffuso per caricare file su un server. ProFTPD è un server FTP popolare e facilmente configurabile per sistemi Linux che supporta la crittografia SSL/TLS.

FTP è un protocollo non sicuro perché tutte le password e tutti i dati trasferiti in chiaro (come testo normale). Utilizzando TLS, l'intera comunicazione può essere crittografata, rendendo così l'FTP un protocollo sicuro per il trasferimento di file. Questo articolo descrive come configurare proftpd con TLS nel server Ubuntu 15.04 .

Prerequisiti

  1. Ubuntu Server 15.04 a 64 bit
  2. privilegi sudo/root

Cosa faremo in questo tutorial:

  1. Installa Proftpd e OpenSSL
  2. Configura Proftpd
  3. Configura utente
  4. Configura TLS con proftpd
  5. Test

Installa Proftpd e OpenSSL

Proftpd e OpenSSL sono disponibili nel repository di Ubuntu e possono essere installati con il comando apt. Come al solito con i comandi di installazione, eseguiamo il comando apt tramite sudo per eseguirlo con i privilegi di root:

sudo apt-get install -y proftpd openssl

All'inizio dell'installazione, ti verrà chiesto se eseguire Proftpd come servizio inetd o autonomo. Scegli l'opzione autonoma qui e poi Ok.

Configura Proftpd

Una volta installato Proftpd, dovrai modificare alcuni file di configurazione. Il file di configurazione di Proftpd si trova nella directory /etc/proftpd/. Modificherò il file proftpd.conf con l'editor nano.

cd /etc/proftpd/
nano proftpd.conf

Nella riga ServerName, cambia il nome in il tuo nome host o dominio:

ServerName                      "myhostname"

Decommenta DefaultRoot:

# Use this to jail all users in their homes
DefaultRoot   		~

e riavvia Proftpd:

systemctl restart proftpd

Aggiungi un utente FTP

Esistono due modi comuni per accedere a un server FTP:

1. FTP anonimo , il server FTP fornisce l'accesso a chiunque senza la necessità di avere un account utente e una password.
2. Accesso con nome utente e password , solo gli utenti che dispongono di un account utente e di una password che possono accedere al server FTP.

Configurerò l'opzione 2 qui. L'FTP anonimo è stato popolare all'inizio dell'era di Internet, ma oggi ci sarebbe così tanto uso improprio dei server FTP anonimi che questa opzione è utilizzabile solo in ambienti chiusi come una rete domestica o aziendale.

Prima di creare un utente per Proftpd, aggiungi /bin/false al tuo file /etc/shells.

echo "/bin/false" >> /etc/shells

e ora creerai un utente con una home directory a cui avrà accesso tramite FTP. Disabiliterò l'accesso alla shell per questo utente assegnandogli la shell "/bin/false" per assicurarmi che non possa accedere tramite SSH. Il mio nome utente si chiama "yuuki", per favore sostituisci yuuki con il tuo nome utente nel comando successivo.

adduser --home /home/yuuki --shell /bin/false yuuki

Il comando precedente creerà un nuovo utente chiamato yuuki con home directory /home/yuuki/ e senza accesso alla shell /bin/false.

E ora configura Proftpd per consentire all'utente yuuki di accedere al server FTP.

cd /etc/proftpd/
nano proftpd.conf

aggiungi questa configurazione per consentire all'utente yuuki di accedere e caricare/scaricare file nella/dalla sua home directory /home/yuuki :

<Directory /home/yuuki>
Umask 022 022
AllowOverwrite off
     <Limit LOGIN>
        AllowUser yuuki
        DenyALL
     </Limit>
     <Limit ALL>
        Order Allow,Deny
        AllowUser yuuki
        Deny ALL
    </Limit>
    <Limit MKD STOR DELE XMKD RNRF RNTO RMD XRMD>
    AllowUser yuuki
    Deny ALL
    </Limit>
</Directory>

e quindi riavviare Proftpd.

systemctl restart proftpd

Fino a questa fase, FTP può già essere utilizzato senza crittografia. Ora lo renderemo sicuro abilitando TLS.

Configura TLS in Proftpd

Per utilizzare TLS, devi creare un certificato SSL. Genererò il certificato SSL con il comando OpenSSL:

openssl req -x509 -newkey rsa:1024 -keyout /etc/ssl/private/proftpd.key -out /etc/ssl/certs/proftpd.crt  -nodes -days 365

Il comando genererà un file di certificato proftpd.crt nella directory /etc/ssl/certs/ e un file di chiave di certificato proftpd.key nella directory /etc/ssl/private/.

Modifica le autorizzazioni dei file dei certificati su 600 per impedire l'accesso ad altri utenti:

chmod 600 /etc/ssl/certs/proftpd.crt
chmod 600 /etc/ssl/private/proftpd.key

Ora torna alla directory Proftpd e configura Proftpd per utilizzare SSL il certificato che hai generato.

cd /etc/proftpd/
nano proftpd.conf

Decommenta la riga tls:

Include /etc/proftpd/tls.conf

Salvalo e modifica il file tls:

nano tls.conf

Decommenta tutte queste righe:

TLSEngine                               on
TLSLog                                  /var/log/proftpd/tls.log
TLSProtocol                             SSLv23

TLSRSACertificateFile                   /etc/ssl/certs/proftpd.crt
TLSRSACertificateKeyFile                /etc/ssl/private/proftpd.key

TLSOptions                              NoCertRequest

TLSVerifyClient                         off

TLSRequired                             on

Salva ed esci. L'ultimo passaggio è riavviare il server Proftpd:

systemctl restart proftpd

Test

Per testare la configurazione, prova a connetterti al tuo server FTP con un client FTP. Userò FileZilla  qui. Inserisci l'IP del server, il nome utente, la password e la porta:

Server IP : 192.168.1.108
username : yuuki
Password ******
Port : 21

e quindi fai clic su Connessione rapida. Ti verrà chiesto di confermare il certificato SSL, fai semplicemente clic su OK.



Ora hai effettuato l'accesso al server FTP con certificato TLS/SSL .


Ubuntu
  1. Come installare e configurare un server FTP (vsftpd) con SSL/TLS su Ubuntu 20.04

  2. Come installare ProFTPd con TLS su OpenSuse 13.2

  3. Come installare ProFTPD su Ubuntu 14.04

  4. Come installare ProFTPD su Ubuntu 15.04

  5. Come installare il server FTP su Ubuntu 20.04

Come installare il server VsFTPD con TLS su Ubuntu 18.04 LTS

Come installare ProFTPD con TLS su Ubuntu 20.04 LTS

Come installare ProFTPD su Ubuntu 20.04

Come installare Nginx con Let's Encrypt TLS/SSL su Ubuntu 20.04

Come installare Vsftpd su Ubuntu 16.04

Come configurare un server FTP con ProFTPD in Ubuntu 18.04