Ich möchte einem Support-Mitarbeiter vorübergehend SFTP-Zugriff gewähren. Wie erstelle ich einen SFTP-Benutzer? Und wie kann ich es löschen, wenn die Arbeit erledigt ist?
Wie gebe ich ein Home-Verzeichnis für sie an? Kann ich verhindern, dass sie auf bestimmte Unterverzeichnisse in ihrem Ausgangsverzeichnis zugreifen?
Wir verwenden CentOS 6.3 und fzSftp
Antworten:
Nicht-Chroot-Zugang
Wenn Sie kein FTP-Server-Setup haben und dem Benutzer, der sich anmeldet, vertrauen, dass er nicht zu viel auf Ihrem Server herumstochert, würde ich ihm stattdessen ein Konto für SFTP im System zuweisen.
Das CentOS-Wiki enthält ein einfaches Howto mit dem Titel: Einfaches SFTP-Setup , das dies ziemlich schmerzfrei macht.
Ich sage, es ist schmerzfrei, weil Sie buchstäblich nur das Konto erstellen und sicherstellen müssen, dass die Firewall SSH-Verkehr zulässt, sicherstellen, dass SSH der Dienst ausgeführt wird, und Sie ziemlich fertig sind.
Wenn
sshd
es noch nicht läuft:So fügen Sie einen Benutzer hinzu:
Wenn Sie mit dem Konto fertig sind:
Chroot-Zugang
Wenn Sie diesen Benutzer andererseits auf ein bestimmtes Verzeichnis beschränken möchten, bietet der in SSH (openssh) enthaltene SFTP-Server eine Konfiguration, mit der dies ebenfalls einfach aktiviert werden kann. Es ist ein bisschen mehr Arbeit, aber nicht zu viel. Die Schritte werden hier in diesem Tutorial mit dem Titel behandelt: Einrichten von Chroot SFTP unter Linux (Nur SFTP zulassen, nicht SSH) .
Nehmen Sie diese Änderungen an Ihrer
/etc/ssh/sshd_config
Datei vor.Jetzt müssen Sie den chrootierten Verzeichnisbaum erstellen, in den dieser Benutzer gesperrt wird.
Berechtigungen sollten wie folgt aussehen:
Die Verzeichnisse der obersten Ebene sehen folgendermaßen aus:
Vergessen Sie nicht, den
sshd
Server neu zu starten :Erstellen Sie nun das userX-Konto:
Sie können überprüfen, ob das Konto korrekt erstellt wurde:
Wenn Sie mit dem Konto fertig sind, löschen Sie es wie folgt:
... und vergessen Sie nicht, die oben vorgenommenen Änderungen an der Konfigurationsdatei zu entfernen und dann neu
sshd
zu starten , um sie wieder zu aktivieren.quelle
/home/...
wer wirklich ein Benutzer auf einem System ist. Obwohl ich einen tatsächlichen SFTP-Server für die Arbeit betreibe, sind meine Anforderungen etwas anders.useradd userX
. Entschuldigung, ich habe die Manpage für falsch gelesenuseradd
.