Mehrere SFTP-Benutzer erstellen, die unterschiedliche SSH-Schlüssel verwenden, um eine Verbindung zu demselben chrooted-Verzeichnis herzustellen?

774
user14040

Ich habe einen Ubuntu-Server, der unter anderem als Dateispeicher / -hosting (powered by nginx) fungiert, so dass, wenn eine Datei eingelegt wird /var/www/files.ourcompany.com/file.txt, diese öffentlich verfügbar ist http://files.ourcompany.com/file.txt.

Ich möchte die Fähigkeit des Servers auf drei bestimmte Benutzer beschränken:

  • Benutzer A ist der allgemeine Sudo-fähige Benutzer, der über SSH- und SFTP-Zugriff auf alles verfügt. Er ist mit seinen SSH-Schlüsseln in autorisiert /home/userA/.ssh/authorized_keys. Im Wesentlichen ist dies der Ersatz für root.
  • Benutzer B ist ein normaler Benutzer, der FileZilla verwendet. Er kann SSH nicht verwenden, nur SFTP, und kann nur sehen, /var/www/files.ourcompany.comwann er sich einloggt. Er ist über den darin hinterlegten SSH-Schlüssel autorisiert /etc/ssh/authorized_keys/userB(wie hier beschrieben ).
  • Benutzer C ist genau wie Benutzer B, außer dass er /etc/ssh/authorized_keys/userCstattdessen seinen SSH-Schlüssel hat

Ist das obige möglich chrootoder etwas ähnliches? Benutzer A hat bereits alle Berechtigungen, die er benötigt, aber ich bin nicht sicher, wie er die beiden normalen Benutzer erstellt, die beide in demselben Ordner (mit Upload- / Download-Fähigkeiten) chrootiert werden sollen /var/www/files.ourcompany.com- damit sie sich bei FileZilla anmelden sofort in diesem Ordner abgelegt. Ich habe auch Angst davor, das bestehende Nginx-Setup aus Rechtsgründen aus Versehen zu brechen.

0
Sie können mehrere Schlüssel in einer authorised_keys-Datei haben - und Benutzer können sich als commonusername @ destip anmelden, wobei jeder Schlüssel seinen eigenen Schlüssel verwendet. Dies macht es jedoch möglicherweise schwieriger zu ermitteln, wer sich tatsächlich angemeldet hat. davidgo vor 6 Jahren 0
@davidgo Ich weiß, aber genau das will ich vermeiden. Da wir 5-10 Benutzer mit SFTP-Zugriff auf denselben Dateispeicher haben, möchte ich, dass die Protokolle deutlich zeigen, wer kommt und geht user14040 vor 6 Jahren 0
Die Antwort wäre sicherlich nur die Protokollierung? Sie können auch Dateien mit einer Dauer von 664/775 hochladen und alle Benutzer in einer Gruppe haben - und den Dateiserver so strukturieren, dass Sie / data / home / user und / data / www - haben und diese auf / data chrooten davidgo vor 6 Jahren 0
Ohne zu viel über sftp oder ftps zu wissen, können Sie einen ftps-Server einrichten, der beispielsweise pureftp verwendet, und sich auf Benutzerbasis mit einem gemeinsam genutzten Verzeichnis und den entsprechenden Berechtigungen protokollieren lassen. davidgo vor 6 Jahren 0

0 Antworten auf die Frage