So beschränken Sie SFTP -Benutzer mithilfe von Chroot -Gefängnis auf Home -Verzeichnisse
- 2260
- 479
- Tom Jakobs
In diesem Tutorial werden wir diskutieren, wie wir einschränken können Sftp Benutzer in ihren Heimverzeichnissen oder spezifischen Verzeichnissen. Dies bedeutet, dass der Benutzer nur auf sein jeweiles Heimverzeichnis zugreifen kann, nicht auf das gesamte Dateisystem.
Die Einschränkung von Benutzern Home -Verzeichnissen ist insbesondere in einer gemeinsamen Serverumgebung von entscheidender.
Wichtig: Bitte beachten Sie auch, dass der Zweck dieses Artikels darin besteht, nur SFTP -Zugriff und nicht die SSH -Anmeldungen zu gewähren, indem Sie diesen Artikel befolgen.
Vorgeschlagene Lesen: Beschränken Sie den Zugriff auf den SSH -Benutzer auf ein bestimmt
Der einfachste Weg, dies zu tun. Diese Methode ist für alle UNIX/Linux -Betriebssysteme gleich. Mithilfe von Choted -Umgebung können wir Benutzer entweder auf ihr Heimverzeichnis oder auf ein bestimmtes Verzeichnis beschränken.
Beschränken Sie Benutzer auf Home -Verzeichnisse
In diesem Abschnitt werden wir eine neue Gruppe namens erstellen sftpGroup und ordnen Sie den Benutzerkonten den richtigen Eigentum und Berechtigungen zu. Es gibt zwei Möglichkeiten, die Benutzer auf heimische oder bestimmte Verzeichnisse einzuschränken. In diesem Artikel werden wir in beide Richtungen sehen.
Benutzer und Gruppen erstellen oder ändern
Lassen Sie uns beispielsweise den vorhandenen Benutzer einschränken Tecmint
, zu seinem/ihr Heimverzeichnis benannt /home/tecmint
. Dafür müssen Sie eine neue erstellen sftpGroup Gruppe verwendet GroupAdd Befehl wie gezeigt:
# GroupAdd SftpGroup
Als nächstes zuweisen Sie dem Benutzer "Tecmint" Zu sftpGroup Gruppe.
# Usermod -g SftpGroup Tecmint
Sie können beispielsweise einen neuen Benutzer mit dem Befehl UserAdd erstellen Senthil
und zuweisen dem Benutzer zu sftpusers Gruppe.
# Adduser Senthil -g SftpGroup -s /sbin /nologin # Passwd Tecmint
Ändern Sie die SSH -Konfigurationsdatei
Öffnen Sie und fügen Sie die folgenden Zeilen hinzu zu /etc/ssh/sshd_config
Konfigurationsdatei.
Subsystem SFTP Internal-SFTP-Spielgruppe SFTPGroup ChrootDirectory /Home ForceCommand Internal-SFTP X11foring NO ADGETCPFORDARDING NO
Speichern und beenden Sie die Datei, starten Sie den SSHD -Dienst neu, um neue Änderungen in Kraft zu setzen.
# SystemCTL Neustart SSHD oder # Service SSHD Neustart
Wenn Sie mehrere Benutzer in das gleiche Verzeichnis chrootieren, sollten Sie die Berechtigungen des Heimverzeichnisses jedes Benutzers ändern, um zu verhindern, dass alle Benutzer die Heimverzeichnisse der gegenseitigen Benutzer durchsuchen.
# Chmod 700 /Home /Tecmint
Überprüfen Sie, ob sich die SSH- und SFTP -Benutzer anmelden
Jetzt ist es an der Zeit, die Anmeldung von einem lokalen System zu überprüfen. Versuchen Sie, Ihr Remote -System von Ihrem lokalen System aus zu ssh SSH.
# SSH [E -Mail geschützt]
Hier,
- Tecmint - Benutzername des Remote -Systems.
- 192.168.1.150 - IP -Adresse des Remote -Systems.
Beispielausgabe:
[E -Mail -Protected] -Kennwort: Es konnte nicht zu Home Directory /Home /Tecmint Chdir führen: Keine solche Datei oder Verzeichnis Dieser Dienst erlaubt nur SFTP -Verbindungen. Verbindung zu 192.168.1.150 geschlossen.
Greifen Sie dann mit SFTP ein Remote -System zu.
# SFTP [E -Mail geschützt]
Beispielausgabe:
[E -Mail geschützt] Passwort: Angeschlossen mit 192.168.1.150. sftp>
Lassen Sie uns das aktuelle Arbeitsverzeichnis überprüfen:
SFTP & GT PWD Fernarbeitsverzeichnis: / sftp & gt ls Tecmint
Hier, Tecmint
ist das Heimverzeichnis. CD zum Tecmint Verzeichnis und erstellen Sie die Dateien oder Ordner Ihrer Wahl.
SFTP & GT CD Tecmint Fernarbeitsverzeichnis: / SFTP & GT MKDIR -Test Tecmint
Beschränken Sie Benutzer auf ein bestimmtes Verzeichnis
In unserem vorherigen Beispiel beschränken wir die vorhandenen Benutzer auf das Heimverzeichnis. Jetzt werden wir sehen, wie Sie einen neuen Benutzer auf ein benutzerdefiniertes Verzeichnis beschränken können.
Erstellen Sie Gruppen- und neue Benutzer
Erstellen Sie eine neue Gruppe sftpGroup
.
# GroupAdd SftpGroup
Erstellen Sie als Nächst.
# MKDIR -P/SFTPUSERS/CHROOT # CHOWN Wurzel: root/sftpusers/chroot/
Erstellen Sie als nächstes neue Verzeichnisse für jeden Benutzer, auf den er vollen Zugriff hat. Zum Beispiel werden wir erstellen Tecmint
Benutzer und es ist ein neues Heimverzeichnis mit der korrekten Gruppenberechtigung mit den folgenden Befehlserien.
# adduser tecmint -g sftpgroup -s /sbin/nologin # passwd tecmint # mkdir /sftpusers/chroot/tecmint # chown tecmint:sftpgroup /sftpusers/chroot/tecmint/ # chmod 700 /sftpusers/chroot/tecmint/
Konfigurieren Sie SSH für SFTP -Zugriff
Ändern oder fügen Sie die folgenden Zeilen am Ende der Datei zu oder fügen Sie hinzu:
#Subsystem SFTP/usr/libexec/openSSH/SFTP-SERVERVERVERSUBSYSTEM SFTP INTERSFAHRE STATPGSGRUPPE
Speichern und beenden Sie die Datei. Starten Sie den SSHD -Service neu, um die gespeicherten Änderungen in Kraft zu setzen.
# SystemCTL Neustart SSHD oder # Service SSHD Neustart
Das war es, indem Sie sich anmelden, indem Sie sich auf dem Remote SSH- und SFTP -Server anmelden.
Achten Sie darauf, dass diese Methode den Shell -Zugriff deaktiviert, ich.E Sie können mit SSH nicht auf die Shell -Sitzung des Remote -Systems zugreifen. Sie können nur über SFTP auf die Remote -Systeme zugreifen und die Dateiübertragung von und von den lokalen und entfernten Systemen durchführen.
Abschluss
Jetzt wissen Sie, wie Sie Benutzer mithilfe einer Chroot -Umgebung unter Linux die Home -Verzeichnisse einschränken können. Wenn Sie dies nützlich finden, teilen Sie diesen Artikel in Ihren sozialen Netzwerken und informieren Sie uns im Kommentarbereich unten, ob andere Methoden zur Einschränkung der Benutzer Home -Verzeichnisse vorhanden sind.
- « So installieren Sie die neueste Magento CMS in Ubuntu und Debian
- 3 Möglichkeiten zur Auflistung aller installierten Pakete in Rhel, CentOS und Fedora »