logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

Ceci est une ancienne révision du document !


vsftpd

Installation et configuration

Installation

apt-get install vsftpd

Pendant la configuration on arrête le serveur :

/etc/init.d/vsftpd stop

Configuration

Le but ici est d'utiliser le serveur FTP uniquement avec des utilisateurs virtuels, et non avec les utilisateurs locaux du système Unix.

(Se faire une sauvegarde du fichier de configuration)

  • Éditer le fichier de configuration /etc/vsftpd.conf
vim /etc/vsftpd.conf

On dé-commente les lignes suivantes :

anonymous_enable=NO # Par défaut, mais là on met en place des utilisations virtuels
local_enable=YES #autoriser les utilisateurs locaux à utiliser le FTP,
                 # y compris les utilisateurs virtuels
write_enable=NO  # On désactive l'écriture
nopriv_user=ftpsecure # (1)
chroot_local_user=YES # emprisonner l'utilisateur dans son propre répertoire

#ajout pour utilisateur ftpsecure
guest_enable=YES
guest_username=ftpvirtual

#Ajout pour activer la configuration par utilisateur
user_config_dir=/etc/vsftpd_user_conf
(1) : Le démon vsftpd peut utiliser un utilisateur sans privilège. Par défaut, il utilisera nobody, comme tout autre démon : en dé-commentant, on lui dédie un utilisateur comme ftpsecure.

On dédie l'utilisateur "ftpsecure"

useradd -r -s /bin/false ftpsecure

Création d'un répertoire utilisateur ftp

useradd -m ftpvirtual

Ajout des droits en écriture sur le répertoire ftpvirtual

chmod a-w /home/ftpvirtual/

Créer le répertoire de configuration de l'utilisateur virtuel

mkdir /etc/vsftpd_user_conf

Configurer SSL pour vsFTPd

Il faut éditer le fichier de configuration de vsftpd.

vim /etc/vsftpd.conf
ssl_enable=YES
rsa_private_key_file=/etc/ssl/private/vsftpd.key.pem
rsa_cert_file=/etc/ssl/certs/vsftpd.cert.pem

Création des clés privée/publique

openssl genrsa -des3 -out /etc/ssl/private/vsftpd.key.pem

On donne les droits de lecture :

chmod 400 /etc/ssl/private/vsftpd.key.pem

Création du certificat

openssl req -new -key /etc/ssl/private/vsftpd.key.pem -out /etc/ssl/certs/vsftpd.cert.pem

Créer une base de donnée

cd /etc/
vim vsftpd_logins.txt
user
password
user2
password2
  • Installer les outils pour une base de donnée de type Berkeley :
apt-get install db-util
  • Convertir le fichier utilisateur/mot-de-passe :
db_load -T -t hash -f /etc/vsftpd_logins.txt /etc/vsftpd_login.db
  • Modifier les droits des deux fichiers :
chmod 600 /etc/vsftpd_login.txt /etc/vsftpd_login.db

Créer un fichier de règle PAM

Cela permet d'utiliser cette base de données lors de l'authentification des utilisateurs.

  • Supprimer le fichier PAM existant :
mv /etc/pam.d/vsftpd /home/hypathie/PAM-OLD
  • En éditer un nouveau :
vim /etc/pam.d/vsftpd


Créer un fichier de configuration par utilisateur

Pour l'instant, l'utilisateur virtuel peut lire les fichiers présents dans le répertoire de dépôt FTP. On va lui donner les droits d'uploader lui-même des fichiers.

Pour cela, chaque utilisateur virtuel devra avoir sa propre configuration située dans le répertoire /etc/vsftpd_user_conf.

  • Editer le fichier de configuration d'un utilisateur virtuel :
vim /etc/vsftpd_user_conf/user
anon_world_readable_only=NO
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES

Redémarrer et tester

  • Redémarrer le service vsftpd :
/etc/init.d/vsftpd start
  • Se connecter au serveur :
ftp localhost

Utilisation

utilisateurs/hypathie/tutos/vsftpd.1412098248.txt.gz · Dernière modification: 30/09/2014 19:30 par Hypathie

Pied de page des forums

Propulsé par FluxBB