PowerScale OneFS: Konfigurieren von SFTP und Einrichten von chroot

Zusammenfassung: In diesem Dokument wird beschrieben, wie Sie den Zugriff auf den PowerScale-Cluster über das Secure File Transfer Protocol (SFTP) zulassen.

Dieser Artikel gilt für Dieser Artikel gilt nicht für Dieser Artikel ist nicht an ein bestimmtes Produkt gebunden. In diesem Artikel werden nicht alle Produktversionen aufgeführt.

Weisungen

In diesem Dokument wird beschrieben, wie Sie den Zugriff auf den PowerScale-Cluster über SFTP zulassen. Es gibt einige Einschränkungen und Überlegungen, die Sie zu Beginn dieses Prozesses beachten sollten.

  • Nutzer/Gruppen, die SFTP-Zugriff benötigen, müssen über die ISI_PRIV_LOGIN_SSH Berechtigung, die mit dem Nutzer verknüpft ist.
  • SSH- und SFTP-Zugriff funktioniert nur innerhalb der Systemzone.
  • Nicht alle SSH-Konfigurationsoptionen sind verfügbar. PowerScale unterstützt Match- und Subsystem-Anweisungen über die isi ssh modify Befehlssatz.

Abgesehen von diesen Faktoren funktioniert PowerScale wie jeder andere FreeBSD OpenSSH-Server. Überprüfen Sie die OpenSSH-Version auf einem Cluster mithilfe des folgenden Befehls: ssh -V.

Anleitungen zum Einrichten von Rollen und Berechtigungen finden Sie in den Handbüchern zur Befehlszeilenschnittstelle oder Webadministration für Ihre Version im Abschnitt "Administrative Rollen und Berechtigungen".

Überprüfen, ob ein Nutzer/eine Gruppe ISI_PRIV_LOGIN_SSH

Stellen Sie sicher, dass der betreffende Nutzer ISI_PRIV_LOGIN_SSH. Unten sehen Sie ein Beispiel mit dem Standard-Admin-Nutzer.

p930-1# isi auth mapping token admin | grep "LOGIN_SSH"
            ISI_PRIV_LOGIN_SSH

Wenn keine Ausgabe vorhanden ist, muss der Nutzer einer Rolle zugewiesen werden, die diese Berechtigung enthält. Weitere Informationen dazu finden Sie in unseren Administrationshandbüchern für die jeweilige Version unter "Administrative Rollen und Berechtigungen".

Grundlegender SFTP-Zugriff für lokale Nutzer

Nach Überprüfung der korrekten Berechtigungen sollten Nutzer basierend auf ihrem Nutzerzuordnungstoken SFTP-Zugriff auf Teile des Dateisystems haben.

p930-1# sftp admin@localhost
(admin@localhost) Password:
Connected to localhost.
sftp> dir
sftp> cd ..
sftp> dir
admin  ftp

Grundlegender Chroot-SFTP-Zugriff

Um einen Nutzer auf eine bestimmte Teilmenge des Dateisystems zu beschränken, verwenden Sie OpenSSH's ChrootDirectory Funktionalität innerhalb einer Match-Anweisung. Dies führt dazu, dass der Client seinen Anmeldepfad als / und sorgt dafür, dass sie diese Teilmenge des Dateisystems nicht verlassen können. ChrootDirectory hat jedoch strenge Anforderungen an die Verzeichnisberechtigung auf dem gesamten Pfad zum ChrootDirectory dass jedes Verzeichnis im Pfad Posix-Berechtigungen von root:wheel drwxr-xr-x Weitere Details dazu finden Sie auf der OpenSSH-Handbuchseite für Betreuer.

Hier ist eine allgemeine Match-Anweisung für die Implementierung ChrootDirectory. Die ersten beiden Zeilen sind erforderlich für ChrootDirectory ohne unterstützende Dateien. Die zweiten beiden Zeilen schränken die Möglichkeiten des Nutzers ein, die TCPForwarding von X11Forwarding-Funktionen innerhalb von OpenSSH.

Match Group admin
ChrootDirectory /ifs/sftp
ForceCommand internal-sftp"
X11Forwarding no

Im Folgenden finden Sie ein einfaches Beispiel für die Vorbereitung eines Pfades für chroot, wenn beliebige übereinstimmende Benutzer in die /ifs/sftp/home . root:wheel Besitzt die Verzeichnisse /ifs und /ifs/sftpmit auf 755 festgelegten Berechtigungen für ChrootDirectory Während /ifs/sftp/home Verfügt über Berechtigungen von 777 und ermöglicht den Schreibzugriff von Nutzern.

p930-1# isi auth settings acls modify --calcmode-group=group_only --calcmode-owner=owner_only
p930-1# mkdir -p /ifs/sftp/home
p930-1# chmod 755 /ifs/
p930-1# chmod 755 /ifs/sftp
p930-1# chmod 777 /ifs/sftp/home
p930-1# isi ssh settings modify --match="Match Group admin
dquote>     ChrootDirectory /ifs/sftp
dquote>     ForceCommand internal-sftp"
p930-1# sftp admin@localhost
(admin@localhost) Password:
Connected to localhost.
sftp> ls
home
sftp> pwd
Remote working directory: /

Konfigurieren mehrerer Übereinstimmungszeichenfolgen

Es ist einfacher, mehrere Übereinstimmungen in einer Datei zu verwalten und sie dann an unsere isi ssh verwendet werden. Die Verwendung dieses Prozesses stellt sicher, dass sshd Validiert die Datei und wendet die Änderung nur an, wenn sie gültig ist.

Im Folgenden finden Sie Beispiele für Erfolg und Misserfolg.

p930-1# cat /ifs/sshMatches
Match Group admin
ChrootDirectory /ifs/sftp
ForceCommand internal-sftp
X11Forwarding no
Match All
X11Forwarding no
p930-1# sshd -t -f /ifs/sshMatches && isi ssh settings modify --match="$(cat /ifs/sshMatches)"
p930-1# sshd -t -f /ifs/sshMatchBad && isi ssh settings modify --match="$(cat /ifs/sshMatchBad)"
Missing Match criteria for Allk
/ifs/sshMatchBad line 6: Bad Match condition

Überlegungen zur Übereinstimmung von Zeichenfolgen.

Beim Einrichten von Übereinstimmungszeichenfolgen kann jede dem Cluster bekannte Nutzer- oder Gruppenkennung verwendet werden. Das Verweisen auf Active Directory-Gruppen kann also mit RFC2307 erfolgen, indem domain\user.

Wenn ein Nutzer nicht auf den richtigen Pfad oder die richtigen Einstellungen in einer Zeichenfolge für "Match User" weiterleitet, überprüfen Sie, ob der Nutzer mit dem folgenden Befehl im Cluster gesucht werden kann: isi auth mapping token <username> den Nutzernamen von Ihrer Übereinstimmungszeichenfolge übernehmen.

Wenn ein Nutzer nicht auf den richtigen Pfad oder die richtigen Einstellungen in einer Übereinstimmungsgruppenzeichenfolge weiterleitet, überprüfen Sie mit dem Befehl, ob der Nutzer Mitglied der betreffenden Gruppe ist isi auth mapping token <username> | grep <groupname>aus.

Geben Sie einen Nutzernamen ein und übernehmen Sie den Gruppennamen aus der Übereinstimmungszeichenfolge.

Im Folgenden finden Sie ein Beispiel für einen Benutzer, der aufgrund eines Fehlers in der Anweisung "Match Group" nicht korrekt an einen Pfad weiterleitet. Nutzer stateroot funktioniert nicht ordnungsgemäß, während der Nutzer prodroot ist, korrigieren Sie den Fehler im Gruppennamen, der in der Anweisung Match Group verwendet wird, um dies zu beheben.

p930-1# isi auth mapping token stageroot | grep "LOGIN_SSH"
            ISI_PRIV_LOGIN_SSH
p930-1# isi auth mapping token prodroot | grep "LOGIN_SSH"
            ISI_PRIV_LOGIN_SSH
p930-1# cat /ifs/sshMatches
Match Group Stage-Root-SFTP
ChrootDirectory /ifs/home/Stage-Root
X11Forwarding no
ForceCommand internal-sftp
Match Group Prod-Root
ChrootDirectory /ifs/home/Prod-Root
X11Forwarding no
ForceCommand internal-sftp
p930-1# isi auth mapping token stageroot | grep "Stage-Root-SFTP"
p930-1# isi auth mapping token prodroot | grep "Prod-Root"
          Name: Prod-Root
p930-1# isi auth mapping token stageroot | grep "Stage-Root"
          Name: Stage-Root

Legacy-Konfigurationen

Vor OneFS 8.2 war diese Funktionalität möglich, aber die isi ssh Command noch nicht vorhanden war. Anstatt isi ssh settings modify --match="" Bearbeiten der Datei /etc/mcp/templates/sshd_config mit den gleichen Match Strings, die in den obigen Schritten verwendet würden. Fügen Sie sie am Ende von hinzu /etc/mcp/templates/sshd_config.

Die Anweisungen sollten für OneFS-Versionen vor OneFS 8.2 funktionieren, aber alle Konfigurationsanpassungen, die auf diese Weise vorgenommen werden, werden nach dem Upgrade auf eine OneFS-Version mit API-Unterstützung (Application Programming Interface) entfernt. Nutzer, die SFTP-Zugriff verwenden, benötigen nach wie vor die ISI_PRIV_LOGIN_SSH Privileg.

Artikeleigenschaften
Artikelnummer: 000157780
Artikeltyp: How To
Zuletzt geändert: 26 Feb. 2026
Version:  8
Antworten auf Ihre Fragen erhalten Sie von anderen Dell NutzerInnen
Support Services
Prüfen Sie, ob Ihr Gerät durch Support Services abgedeckt ist.