Donnez à l'user SCP l'access au directory personnel d'un autre user

Nous utilisons normalement des connections de key publique pour notre server, mais un nouveau service d'abonnement nécessite un nom d'user et un mot de passe pour l'access SCP au count d'un user (Ceci est Vaultpress – Un utilitaire de sauvegarde à distance pour WordPress). Nous avons un blog sous UserA à / home / usera / public_html. Vaultpress nécessite un nom d'user et un mot de passe pour l'access SCP, mais nous ne voulons pas leur donner les informations d'identification de UserA.

La question est donc: comment pouvons-nous créer une UserB qui ne peut que SCP et qui a seulement access au directory personnel d'UserA? Et comment pouvons-nous nous assurer que les files écrits par UserB sont modifiables ou possédés par UserA?

Vous pouvez simplement utiliser POSIX acl pour cela. Créez l'user B avec son groupe par défaut comme A (je suppose que le groupe par défaut de l'user A est le groupe A )

$ useradd -g AB # This creates a new user B with default group A 

Maintenant, vous devez configurer les bonnes permissions

 $ chmod g+x /home/A # The group member needs execute permission to reach public_html directory $ find /home/A/public_html -type d -exec chmod g+rwx {} \; # This will give all directories under public_html rwx group permissions $ find /home/A/public_html -type d -exec chmod g+rw {} \; # This will give all files under public_html rw group permissions $ sudo -u A -i "umask 002 && echo umask 002 > ~/.bashrc" && sudo -u B -i "umask 002 && echo umask 002 > ~/.bashrc" # This will make sure all future permissions are OK for your purpose 

Sur la base de la configuration ci-dessus, B peut lire et écrire dans le directory public_html. AFAIK, Vaultpress a besoin d'permissions d'écriture afin de restaurer les sauvegardes. Vous pouvez supprimer l'autorisation d'écriture si vous ne prévoyez pas d'utiliser la fonction de restauration automatique de Vaultpress. En plus, tous les files seront modifiables par l'user original A.

Tout file / directory créé par B appartient par défaut au groupe A. Cela permettra de partager la propriété de ces files parmi les users A et B.

Veuillez append un commentaire si vous voulez que je clarifie tout.

Vous voudrez peut-être regarder le sftp avec des environnements chrootés. Fondamentalement, vous auriez deux services ssh fonctionnant sur différents ports.

L'un est spécifiquement uniquement pour sftp (user / mot de passe) chrooté sur un directory particulier que vous configurez, l'autre est pour vos connections ssh normales pour la maintenance du server via l'authentification de la barre de pub.

Regardez ceci: http://www.thegeekstuff.com/2012/03/chroot-sftp-setup/