So richten Sie Rohlinge schnell zum Drechseln her
Inhaltsverzeichnis:
- Erstellen einer SFTP-Gruppe
- Hinzufügen von Benutzern zur SFTP-Gruppe
- SSH konfigurieren
- Testen der Konfiguration
- Fazit
In diesem Tutorial wird erklärt, wie eine SFTP-Chroot-Jail-Umgebung eingerichtet wird, die Benutzer auf ihre Home-Verzeichnisse beschränkt. Die Benutzer haben nur SFTP-Zugriff, der SSH-Zugriff wird deaktiviert. Diese Anweisungen sollten für jede moderne Linux-Distribution funktionieren, einschließlich Ubuntu, CentOS, Debian und Fedora.
Erstellen einer SFTP-Gruppe
Anstatt den OpenSSH-Server für jeden Benutzer einzeln zu konfigurieren, erstellen wir eine neue Gruppe und fügen alle unsere chroot-Benutzer dieser Gruppe hinzu.
Führen Sie den folgenden Befehl
groupadd
, um die Benutzergruppe
groupadd
zu erstellen:
sudo groupadd sftponly
Sie können die Gruppe wie gewünscht benennen.
Hinzufügen von Benutzern zur SFTP-Gruppe
Im nächsten Schritt fügen Sie die Benutzer hinzu, die Sie auf die Gruppe "
sftponly
beschränken
sftponly
.
Wenn dies ein neues Setup ist und der Benutzer nicht existiert, können Sie ein neues Benutzerkonto erstellen, indem Sie Folgendes eingeben:
sudo useradd -g sftponly -s /bin/false -m -d /home/username username
- Mit der Option
-g sftponlywird der Benutzer der Gruppe sftponly hinzugefügt. Mit der Option-s /bin/falsedie Anmeldeshell des Benutzers festgelegt. Wenn Sie die Anmeldeshell auf/bin/falseder Benutzer nicht über SSH am Server anmelden. Die Optionen-m -d /home/usernameweisen useradd an, das Benutzerverzeichnis zu erstellen.
Richten Sie ein sicheres Kennwort für den neu erstellten Benutzer ein:
sudo passwd username
Wenn der Benutzer, den Sie einschränken möchten, bereits vorhanden ist, fügen Sie ihn der Gruppe "
sftponly
" hinzu und ändern Sie die Shell des Benutzers:
sudo usermod -G sftponly -s /bin/false username2
Das Benutzer-Ausgangsverzeichnis muss im Besitz von root sein und über
755
Berechtigungen verfügen:
sudo chown root: /home/username
sudo chmod 755 /home/username
Da die Home-Verzeichnisse des Benutzers dem Root-Benutzer gehören, können diese Benutzer keine Dateien und Verzeichnisse in ihren Home-Verzeichnissen erstellen. Wenn sich keine Verzeichnisse im Haus des Benutzers befinden, müssen Sie neue Verzeichnisse erstellen, auf die der Benutzer uneingeschränkt zugreifen kann. Beispielsweise können Sie die folgenden Verzeichnisse erstellen:
sudo mkdir /home/username/{public_html, uploads}
sudo chmod 755 /home/username/{public_html, uploads}
sudo chown username:sftponly /home/username/{public_html, uploads}
Wenn eine Webanwendung das
public_html
des Benutzers als Dokumentstamm verwendet, können diese Änderungen zu Berechtigungsproblemen führen. Wenn Sie beispielsweise WordPress ausführen, müssen Sie einen PHP-Pool erstellen, der als Benutzer ausgeführt wird, dem die Dateien gehören, und den Webserver der Gruppe sftponly
sftponly
.
SSH konfigurieren
SFTP ist ein Subsystem von SSH und unterstützt alle SSH-Authentifizierungsmechanismen.
Öffnen Sie die SSH-Konfigurationsdatei
/etc/ssh/sshd_config
mit Ihrem Texteditor:
sudo nano /etc/ssh/sshd_config
Suchen Sie nach der Zeile, die mit
Subsystem sftp
beginnt, normalerweise am Ende der Datei. Wenn die Zeile mit einem Hash
#
beginnt, entfernen Sie das Hash
#
und ändern Sie es so, dass es wie folgt aussieht:
Subsystem sftp internal-sftp
Gegen Ende der Datei wird der folgende Einstellungsblock angezeigt:
Match Group sftponly ChrootDirectory %h ForceCommand internal-sftp AllowTcpForwarding no X11Forwarding no
Die
ChrootDirectory
Direktive gibt den Pfad zum chroot-Verzeichnis an.
%h
bedeutet das Ausgangsverzeichnis des Benutzers. Dieses Verzeichnis muss dem Root-Benutzer gehören und darf von keinem anderen Benutzer oder keiner anderen Gruppe beschreibbar sein.
Seien Sie besonders vorsichtig, wenn Sie die SSH-Konfigurationsdatei ändern. Die falsche Konfiguration kann dazu führen, dass der SSH-Dienst nicht gestartet werden kann.
Sobald Sie fertig sind, speichern Sie die Datei und starten Sie den SSH-Dienst neu, um die Änderungen zu übernehmen:
sudo systemctl restart ssh
In CentOS und Fedora heißt der ssh-Dienst
sshd
:
Testen der Konfiguration
Nachdem Sie die SFTP-Chroot konfiguriert haben, können Sie versuchen, sich mit den Anmeldeinformationen des Chroot-Benutzers über SFTP am Remotecomputer anzumelden. In den meisten Fällen verwenden Sie einen Desktop-SFTP-Client wie FileZilla. In diesem Beispiel wird jedoch der Befehl sftp verwendet.
Öffnen Sie eine SFTP-Verbindung mit dem Befehl sftp, gefolgt vom Benutzernamen des Remoteservers und der Server-IP-Adresse oder dem Domänennamen:
sftp [email protected]
Sie werden aufgefordert, das Benutzerpasswort einzugeben. Sobald die Verbindung hergestellt ist, zeigt der Remote-Server eine Bestätigungsmeldung und die Eingabeaufforderung
sftp>
:
[email protected]'s password: sftp>
Führen Sie den Befehl
pwd
wie unten gezeigt aus. Wenn alles wie erwartet funktioniert, sollte der Befehl
/
.
sftp> pwd Remote working directory: /
Sie können die entfernten Dateien und Verzeichnisse auch mit dem Befehl
ls
auflisten und die zuvor erstellten Verzeichnisse anzeigen:
Fazit
In diesem Lernprogramm haben Sie gelernt, wie Sie eine SFTP-Chroot-Jail-Umgebung auf Ihrem Linux-Server einrichten und den Benutzerzugriff auf das Basisverzeichnis einschränken.
Standardmäßig überwacht SSH Port 22. Durch Ändern des Standard-SSH-Ports wird Ihrem Server eine zusätzliche Sicherheitsebene hinzugefügt, indem das Risiko automatisierter Angriffe verringert wird. Möglicherweise möchten Sie auch eine SSH-Schlüssel-basierte Authentifizierung einrichten und eine Verbindung zum Server herstellen, ohne ein Kennwort einzugeben.
SSH SFTP-SicherheitSo richten Sie ein erfolgreiches Google AdSense-Konto ein
Google hat eine Checkliste zur Einrichtung und Ausführung eines Erfolgreiches AdSense-Konto.
So richten Sie ein Microsoft Teams-Meeting ein und treten einem
Bei Es ist ziemlich einfach, Meetings in Microsoft Teams zu planen. Der Beitrag führt Sie durch die Schritte zum Einrichten und Beitreten zu einem Meeting bei Verwendung von Microsoft Teams.
Richten Sie Ihre Smart-Home-Szenen in ios 10 ein und steuern Sie sie
Mit Ihrem iPhone können Sie alle Geräte Ihres Hauses steuern! Das ist der Traum, aber in der Zwischenzeit erfahren Sie hier, wie Sie Heimszenen in iOS 10 steuern.







