Debian 9 : mise en place d’un serveur FTP
Mise en place d’un serveur FTP sous Debian Stretch
Mise à jour de l’OS.
root@debian~#: apt update root@debian~#: apt upgrade
Installer proftpd
.
root@debian~#: apt install -y proftpd
Confuguration de proftpd
: Les fichiers de configurations se trouvent dans /etc/proftpd/. Cenpendant il est possible réécrire la configuration en créant/éditant les fichiers dans /etc/proftpd/conf.d/. Les fichiers dans /etc/proftpd/conf.d/ ne sont pas écrasé lors des mises à jours de proftpd
.
root@debian~#: vim /etc/proftpd/conf.d/custom.conf
contenu du fichier
# Disable IPv6 UseIPv6 off # Server name ServerName "ftp-server" # Use this to jail all users in their homes DefaultRoot ~ ftpuser # Users cannot have a valid shell RequireValidShell off # Data port Port 1980 # Specifiyng passive port PassivePorts 40000 50000 # Use this to jail all users in their homes DefaultRoot ~ ftpuser # Allow user only in "ftpuser" group <Limit LOGIN> DenyGroup !ftpuser </Limit>
Configuration de TLS
Génération du certificat.
root@debian~#: openssl genrsa -out /etc/ssl/private/proftpd.key 4096
Autosignature du certificat.
root@debian~#: openssl req -new -x509 -days 3650 -key /etc/ssl/private/proftpd.key -out /etc/ssl/certs/proftpd.crt
Édition du fichier /etc/proftpd/conf.d/tls.conf.
contenu du fichier
<IfModule mod_tls.c> # Enable TLS TLSEngine on # Log file TLSLog /var/log/proftpd/tls.log # Protocol TLSProtocol SSLv23 # Authenticate clients that want to use FTP over TLS? TLSVerifyClient off # Are clients required to use FTP over TLS when talking to this server? TLSRequired on # Certificates TLSRSACertificateFile /etc/ssl/certs/proftpd.crt TLSRSACertificateKeyFile /etc/ssl/private/proftpd.key </IfModule>
Mise en œuvre des changements
: Avant de redémarrer le service, il faut s’assurer que le nom passé à ServerName dans le fichier de configuration correspond au nom de la machine dans le fichier /etc/hosts. Dans le cas contraire il convient de le modifier.
root@debian~#: vim /etc/hosts
127.0.0.1 localhost ftp-server 172.16.0.10 ftp-server
Rechargement de proftpd
.
root@debian~#: systemctl reload proftpd
Si le rechargement ne suffit pas, redémarrage du service.
root@debian~#: systemctl restart proftpd
Les utilisateurs
Les utilisateurs qui accèdent au serveur FTP n’ont pas besoin d’un shell valide pour utiliser le service. Il faut donc faire un « faut » shell pour ces derniers en éditant le fichier /etc/shells en y ajoutant la ligne : /bin/false
root@debian~#: vim /etc/shells
aperçu contenu du fichier
/bin/false
Création du groupe d’utilisateur pouvant accéder au service FTP.
root@debian~#: addgroup ftpuser
Une fois cela fait, il faut créer le dossier du FTP, changer le propriétaire et changer les droits de ce dossier.
root@debian~#: mkdir /ftp-folder
root@debian~#: chown proftpd:ftpuser ftp-folder/
root@debian~#: chmod 774 ftp-folder/
: proftpd est aussi un utilisateur, d’où ce choix.
Créer le nouvel utilisateur et l’ajouter à ce groupe.
root@debian~#: adduser stan --ingroup ftpuser --shell /bin/false --home /ftp-folder
by Nicolas SHINEY | June 3, 2018 | No Comments | Système | Tags : debian 9 ftp