GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Erstellen Sie ein Chroot-Gefängnis

Dieser Artikel beschreibt, wie man ein Chroot-Gefängnis konfiguriert, indem man sowohl Debian®- als auch RPM Package Manager (RPM)-basierte Distributionen verwendet.

Diese Anweisungen erstellen das Chroot-Gefängnis unter Verwendung der folgenden Beispielgruppen und Benutzernamen:

  • Gruppe:sftponly

  • Benutzer:ftpuploader

Erstellen Sie eine Gruppe für inhaftierte Benutzer

Verwenden Sie die folgenden Anweisungen, um eine Gruppe für inhaftierte Benutzer zu erstellen:

  1. Erstellen Sie die Jailed-Gruppe mit dem folgenden Befehl:

    groupadd sftponly
    

    Hinweis: Diese Gruppe wird verwendet, um Benutzer auf ihr Home-Verzeichnis zu beschränken oder einzusperren.

  2. Öffnen Sie /etc/ssh/sshd_config in einem Texteditor und bearbeiten Sie die Datei mit den folgenden Schritten:

    1. Kommentieren Sie die folgende Zeile aus, indem Sie ein Nummernzeichen setzen (# ) vor der Zeile:

      Vorher:

      Subsystem       sftp    /usr/libexec/openssh/sftp-server
      

      Nachher:

      #Subsystem       sftp    /usr/libexec/openssh/sftp-server
      
    2. Fügen Sie am Ende der Konfigurationsdatei die folgenden Zeilen hinzu:

      Subsystem     sftp   internal-sftp
      
      Match Group sftponly
      
         ChrootDirectory %h
      
         X11Forwarding no
      
         AllowTCPForwarding no
      
         ForceCommand internal-sftp`
      
  3. Überprüfen Sie, ob die Syntax in der neuen Konfiguration korrekt ist, und laden Sie sshd neu indem Sie die folgenden Befehle verwenden:

    sshd –t
    service sshd reload
    

Erstellen Sie einen Secure File Transfer Protocol-Benutzer

Führen Sie die folgenden Schritte aus, um einen Benutzer für das Secure File Transfer Protocol (SFTP) zu erstellen:

  1. Erstellen Sie mit dem folgenden Befehl ein Home-Verzeichnis für den SFTP-Benutzer:

    mkdir -p /home/chroot/ftpuploader/public

  2. Erstellen Sie einen neuen Benutzer mit einem Home-Verzeichnis, das keinen Shell-Zugriff hat, und fügen Sie ihn der Gruppe sftponly hinzu indem Sie den folgenden Befehl verwenden:

    useradd -d /home/chroot/ftpuploader -s /sbin/nologin -G sftponly ftpuploader

  3. Wenn Sie bereits einen SFTP-Benutzer erstellt haben, müssen Sie den Shell-Zugriff des Benutzers auf /sbin/nologin setzen und fügen Sie sie der Gruppe sftponly hinzu indem Sie den folgenden Befehl verwenden:

    usermod -s /sbin/nologin -G sftponly ftpuploader

  4. Legen Sie nun ein neues Passwort für den SFTP-Benutzer fest, indem Sie den folgenden Befehl verwenden:

    Passwd ftpuploader

  5. Ändern Sie die Berechtigungen und den Besitz des Home-Verzeichnisses mithilfe von RPM- und Debian-basierten Distributionen wie im folgenden Code gezeigt:

    chown root:root /home/chroot/ftpuploader/
    chown ftpuploader:sftponly /home/chroot/ftpuploader/public
    chmod 711 /home/chroot/
    chmod 755 /home/chroot/ftpuploader/
    chmod 755 /home/chroot/ftpuploader/public
    

Hinweis: In den vorhergehenden Befehlen ist die Gruppe sftponly ob der Benutzer Teil des sftponly sein wird Gruppe.


Linux
  1. Warum wird empfohlen, für einige Anwendungen eine Gruppe und einen Benutzer zu erstellen?

  2. Chroot Jail verstehen

  3. CentOS / RHEL:So richten Sie SFTP für Chroot Jail nur für bestimmte Gruppen ein

  4. CentOS / RHEL :So richten Sie das Chroot-Gefängnis SFTP ein

  5. So führen Sie DNS- und FTP-Dienste in einem Chroot-Gefängnis aus

Was ist ein Chroot-Gefängnis und wie wird es verwendet?

So erstellen Sie Gruppen unter Linux (Befehl groupadd)

So erstellen Sie eine Website mit Hugo unter Debian 11

So erstellen Sie eine Volumengruppe in Linux mit LVM

Erstellen Sie neue Gruppen in Linux mit dem Groupadd-Befehl

So erstellen Sie eine Gruppe unter Linux – Befehl groupadd