web-dev-qa-db-fra.com

Essayer d'installer vsftpd sur Ubuntu 16.04

J'essaie d'installer un serveur FTP (vsftpd) sur mon serveur Ubuntu 16.04 à partir de Scaleway .

J'ai fait ce qui suit:

Sudo apt-get update
Sudo apt-get install vsftpd
Sudo service vsftpd status

Je reçois le résultat suivant:

● vsftpd.service - vsftpd FTP server
   Loaded: loaded (/lib/systemd/system/vsftpd.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Fri 2018-08-31 22:26:53 CEST; 10min ago
  Process: 10161 ExecStart=/usr/sbin/vsftpd /etc/vsftpd.conf (code=exited, status=2)
  Process: 10157 ExecStartPre=/bin/mkdir -p /var/run/vsftpd/empty (code=exited, status=0/SUCCESS)
 Main PID: 10161 (code=exited, status=2)

Aug 31 22:26:53 scw-24e1a0 systemd[1]: Starting vsftpd FTP server...
Aug 31 22:26:53 scw-24e1a0 systemd[1]: Started vsftpd FTP server.
Aug 31 22:26:53 scw-24e1a0 systemd[1]: vsftpd.service: Main process exited, code=exited, status=2/INVALIDARGUMENT
Aug 31 22:26:53 scw-24e1a0 systemd[1]: vsftpd.service: Unit entered failed state.
Aug 31 22:26:53 scw-24e1a0 systemd[1]: vsftpd.service: Failed with result 'exit-code'.

Quel pourrait être le problème de ceci?

2
nielsv

Si vous n'avez pas touché /etc/vsftpd.conf, la raison de cet échec est probablement due au fait qu'un autre service écoute déjà sur le port FTP par défaut - 21. J'ai fait une expérience et j'ai reçu le même statut que le vôtre. Vous pouvez rechercher un autre service à l'aide de l'une des commandes suivantes:

Sudo lsof -i -n -P | grep ':21'
Sudo netstat -peanut | grep ':21'

Essayez de Sudo systemctl stop <that another>.service et Sudo systemctl start vsftpd.service, puis vérifiez à nouveau le statut: Sudo systemctl status vsftpd.service.

Une autre façon de résoudre ce problème consiste à changer le port sur lequel l'un de ces services écoute. Par exemple, vous pouvez le faire pour vsftpd en ajoutant la directive suivante à /etc/vsftpd.conf - référence :

listen_port=2121

Ensuite, vous devez indiquer au client FTP de se connecter via le port 2121 au lieu du port par défaut. Dans la plupart des cas, il vous suffit d'ajouter :<port-number> à la fin de l'adresse IP/FQDN cible. Par exemple, si vous utilisez Nautilus en tant que client FTP:

enter image description here

Notes complémentaires:

Je ne sais pas dans quelle mesure vsftp est sécurisé en pratique, mais si vous n'avez pas un besoin particulier d'utiliser ce service, vous pouvez utiliser sftp qui passe par la connexion SSH cryptée et utilise son authentification par clé si il est précédemment configuré. De plus, vous n'avez pas besoin d'ouvrir de port supplémentaire dans votre pare-feu.

Bien sûr, si vous avez un accès SSH à l'instance Ubuntu, sftp est déjà disponible si vous ne l'avez pas désactivé! Voici quelques références à ce sujet:

2
pa4080

Si votre sortie dit code=exited, status=2/INVALIDARGUMENT, cela signifie que votre /etc/vsftpd.conf n'est pas correct.

Modifiez votre /etc/vsftpd.conf et ajoutez une file d'attente:

de listen=YES à listen=NO

puis redémarrez votre service.

Cela fonctionne pour moi.

0