Comment configurer un serveur FTP et un utilisateur FTP sur mon instance Lightsail ?

Dernière mise à jour : 05/10/2021

Je souhaite configurer un serveur FTP et un utilisateur FTP sur mon instance Lightsail exécutant Amazon Linux 2, CentOS, Ubuntu ou Debian. Comment procéder ?

Solution

1.    Exécutez la commande suivante pour installer le package VSFTPD :

Amazon Linux 2 et CentOS

sudo yum install vsftpd -y

Ubuntu et Debian

sudo apt install vsftpd -y

2.    Modifiez le fichier vsftpd.config pour modifier les variables nécessaires à votre environnement.

L'emplacement du fichier vsftpd.config varie en fonction de votre système d'exploitation :

  • Amazon Linux 2 et CentOS : /etc/vsftpd/vfstpd.conf
  • Debian et Ubuntu : /etc/vsftpd.conf

Modifiez les variables de l'exemple suivant selon les besoins de votre environnement :

anonymous_enable=NO
local_enable=YES
write_enable=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=NO
xferlog_std_format=YES
chroot_local_user=YES
allow_writeable_chroot=YES
chroot_list_file=/etc/vsftpd/chroot_list
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
userlist_file=/etc/vsftpd/user_list
userlist_deny=NO
listen_port=10021
pasv_enable=YES
pasv_min_port=21000
pasv_max_port=21999
pasv_addr_resolve=NO

Remarque : le port 21 est le port par défaut pour FTP. Vous pouvez utiliser le port 21. Toutefois, dans l'exemple précédent, le port personnalisé 10021 est le port FTP pour des raisons de sécurité. Pour personnaliser le port, remplacez le portport-écoute par le port que vous souhaitez utiliser et définissez connect_from_port_20 sur NO. Veillez à activer les ports que vous prévoyez d'utiliser pour FTP sur le pare-feu de votre instance. Dans l'exemple précédent, les ports 10021 et 21000-21999 sont activés sur le pare-feu personnalisé et Lightsail.

3.    Exécutez la commande suivante pour ajouter l'utilisateur FTP :

sudo adduser --home /home/ftp_user ftp_user

Remarque : dans l'exemple précédent, remplacez utilisateur_ftp par le nom d'utilisateur de votre choix.

4.    Exécutez la commande suivante pour créer un mot de passe pour l'utilisateur :

sudo passwd ftp_user

5.    Exécutez la commande suivante pour modifier la propriété du fichier /home/ftp_user. Cette commande définit utilisateur_ftp comme propriétaire du fichier.

sudo chown ftp_user:ftp_user -R /home/ftp_user/

6.    Exécutez la commande suivante pour ajouter le nouvel utilisateur à la liste_utilisateurs vsftpd. Utilisez l'indicateur -a pour ajouter des données au fichier.

Amazon Linux 2 et CentOS

sudo echo "ftp_user" | sudo tee -a /etc/vsftpd/user_list

Debian et Ubuntu

Exécutez la commande suivante pour créer le fichier de liste d'utilisateurs et ajouter le nouvel utilisateur au fichier :

sudo echo "ftp_user" | sudo tee -a /etc/vsftpd.userlist

7.    Redémarrez le service vsftpd :

sudo systemctl restart vsftpd

8.    Connectez-vous au serveur FTP. L'exemple suivant utilise le logiciel FTP simple Filezilla.

Status:    Connecting to 54.xxx.xxx.x2:10021...
Status:    Connection established, waiting for welcome message...
Status:    Plain FTP is insecure. Please switch to FTP over TLS.
Status:    Logged in
Status:    Retrieving directory listing...
Status:    Server sent passive reply with unroutable address. Using server address instead.
Status:    Calculating timezone offset of server...
Status:    Timezone offset of server is 0 seconds.
Status:    Directory listing of "/" successful
Status:    Connecting to 54.xxx.1xx.52:10021...
Status:    Connection established, waiting for welcome message...
Status:    Plain FTP is insecure. Please switch to FTP over TLS.
Status:    Logged in
Status:    Starting upload of C:\Users\Administrator\Documents\FTPtest.txt
Status:    Server sent passive reply with unroutable address. Using server address instead.
Status:    File transfer successful, transferred 10 bytes in 1 second
Status:    Retrieving directory listing of "/"...
Status:    Server sent passive reply with unroutable address. Using server address instead.
Status:    Directory listing of "/" successful

Dépannage de la configuration du serveur FTP

Des options incorrectes dans le fichier vsftpd.conf peuvent entraîner l'arrêt du service vsftpd.conf. Si vous ne parvenez pas à le démarrer, exécutez la commande suivante pour identifier les options qui ne sont pas configurées correctement :

Amazon Linux 2 et CentOS

sudo /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf

Debian et Ubuntu

sudo /usr/sbin/vsftpd /etc/vsftpd.conf

Cet article vous a-t-il été utile ?


Besoin d'aide pour une question technique ou de facturation ?