III - Miroir (site web)

III.1 - Droits d’accès

Sous Debian l’utilisateur (et le goupe) par défaut utilisé par Apache ou Nginx est www-data. C’est cet utilisateur qui a été définit pour tous les fichiers et sous répertoires contenus dans le répertoire de votre site web.

Les écritures effectuées depuis un client SFTP ne doivent pas modifier ces droits.

Nous allons donc utiliser un site miroir du répertoire contenant votre site web.

III.2 - Création du répertoire miroir

L’outil bindfs liera le dossier /var/www/votre_site_web/ à un répertoire miroir dédié aux accès SFTP. Les écritures effectuées à l’intérieur de ce répertoire n’affecteront pas les droits d’accès et permissions du dossier de votre site web.

Le répertoire miroir appartiendra au groupe sftp et à l’utilisateur sftp.

Commencez par la création du répertoire miroir :

sudo mkdir /home/sftp/sites-web/votre_site_web

Création du groupe sftp :

sudo addgroup sftp

Création de l’utilisateur :

sudo useradd -d /home/sftp/sites-web/votre_site_web -g sftp sftp

Appliquez les permissions suivantes sur le répertoire miroir :

sudo chown sftp:sftp /home/sftp/sites-web/votre_site_web
sudo chmod 755 /home/sftp/sites-web/votre_site_web

Défnissez un mot de passe pour l’utilisateur sftp :

sudo passwd sftp

III.3 - Installation de bindfs

L’installation de bindfs de fait à l’aide de la commande :

sudo apt install bindfs

Le paquet fuse est ajouté comme dépendance.

Montage automatique de votre site web dans le répertoire mirroir :

sudo vi /etc/fstab

bindfs#/var/www/votre_site_web /home/sftp/sites-web/votre_site_web fuse force-user=sftp,force-group=sftp,create-for-user=www-data,create-for-group=www-data,create-with-perms=ud=rwx:god=rx:uf=rw:gof=r,chgrp-ignore,chown-ignore,chmod-ignore 0 0

III.4 - Montage de la partition bindfs

Exécutez la commande suivante pour monter la partition /home/sftp/sites-web/votre_site_web :

mount /home/sftp/sites-web/votre_site_web