PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : RSSH für sFTP - ChRoot-Umgebung



BiBe
26.11.2004, 14:34
Hallo,

seit einigen Tagen versuche ich auf meinem Gentoo-Router RSSH-Unterstützung in die SSH-Shell für sFTP einzubauen.

Dazu habe ich zunächst "rssh" emerged, die Shell in "/etc/shells" eingetragen und einen User "sftp-testuser" erstellt, dem ich in der sshd_config Zugriff auf die SSH-Shell vergeben habe. Weiterhin habe der "/etc/passwd" folgende Zeile hinzugefügt:


sftp-testuser:x:1007:409:,,,:/public/sftp/sftp-testuser:/usr/bin/rssh
409 ist eine Gruppe namens "sftpuser". Somit sollte der Benutzer sich also nicht per SSH einloggen können (kann er auch nicht), aber per RSSH.

Dazu habe ich die "rssh.config" wie folgt editiert:


allowsftp
umask = 022
chrootpath = "/public/sftp/"
user=sftp-testuser:011:00010:"/public/sftp/sftp-testuser" # sftp with chroot
Nun zur ChRoot-Umgebung:
In die "/public/sftp/passwd" habe ich genau die Zeile des "sftp-testuser" aus "/etc/passwd" kopiert. Das zugehörige Home-Verzeichnis "/public/sftp/sftp-testuser" existiert und der genannte User hat Zugriffsrechte darauf.
Nun habe ich, einer Anleitung (http://wiki.gentoo-portage.com/HOWTO_SFTP_Server_(chrooted,_without_shell)) gefolgt, alle Abhängigkeiten von "/usr/bin/scp", "/usr/bin/rssh" und "/usr/lib/misc/sftp-server" in die Verzeichnisse "/public/sftp/lib", bzw. "/public/sftp/usr" kopiert und diese Verzeichnisse, um sicher Zugriff zu gewähren, mit den Rechten 777 ausgestattet.

Logge ich mich nun über einen sFTP-Client ein, mit dem ich zum Beispiel eine Verbindung zum sFTP-Server meiner UNI ohne Probleme aufbauen kann, wird nach dem Benutzer und Passwort gefragt und sofort nach Eingabe des Passwortes die Verbindung kommentarlos abgebrochen.

Kommentiere ich in "/etc/rssh.conf" "chrootpath = "/public/sftp/"" aus, so kann ich mich über "sftp-testuser" einloggen, lande aber in "/" und nicht im Home-Verzeichnis, was mir nicht gefällt ;(

Entsprechende Zeilen während des Einloggens mir aktivierter ChRoot-Umgebung der sshd-log ("/var/log/sshd/current") lauten wie folgt:


Nov 26 14:08:27 [sshd] Server listening on 0.0.0.0 port 22.
Nov 26 14:10:02 [sshd] Accepted keyboard-interactive/pam for sftp-testuser from 192.168.27.20 port 1241 ssh2
Nov 26 14:10:02 [sshd] subsystem request for sftp
Kann mir jemand sagen, was ich falsch gemacht habe, wieso sich also "sftp-testuser" bei aktivierter ChRoot-Umgebung nicht einloggen kann bzw. wo ich suchen oder eine ausführlichere Log-Datei finden kann?

Vielen Dank

Birger