Installez VSFTPD avec SSL / TLS sur Ubuntu 17. 04 / 17.10

  • Ronald Ferguson
  • 0
  • 957
  • 185

Cet article montre aux étudiants et aux nouveaux utilisateurs comment installer VSFTPD avec prise en charge SSL / TLS sur Ubuntu 17.04 | 17.10. VSFTPD est un programme open source qui utilise le protocole FTP (File Transfer Protocol) pour permettre les téléchargements de fichiers.

Il existe d'autres programmes open source qui utilisent le protocole FTP pour transférer des fichiers sur les systèmes Linux, mais VSFTPD est probablement le plus populaire et le plus facile à configurer. Le démon VSFTPD écoute en permanence les requêtes FTP des clients FTP. Si la demande est valide et que l'utilisateur est autorisé, l'accès sera accordé.

L'accès peut être géré de deux manières… anonyme et authentifié.

En mode anonyme, les utilisateurs / clients distants peuvent accéder au serveur de manière anonyme. Seuls les utilisateurs valides sont autorisés à s'authentifier et à accéder aux zones restreintes. Pour installer VSFTPD, suivez les étapes ci-dessous:

Étape 1: Installez VSFTPD

Pour installer VSFTPD sur Ubuntu, exécutez les commandes ci-dessous

sudo apt-get install vsftpd

Après l'installation, les commandes ci-dessous peuvent être utilisées pour arrêter, démarrer et activer le service VSFTPD pour qu'il démarre toujours lorsque le serveur démarre

sudo systemctl arrêter vsftpd.service sudo systemctl démarrer vsftpd.service sudo systemctl activer vsftpd.service 

Pour configurer VSFTPD, exécutez la commande ci-dessous pour ouvrir vsftpd.conf fichier. Ceci est le fichier de configuration principal du programme

sudo nano /etc/vsftpd.conf

Ensuite, apportez les modifications suivantes en surbrillance ci-dessous et enregistrez le fichier.

Exemple de fichier de configuration /etc/vsftpd.conf # # Les paramètres par défaut compilés dans les paramètres sont assez paranoïaques. Cet exemple de fichier # détend un peu les choses, pour rendre le démon ftp plus utilisable. # Veuillez consulter vsftpd.conf.5 pour tout ce qui est compilé par défaut. # # LISEZ CECI: Ce fichier d'exemple n'est PAS une liste exhaustive d'options vsftpd. # Veuillez lire la page de manuel de vsftpd.conf.5 pour avoir une idée complète des # capacités de vsftpd. # # # Exécuter en mode autonome? vsftpd peut s'exécuter à partir d'un inetd ou en tant que démon # autonome démarré à partir d'un initscript. listen = NO # # Cette directive active l'écoute sur les sockets IPv6. Par défaut, l'écoute # sur l'adresse IPv6 "any" (: :) acceptera les connexions des clients IPv6 # et IPv4. Il n'est pas nécessaire d'écouter * à la fois * sur les sockets * IPv4 et IPv6 #. Si vous voulez cela (peut-être parce que vous voulez écouter sur des # adresses spécifiques), vous devez exécuter deux copies de vsftpd avec deux fichiers de configuration. listen_ipv6 = OUI # # Autoriser le FTP anonyme? (Désactivé par défaut). anonymous_enable = NO # # Décommentez ceci pour permettre aux utilisateurs locaux de se connecter. local_enable = YES # # Décommentez ceci pour activer toute forme de commande d'écriture FTP. write_enable = YES # # Le masque par défaut pour les utilisateurs locaux est 077. Vous pouvez le changer en 022, # si vos utilisateurs s'attendent à ce que (022 est utilisé par la plupart des autres ftpd) local_umask = 022 # # Décommentez ceci pour autoriser l'utilisateur FTP anonyme pour télécharger des fichiers. Cela # n'a d'effet que si la validation d'écriture globale ci-dessus est activée. De plus, vous devrez # évidemment créer un répertoire accessible en écriture par l'utilisateur FTP. # anon_upload_enable = YES # # Décommentez ceci si vous voulez que l'utilisateur FTP anonyme puisse créer # de nouveaux répertoires. # anon_mkdir_write_enable = YES # Si activé, vsftpd affichera les listes de répertoires avec l'heure # dans votre fuseau horaire local. La valeur par défaut est d'afficher GMT. Les # heures renvoyées par la commande FTP MDTM sont également affectées par cette # option. use_localtime = YES # # Activer la journalisation des envois / téléchargements. xferlog_enable = YES # # Assurez-vous que les connexions de transfert PORT proviennent du port 20 (ftp-data). connect_from_port_20 = YES # # Si vous le souhaitez, vous pouvez faire en sorte que les fichiers anonymes téléchargés appartiennent à # un autre utilisateur. Remarque! L'utilisation de "root" pour les fichiers téléchargés n'est pas # recommandée! # chown_uploads = YES # chown_username = whoever # # Vous pouvez remplacer l'emplacement du fichier journal si vous le souhaitez. La valeur par défaut est affichée # ci-dessous. # xferlog_file = / var / log / vsftpd.log # # Si vous le souhaitez, vous pouvez avoir votre fichier journal au format standard ftpd xferlog. # Notez que l'emplacement du fichier journal par défaut est / var / log / xferlog dans ce cas. # xferlog_std_format = YES # # Vous pouvez changer la valeur par défaut pour expirer une session inactive. # idle_session_timeout = 600 # # Vous pouvez modifier la valeur par défaut pour l'expiration d'une connexion de données. # data_connection_timeout = 120 # # Il est recommandé de définir sur votre système un utilisateur unique que le serveur # ftp peut utiliser comme un utilisateur totalement isolé et sans privilège. # nopriv_user = ftpsecure # # Activez cette option et le serveur reconnaîtra les requêtes ABOR asynchrones. Non recommandé pour la sécurité (le code n'est pas trivial). Ne pas l'activer, # cependant, peut confondre les anciens clients FTP. # async_abor_enable = YES ## Par défaut, le serveur prétendra autoriser le mode ASCII mais en fait ignorer # la requête. Activez les options ci-dessous pour que le serveur effectue réellement la manipulation ASCII # sur les fichiers en mode ASCII. # Attention, sur certains serveurs FTP, le support ASCII permet une attaque par déni de service # (DoS) via la commande "SIZE / big / file" en mode ASCII. vsftpd # a prédit cette attaque et a toujours été sûr, rapportant la taille du fichier # raw. # La mutilation ASCII est une caractéristique horrible du protocole. # ascii_upload_enable = YES # ascii_download_enable = YES # # Vous pouvez entièrement personnaliser la chaîne de la bannière de connexion: # ftpd_banner = Bienvenue sur le service FTP blah.

Après avoir modifié le fichier, enregistrez-le.

Après avoir effectué les modifications ci-dessus, redémarrez le service VSFTPD en exécutant les commandes ci-dessous

sudo systemctl redémarrer vsftpd.service

Étape 2: Configuration de VSFTPD

Si vous souhaitez bloquer des utilisateurs, ouvrez le fichier ci-dessous et ajoutez le compte utilisateur et enregistrez le fichier.

sudo nano / etc / ftpusers

Tous les comptes du fichier ci-dessus se verront refuser l'accès FTP.

Pour activer le cryptage SSL / TLS, suivez les étapes ci-dessous.

Tout d'abord, exécutez les commandes ci-dessous pour créer un dossier pour stocker les certificats

sudo mkdir -p / etc / ssl / certs

Ensuite, exécutez les commandes ci-dessous pour créer un nouveau certificat SSL / TLS auto-signé d'un an et stocker dans le dossier ci-dessus.

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

Ensuite, vous exécutez les commandes ci-dessus, une série de questions vous sera posée à intégrer dans le certificat. Utilisez le guide ci-dessous pour répondre

Vous êtes sur le point d'être invité à saisir des informations qui seront intégrées à votre demande de certificat. Ce que vous êtes sur le point d'entrer, c'est ce qu'on appelle un nom distinctif ou un DN. Il y a pas mal de champs mais vous pouvez laisser certains vides Pour certains champs, il y aura une valeur par défaut, si vous entrez «.», Le champ sera laissé vide. ----- Nom du pays (code à 2 lettres) [AU]: État américain ou nom de la province (nom complet) [Some-State]: MN Nom de la localité (par exemple, ville) []: Nom de l'organisation BP (par exemple, société) [Internet Widgits Pty Ltd]: Nom de l'unité organisationnelle (par exemple, section) []: aucun Nom commun (par exemple FQDN du serveur ou VOTRE nom) []: Adresse e-mail de l'hôte local []: 

Après avoir généré le certificat, ouvrez le fichier /etc/vsftpd.conf et ajoutez les lignes ci-dessous et enregistrez.

rsa_cert_file = / etc. HAUTE 

Redémarrez le serveur et vous avez terminé.

Pour tester, ouvrir un client FTP et vous connecter, vous devriez être invité à autoriser à confirmer le certificat présenté au client.

Prendre plaisir!




Personne n'a encore commenté ce post.

Une collection utiles sur le système Linux et les nouvelles technologies
Articles frais, conseils pratiques, critiques détaillées et guides. Sentez-vous comme chez vous dans le monde du système Linux