Ich erlaube einem Freund ein lokales Konto auf meinem Computer, ausschließlich für SCP. Kann ich die Shell seines Kontos als /bin/true
angeben , oder auf andere Weise das Konto einschränken, während SCP weiterhin zugelassen wird?
Akzeptierte Antwort:
Sie können die Shell dieses Benutzers auf rssh
setzen oder scponly
, die genau für diesen Zweck entwickelt wurden:
rssh ist eine eingeschränkte Shell zur Verwendung mit OpenSSH, die nur scp und/oder sftp zulässt. Es enthält jetzt auch Unterstützung für rdist, rsync und cvs.
scponly ist eine alternative „Shell“ (eine Art) für Systemadministratoren, die entfernten Benutzern Zugriff gewähren möchten, um lokale Dateien sowohl zu lesen als auch zu schreiben, ohne irgendwelche Berechtigungen für die entfernte Ausführung bereitzustellen.
Wenn Sie scp ausführen, feuert der OpenSSH-Daemon ein scp
ab Prozess mit dem -f
Möglichkeit. Wenn Sie sftp ausführen, löst der OpenSSH-Daemon einen sftp-server
aus Prozess. In beiden Fällen wird der Unterprozess über die Shell des Benutzers ausgeführt, sodass die Shell mindestens diese Befehle mit einer Bourne-ähnlichen Syntax unterstützen muss. Jede Shell im Bourne-Stil ist geeignet, ebenso wie csh (ich denke, ihre Zitierregeln sind kompatibel genug für das, was sshd
Verwendet). Rssh und scponly erlauben diese Befehle und sonst nichts. /bin/true
würde diese Befehle nicht einmal ausführen.