it-swarm.com.de

Linux Shell, um Sftp-Benutzer auf ihre Home-Verzeichnisse zu beschränken?

Ich muss SFTP Zugriff auf ein Verzeichnis in meiner Webroot auf meinem Server gewähren. Ich habe ben_files als Benutzer eingerichtet und sein Home-Verzeichnis auf gesetzt 

/var/www/vhosts/mydomain.com/files

Das ist in Ordnung, wenn er sich mit einfachem alten FTP verbindet - er ist nur auf dieses Verzeichnis beschränkt, aber um SFTP zu aktivieren, musste ich ihn zur bin/bash-Shell hinzufügen, was plötzlich meinen gesamten Server öffnet ...

Gibt es eine Möglichkeit, ihm SFTP-Zugriff zu gewähren, ohne jedoch alle meine Verzeichnisse zu öffnen? Ich würde ihn wirklich nur auf sein Zuhause beschränken;)

Vielen Dank!

33
MrFidge

OpenSSH≥4.8 unterstützt eine ChrootDirectory-Direktive.

Fügen Sie /etc/sshd_config oder /etc/ssh/sshd_config hinzu, oder wie auch immer Ihre globale sshd-Konfigurationsdatei lautet:

 Übereinstimmung mit Benutzer ben_files 
 # Die folgenden beiden Anweisungen zwingen ben_files, chrootiert zu werden 
 # und nur SFTP verfügbar. Es sind keine anderen Chroot-Einstellungen erforderlich .
 ChrootDirectory /var/www/vhosts/mydomain.com/files
 ForceCommand internal-sftp 
 # Für zusätzliche Paranoia lassen Sie alle Arten von Portweiterleitungen zu. .
 AllowTcpForwarding-Nr 
 GatewayPorts Nr 
 X11Weiterleitung Nr 
46
ephemient

Sie könnten versuchen, seine Shell auf /bin/rbash einzustellen.

BESCHRÄNKTE Schale Wenn bash mit dem Namen rbash gestartet wird, oder die Option -r ist geliefert bei Aufruf wird die Shell eingeschränkt. Eine eingeschränkte Shell ist gebraucht um eine Umgebung einzurichten, die kontrollierter ist als die Standard-Shell. Es verhält sich identisch zu bash mit der Ausnahme, dass Folgendes sind nicht erlaubt oder nicht ausgeführt:

   ·      changing directories with cd

und mehr...

Stellen Sie sicher, dass Sie vollständig verstehen, was erlaubt und nicht zulässig ist, bevor Sie dies verwenden.

3

Schauen Sie sich die Datei rssh an. Es ist möglicherweise bereits für Ihre O/S-Distribution verpackt.

3
Ned Deily

Verwenden Sie pam_chroot.

Hier ist ein gutes Handbuch: http://www.howtoforge.com/chroot_ssh_sftp_debian_etch

0
rvs