it-swarm.com.de

Erstellen Sie einen SFTP-Benutzer, um nur auf ein Verzeichnis zuzugreifen.

Ich muss einen Benutzer erstellen, der nur SFTP für ein bestimmtes Verzeichnis ausführen kann, und eine Kopie einiger Informationen erstellen. das ist es. Ich schaue immer online und sie rufen Informationen über Chroot und das Ändern der sshd_config auf.

Soweit kann ich nur

  • füge den Benutzer "useradd sftpexport" hinzu
  • erstelle es ohne ein Homeverzeichnis "-M"
  • setzt seinen Login-Speicherort auf "-d/u02/export/cdrs" (wo die Informationen gespeichert sind)
  • erlaube es nicht, ssh "-s/bin/false" zu benutzen

useradd sftpexport -M -d/u02/export/cdrs -s/bin/false

Kann jemand vorschlagen, was bearbeitet werden soll, damit sich der Benutzer nur anmelden und die Datei kopieren kann?

Ich ziehe es vor, eine Benutzergruppe sftp zu erstellen und Benutzer in dieser Gruppe auf ihr Ausgangsverzeichnis zu beschränken.

Bearbeiten Sie zuerst Ihre /etc/ssh/sshd_config - Datei und fügen Sie diese unten hinzu.

Match Group sftp
    ChrootDirectory %h
    ForceCommand internal-sftp
    AllowTcpForwarding no  

Dies teilt OpenSSH mit, dass alle Benutzer in der sftp-Gruppe in ihr Ausgangsverzeichnis geleitet werden sollen (das %h Im ChrootDirectory-Befehl darstellt).

Fügen Sie eine neue SFTP-Gruppe hinzu, fügen Sie Ihren Benutzer der Gruppe hinzu, schränken Sie den SSH-Zugriff ein und definieren Sie sein Home-Verzeichnis.

groupadd sftp
usermod username -g sftp
usermod username -s /bin/false
usermod username -d /home/username

Starten Sie ssh neu:

Sudo service ssh restart

Wenn weiterhin Probleme auftreten, überprüfen Sie, ob die Verzeichnisberechtigungen für das Basisverzeichnis korrekt sind. Passen Sie den 755-Wert entsprechend Ihrem Setup an.

Sudo chmod 755 /home/username

BEARBEITEN: Anhand der Details Ihrer Frage sieht es so aus, als ob Ihnen nur der Abschnitt sshd_config fehlt. Ersetzen Sie in Ihrem Fall sftp durch sftpexport. Stellen Sie außerdem sicher, dass die Dateiberechtigungen im Verzeichnis /u02/export/cdrs Verfügbar sind.

Ein noch besseres Setup (und es gibt noch bessere Setups als das, was ich jetzt vorschlage) besteht darin, das Verzeichnis /u02/export/cdrs Mit dem Home-Verzeichnis des Benutzers zu verknüpfen.

29
csi

Möglicherweise müssen Sie eine eingeschränkte Shell hinzufügen, damit dieser Benutzer einige Dateien dort ablegen kann. Sie können dafür das Tool rssh verwenden.

usermod -s /usr/bin/rssh sftpexport

Aktiviere erlaubte Protokolle in config /etc/rssh.conf.

2
user3132194