GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment installer ProFTPD avec TLS sur Ubuntu 18.04 LTS

ProFTPD est un serveur FTP gratuit, open source et le plus populaire pour les systèmes d'exploitation de type Unix. ProFTPD vous permet de créer une connexion FTP entre votre ordinateur local et le serveur distant. C'est un serveur FTP polyvalent qui prend en charge TLS (SSL) pour des connexions sécurisées.

Caractéristiques

  • Prend en charge IPv4 et IPv6.
  • Prend en charge .ftpaccess pour sécuriser par répertoire.
  • Permettez-nous de configurer plusieurs serveurs FTP virtuels et services FTP anonymes.
  • Assurer la prise en charge du mot de passe fantôme, du cryptage utmp/wtmp, SSL/TLS et de RADIUS
  • Peut s'exécuter en tant que serveur autonome ou depuis inetd/xinetd.

Dans ce tutoriel, nous allons apprendre à installer ProFTPD et à le sécuriser avec TLS sur le serveur Ubuntu 18.04

Exigences

  • Un serveur exécutant Ubuntu 18.04.
  • Une adresse IP statique 192.168.0.101 est configurée sur le serveur.
  • Un mot de passe root est configuré sur votre serveur.

Mise en route

Avant de commencer, vous devrez mettre à jour votre système avec la dernière version. Vous pouvez le faire en exécutant la commande suivante :

apt-get update -y
apt-get upgrade -y

Une fois votre serveur mis à jour, redémarrez votre serveur pour appliquer les modifications.

Installer ProFTPD

Par défaut, ProFTPD est disponible dans le référentiel par défaut d'Ubuntu 18.04. Vous pouvez l'installer en exécutant simplement la commande suivante :

apt-get install proftpd -y

Après avoir installé ProFTPD, démarrez le service ProFTPD et activez-le au démarrage avec la commande suivante :

systemctl start proftpd
systemctl enable proftpd

Vous pouvez vérifier l'état du service ProFTPD avec la commande suivante :

systemctl status proftpd

Vous devriez voir le résultat suivant :

? proftpd.service - LSB: Starts ProFTPD daemon
   Loaded: loaded (/etc/init.d/proftpd; generated)
   Active: active (running) since Sat 2019-05-25 09:18:19 UTC; 31s ago
     Docs: man:systemd-sysv-generator(8)
    Tasks: 1 (limit: 1114)
   CGroup: /system.slice/proftpd.service
           ??1927 proftpd: (accepting connections)

May 25 09:18:19 ubuntu1804 systemd[1]: Starting LSB: Starts ProFTPD daemon...
May 25 09:18:19 ubuntu1804 proftpd[1906]:  * Starting ftp server proftpd
May 25 09:18:19 ubuntu1804 proftpd[1906]:    ...done.
May 25 09:18:19 ubuntu1804 systemd[1]: Started LSB: Starts ProFTPD daemon.

Les fichiers de configuration par défaut de ProFTPD se trouvent dans /etc/proftpd/proftpd.conf. Vous pouvez le voir avec la commande suivante :

cat /etc/proftpd/proftpd.conf

Vous devriez voir le résultat suivant :

#
# /etc/proftpd/proftpd.conf -- This is a basic ProFTPD configuration file.
# To really apply changes, reload proftpd after modifications, if
# it runs in daemon mode. It is not required in inetd/xinetd mode.
# 

# Includes DSO modules

Include /etc/proftpd/modules.conf

# Set off to disable IPv6 support which is annoying on IPv4 only boxes.
UseIPv6                         on
# If set on you can experience a longer connection delay in many cases.
IdentLookups                    off

ServerName                      "Debian"
# Set to inetd only if you would run proftpd by inetd/xinetd.
# Read README.Debian for more information on proper configuration.
ServerType                              standalone
DeferWelcome                    off

MultilineRFC2228                on
DefaultServer                   on
ShowSymlinks                    on

TimeoutNoTransfer               600
TimeoutStalled                  600
TimeoutIdle                     1200

DisplayLogin                    welcome.msg
DisplayChdir                    .message true
ListOptions                     "-l"

DenyFilter                      \*.*/

# Use this to jail all users in their homes 
# DefaultRoot                   ~
# Port 21 is the standard FTP port.
Port                            21
MaxInstances                    30
# Set the user and group that the server normally runs at.
User                            proftpd
Group                           nogroup
# Umask 022 is a good standard umask to prevent new files and dirs
# (second parm) from being group and world writable.
Umask                           022  022
# Normally, we want files to be overwriteable.
AllowOverwrite                  on
TransferLog /var/log/proftpd/xferlog
SystemLog   /var/log/proftpd/proftpd.log

Vous pouvez modifier le paramètre ci-dessus selon vos besoins, comme indiqué ci-dessous :

  • Nom du serveur : Vous pouvez le changer comme nom de serveur par défaut.
  • UtiliserIPV6 : Vous pouvez le désactiver en le désactivant.
  • Racine par défaut : Vous pouvez décommenter cette ligne pour limiter les utilisateurs à leurs dossiers personnels.
  • Port : Vous pouvez définir votre propre port en le modifiant.
  • Journal système : L'emplacement par défaut du fichier journal. Vous pouvez le modifier selon vos besoins.

Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.

Sécuriser ProFTPD avec TLS

ProFTPD est maintenant installé. Maintenant, vous devrez configurer ProFTPD avec TLS pour des connexions FTP sécurisées.

Avant de commencer, vous devrez installer OpenSSL sur votre serveur. Vous pouvez l'installer en exécutant simplement la commande suivante :

apt-get install openssl -y

Une fois l'installation terminée, générez des certificats SSL pour ProFTPd avec la commande suivante :

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

Répondez à toutes les questions comme indiqué ci-dessous :

Generating a 1024 bit RSA private key
.++++++
.......................++++++
writing new private key to '/etc/ssl/private/proftpd.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:IN
State or Province Name (full name) [Some-State]:GUJ
Locality Name (eg, city) []:Junagadh
Organization Name (eg, company) [Internet Widgits Pty Ltd]:IT
Organizational Unit Name (eg, section) []:IT
Common Name (e.g. server FQDN or YOUR name) []:HITESH
Email Address []:[email protected]

La commande ci-dessus générera deux fichiers /etc/ssl/private/proftpd.key et /etc/ssl/certs/proftpd.crt.

Ensuite, fournissez les autorisations appropriées aux fichiers générés avec la commande suivante :

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

Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.

Configurer ProFTPD pour utiliser SSL

Ensuite, vous devrez configurer ProFTPD pour utiliser les certificats SSL. Vous pouvez le faire en éditant le fichier /etc/proftpd/proftpd.conf :

nano /etc/proftpd/proftpd.conf

Décommentez la ligne suivante :

Include /etc/proftpd/tls.conf

Enregistrez et fermez le fichier lorsque vous avez terminé. Ensuite, ouvrez le fichier /etc/proftpd/tls.conf :

nano /etc/proftpd/tls.conf

Modifiez les lignes suivantes :

TLSRSACertificateFile /etc/ssl/certs/proftpd.crt
TLSRSACertificateKeyFile /etc/ssl/private/proftpd.key
TLSEngine on
TLSLog /var/log/proftpd/tls.log
TLSProtocol SSLv23
TLSRequired on
TLSOptions NoCertRequest EnableDiags NoSessionReuseRequired
TLSVerifyClient off

Enregistrez et fermez le fichier lorsque vous avez terminé. Ensuite, redémarrez le service ProFTPD avec la commande suivante :

systemctl restart proftpd

Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.

Créer un utilisateur pour ProFTPD

Ensuite, vous devrez créer un utilisateur ProFTPD pour accéder au serveur. Vous pouvez le faire avec la commande suivante :

adduser ftp1

Répondez à toutes les questions comme indiqué ci-dessous :

Adding user `ftp1' ...
Adding new group `ftp1' (1006) ...
Adding new user `ftp1' (1002) with group `ftp1' ...
Creating home directory `/home/ftp1' ...
Copying files from `/etc/skel' ...
Enter new UNIX password: 
Retype new UNIX password: 
passwd: password updated successfully
Changing the user information for ftp1
Enter the new value, or press ENTER for the default
	Full Name []: 
	Room Number []: 
	Work Phone []: 
	Home Phone []: 
	Other []: 
Is the information correct? [Y/n] Y

Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.

Accéder au serveur ProFTPD à l'aide de FileZilla

ProFTPD est maintenant installé et configuré, il est temps d'accéder à ProFTPD via FileZilla depuis le système client.

Tout d'abord, vous devrez installer FileZilla sur votre système client. Vous pouvez l'installer en exécutant simplement la commande suivante :

apt-get install filezilla -y

Une fois l'installation terminée, vous pouvez ouvrir le tableau de bord FileZilla depuis Unity comme indiqué ci-dessous :

Maintenant, cliquez sur le Gestionnaire de site sur le panneau de gauche et créez un nouveau site. Vous devriez voir la page suivante :

Maintenant, fournissez l'adresse IP de votre serveur FTP, sélectionnez le protocole, sélectionnez Cryptage, sélectionnez le type de connexion, indiquez le nom d'utilisateur et le mot de passe. Ensuite, cliquez sur Se connecter bouton. Vous devriez voir la page suivante :

Maintenant, acceptez le certificat, cochez "Toujours faire confiance au certificat dans les sessions futures" et cliquez sur OK bouton. Après une connexion réussie, vous devriez voir la page suivante :

Vous pouvez désormais transférer des fichiers en toute sécurité via SSL/TLS.

Toutes nos félicitations! vous avez installé et configuré avec succès le serveur ProFTPD et le sécurisez avec le cryptage SSL/TLS. Vous pouvez maintenant transférer facilement votre fichier de votre ordinateur local vers un serveur FTP avec un cryptage sécurisé. N'hésitez pas à me demander si vous avez des questions.


Ubuntu
  1. Comment installer Docker sur Ubuntu 22.04 / 20.04 LTS

  2. Comment installer PlayOnLinux sur Ubuntu 20.04 LTS

  3. Comment installer MariaDB dans Ubuntu 20.04 LTS

  4. Comment installer Ansible sur Ubuntu 20.04 LTS / 21.04

  5. Comment installer ProFTPD sur Ubuntu 20.04 LTS

Comment installer Ubuntu 20.04 LTS étape par étape avec des captures d'écran

Comment installer Go sur Ubuntu 22.04 LTS

Comment installer WordPress avec Docker sur Ubuntu 16.04 LTS

Comment installer Go sur Ubuntu 18.04 LTS

Comment installer Go sur Ubuntu 20.04 LTS

Comment installer phpMyAdmin avec Nginx sur Ubuntu 20.04 LTS