So erstellen Sie nur SFTP -Benutzer in Ubuntu & Debian
- 2101
- 458
- Levke Harnapp
SFTP (SSH -Dateitransferprotokoll) ist ein sicheres Dateiprotokoll, das zum Zugriff auf, verwaltet und überträgt Dateien über eine verschlüsselte SSH -Transportsitzung. Hier bedeutet SFTP nur Benutzer, ein Konto zu erstellen, um nur über SFTP auf den Server zuzugreifen. Dieser Benutzer hat keinen SSH -Shell -Zugriff. Auf diese Weise können Sie einen sicheren Kanal haben, um einen begrenzten Zugriff auf bestimmte Dateien und Verzeichnisse zu ermöglichen.
In diesem Blog-Beitrag wird beschrieben.
Schritt 1- Erstellen eines neuen Benutzer
Erstellen Sie zunächst ein Benutzerkonto in Ihrem System, um sie als SFTP -Benutzer zu verwenden. Der folgende Befehl erstellt ein neues Konto mit dem Namen sftpuser ohne Shell -Zugang. Sie können den Benutzernamen Ihrer Wahl ändern
sudo adduser -Shell /bin /false sftpuser
Der Befehl fordert auf, dass das Passwort für ein neues Konto festgelegt wird.
Schritt 2 - Erstellen Sie ein Verzeichnis für SFTP
Erstellen Sie nun die Verzeichnisstruktur, die vom SFTP -Benutzer zugegriffen werden soll.
sudo mkdir -p/var/sftp/Dateien
Hier können Benutzer nur auf das Verzeichnis "Dateien" zugreifen.
Ändern Sie nun den Besitz des Eigentums an der Dateien
Verzeichnis zum sftpuser
. Damit SFTP -Benutzer nur in diesem Verzeichnis lesen und schreiben können. Es sind keine Dateien außerhalb dieses Verzeichnisses zugänglich.
sudo chown sftpuser: sftpuser/var/sftp/Dateien
Und setzen Sie den Eigentümer und den Gruppenbesitzer der /var/sftp
Wurzeln. Der Root -Benutzer hat auf diesen Zugriff gelesen/schriftlich zugreifen. Gruppenmitglieder und andere Konten haben nur Berechtigungen gelesen und ausgeführt.
sudo chown root: root /var /sftp
sudo chmod 755 /var /sftp
Es wird SFTP -Benutzer daran hindert, Dateien unterzuschreiben /var/sftp
Verzeichnis.
Schritt 3 - Konfigurieren Sie nur SSHD für SFTP
/etc/ssh/sshd_config
ist die Hauptkonfigurationsdatei des OpenSSH -Servers. Achten Sie beim Ändern dieser Konfigurationsdatei vorsichtig, da ein Fehler zu einem Verbindungsverlust führen kann.
Bearbeiten Sie die SSH -Konfigurationsdatei in einem Texteditor:
sudo vim/etc/ssh/sshd_config
Fügen Sie dann die folgenden Einstellungen am Ende der Datei hinzu.
Übereinstimmen User SFTPUSER FORCECOMMAND INTERNEHENSFETPKWITALTP-Kennwortauthentifizierung Ja chrootdirectory /var /sftp Perintunnel Keine Zulassungsabwälzung NEIN AUFGABE
Speichern Sie die Datei und schließen Sie.
Die Richtlinien sind:
- Übereinstimmen Benutzer Definiert den Benutzernamen, auf den die SFTP nur Konfigurationen angewendet haben. In unserem Fall ist es: sftpuser
- ForceCommand Internal-Sftp Erzwingen Sie den SFTP -Zugriff nur auf den Benutzer und beschränken sich für den Shell -Zugriff.
- PasswortAuthentication Ja Ermöglicht die Authentifizierung der Kennwort für den Benutzer.
- Chrootdirectory /var /sftp Beschränken Sie den Benutzer, nur unter diesem Verzeichnis auf Verzeichnisse zuzugreifen. Hier /var /sftp fungiert als Stammverzeichnis des Benutzers.
- Zulassungsnummer Gibt an, ob die Weiterleitung von SSH-Agent zulässig ist. Der Standard ist ja.
- Zulassende Nr Gibt an, ob die TCP -Weiterleitung erlaubt ist. Der Standard ist ja.
- X11foring Nr Angegeben, wo die grafische Anwendung nicht zulässig ist, um nicht
Starten Sie den SSH -Service neu, um neue Einstellungen anzuwenden:
sudo systemctl starten ssh neu
Das ist es. Sie haben die Anweisungen zum Erstellen eines SFTP-Benutzers auf Debian-basierten Systemen erfolgreich abgeschlossen.
Schritt 4 - Sicherheitstipps (Optionen)
Hier sind einige grundlegende, aber wichtige Sicherheitstipps für SFTP -Konten in einer Produktionsumgebung.
- Führen Sie den SSH-Server auf einem nicht standardmäßigen Port aus
- Die Kennwortauthentifizierung nicht zulassen und die Schlüsselauthentifizierung der Schlüsselkonfiguration konfigurieren
- Stellen Sie sicher, dass die Firewall nur auf bestimmte IP -Adressen beschränkt ist
- Und halten Sie das OpenSSH -Paket auf dem neuesten Stand
Abschluss
In diesem Tutorial wird beschrieben, dass Sie nur SFTP-Benutzer im Ubuntu-System erstellen. Es wird deaktiviert Shell -Zugriff, damit dieselben Benutzer nur auf ein bestimmtes Verzeichnis einschränken können.