Tutorials - OpenSSH mit SFTP und Chroot
Sprachenübersicht/Betriebssysteme/Linux/Internet & Netzwerk
OpenSSH mit SFTP und Chroot
Diese Seite wurde 16944 mal aufgerufen.
Dieser Artikel wurde in einem Wikiweb System geschrieben, das heißt, Sie können die Artikel jederzeit editieren, wenn Sie einen Fehler gefunden haben, oder etwas hinzufügen wollen.
Editieren Versionen Linkpartnerschaft Bottom Printversion
Keywords: openssh sftp chroot howto tutorial
Inhaltsverzeichnis
OpenSSH unterstützt seit Version 5 nun Chroot, was bisher nur über spezielle Patches möglich war. Standardmäßig war Chroot bei Datei-Uploads bisher nur über FTP-Daemons möglich.
Ein Chroot dient in diesem Falle dazu, einen Benutzer in seinem Home-Verzeichnis einzusperren. Dies ist zwar kein Allzweckmittel für Sicherheit, erhöht jedoch die Hürde um ein gutes Stück.
Zunächst legen wir auf unserem System eine Gruppe namens sftponly an, welcher wir dann jene Nutzer zuordnen, die nur über SFTP Daten an den Server senden können sollen.
Code:
groupadd sftponly
useradd webuser1
usermod -aG sftponly webuser1
Mit dem usermod-Befehl können wir einen beliebigen User zur Gruppe hinzufügen.
Als nächstes müssen wir die SSH-Konfiguration anpassen. Dazu deaktivieren wir den standardmäßigen Eintrag für den sftp-Dienst und ersetzen ihn mit internal-sftp.
Der restliche Teil sorgt dafür, dass Benutzer, welcher der Gruppe sftponly angehören, nur sftp nutzen dürfen.
/etc/ssh/sshd_config:
[..]
Subsystem sftp internal-sftp
#Subsystem sftp /usr/lib64/misc/sftp-server
Match Group sftponly
ChrootDirectory /home/%u
ForceCommand internal-sftp
X11Forwarding no
AllowTcpForwarding no
Eine Einschränkung bringt jedoch die Chroot-Konfiguration mit sich - die Benutzer dürfen nicht mehr direkt in ihr Home-Verzeichnis schreiben.
Code:
chown root:sftponly /home/webuser1
chmod 750 /home/webuser1
mkdir /home/webuser1/public_html
chown webuser1: /home/webuser1/public_html
Dieses Problem ist jedoch nicht sehr relevant, da die für die Benutzer (und den Webserver) wichtigen Daten sowieso meist nach ~/public_html gespeichert werden.
Gibt es noch irgendwelche Fragen, oder wollen Sie über den Artikel diskutieren?
Editieren Versionen Linkpartnerschaft Top Printversion
Haben Sie einen Fehler gefunden? Dann klicken Sie doch auf Editieren, und beheben den Fehler, keine Angst, Sie können nichts zerstören, das Tutorial kann wiederhergestellt werden
Sprachenübersicht/Betriebssysteme/Linux/Internet & Netzwerk/OpenSSH mit SFTP und Chroot