2012-04-02 6 views
1

Ich muss einem anderen Entwickler SSH Lese-/Schreibzugriff auf den Web-Root und die Crontab auf einer Debian-Box gewähren. Normalerweise bin ich die einzige Person, die sich anmeldet, also benutze ich den Root-Benutzer, um das zu tun. Dieser neue Benutzer ist nicht voll vertrauenswürdig, daher kann ich ihm keinen Root-Zugriff gewähren.Wie gewährt man einen regulären Benutzer Shell-Zugriff auf einen bestimmten Ordner

Bisher habe ich es geschafft, ihn als Benutzer erstellen mit:

useradd -m --shell=/bin/bash newUser 

und ich habe seinen öffentlichen Schlüssel installiert, so dass er über SSH anmelden können.

Jetzt muss ich ihm den Lese-/Schreibzugriff nur auf den Webstamm einer von mehreren Seiten gewähren, die von diesem Server ausgeführt werden. Außerdem muss er in der Lage sein, die Crontab zu bearbeiten.

Was muss ich tun?

UPDATE:

ich tatsächlich gearbeitet (glaube ich), wie es geht.

  1. die newUser Gruppe modifiziert:

    usermod -G mySiteGroup newUser

  2. lesen Added/Schreibberechtigungen rekursiv an den Web-Stammordner

    chmod -R g + rw/var/www/mySite

Dies scheint zu funktionieren. Bitte lassen Sie mich wissen, wenn ich etwas Wichtiges verpasst habe oder etwas nicht richtig gesichert habe. Dank Vielen Dank im Voraus

+0

Wenn Sie das Problem gelöst haben, beantworten Sie bitte Ihre eigene Frage und akzeptieren Sie sie als Antwort. – kapa

Antwort

0

Während keine schrecklich schlechte Einrichtung, hier ist was ich tun würde:

  • eine Gruppe „dev“ erstellen/„Entwickler“
  • beide fügen sich selbst und den neuen Benutzer (Bitte beachten Sie, dass ich dadurch die regelmäßige Nutzung des root-Kontos stark ablehne)
  • chown das Web-root, um es der "Entwickler" -Gruppe
  • dann chmod es rekursiv zu 775/770 (Hier ist Ihre einzige Wahl, als Server-Admin, Fiddl e mit ihm, wie Sie mögen)

Dies sollte es gut tun, jetzt für die crontab, hier ist ein Auszug aus seiner Manpage:

Wenn die /etc/cron.allow Datei vorhanden ist, dann Sie müssen darin aufgeführt sein (ein Benutzer pro Zeile), um diesen Befehl verwenden zu dürfen. Wenn die Datei /etc/cron.allow nicht vorhanden ist, aber die Datei /etc/cron.deny vorhanden ist, dürfen Sie nicht in der Datei /etc/cron.deny aufgeführt sein, um diesen Befehl verwenden zu können.

Wenn die Option -u angegeben wird, gibt sie den Namen des Benutzers an, dessen crontab verwendet werden soll (beim Auflisten) oder ändern (beim Bearbeiten). Wenn diese Option nicht angegeben ist, untersucht Crontab "Ihre" crontab, d. H., die crontab der Person, die den Befehl ausführt. Beachten Sie, dass su (8) crontab verwechseln kann und dass Sie, wenn Sie innerhalb von su (8) laufen, immer die Option -u aus Sicherheitsgründen verwenden sollten.

Durchsuchen Sie die Crontab-Dokumentation, und kehren Sie hier zurück, um die Ergebnisse und weitere Fragen zu teilen.

+0

Hallo, und danke für diese Antwort, ich wurde eine Weile von dieser Aufgabe weggezogen, werde aber richtig reagieren, wenn ich bald darauf zurückkomme, hoffe ich. – Xoundboy