Neuen SSH-Benutzer anlegen und ihm Zugriffsberechtigung für ein bestehendes Verzeichnis erteilen

Neuen SSH-Benutzer anlegen und ihm Zugriffsberechtigung für ein bestehendes Verzeichnis erteilen

Ich versuche, einen neuen Benutzer namensschwedischund erteilen Sie ihm die Berechtigung, sich über SFTP nur mit bestehenden Verzeichnissen und tieferen Verzeichnissen (/usr/share/nginx/itsupply) zu verbinden. Derzeit gehört das Verzeichnis nginx in der Gruppe nginx. Wie kann ich einem neuen Benutzer Zugriff auf dieses Verzeichnis gewähren (ohne den Zugriff auf dieses Verzeichnis für nginx zu deaktivieren)? Ich habe versucht, den neu erstellten Benutzer zur Gruppe nginx hinzuzufügen, aber wenn ich versuche, mich mit Anmeldeinformationen zu verbinden, werde ich immer noch aufgefordert, ein Passwort einzugeben (ich vermute, der Benutzer hat immer noch keine Berechtigung für sein Home-Verzeichnis).

Verwenden von

cat /etc/passwd | grep svecias

gibt mir dieses Ergebnis:

svecias:x:1001:995::/usr/share/nginx/itsupply:/usr/sbin/nologin

Daher ist für diesen Benutzer das Home-Verzeichnis nach Bedarf eingestellt.

bevor ich es tat

usermod -a -G nginx svecias
usermod -g nginx svecias

Ergebnis war:

svecias:x:1001:1001::/usr/share/nginx/itsupply:/usr/sbin/nologin

Antwort1

Entsprechenddiese Antwort /usr/sbin/nologinwird dazu führen, dass sich Ihr Benutzer nicht über SSH anmelden kann.

Wenn der Benutzer zur nginxGruppe hinzugefügt wird, erhält er außerdem Zugriff auf alle Ordner, auf die diese Gruppe Zugriff hat, nicht nur auf /usr/share/nginx/itsupply. Darüber hinaus gehören von diesem Benutzer erstellte Dateien svecias:nginx. Das ist wahrscheinlich in Ordnung, kann aber manchmal Probleme verursachen.

Auf meinem Server habe ich die Lösung verwendet, indem ich den jeweiligen Ordner eingebunden bindfsund die Benutzer zugeordnet habe. Das ist bei mir fstab:

/home/www /home/wwwbind fuse.bindfs map=www-data/cpd:@www-data/@cpd,create-with-perms=0770 0 0

Auf diese Weise melde ich mich als cpdBenutzer an, der nur auf Zugriff hat /home/wwwbind. Alle Änderungen werden so angezeigt, /home/wwwals ob www-datasie vom Benutzer vorgenommen worden wären.

verwandte Informationen