ssh (oder sftp) als eigener User starten

Debian macht sich hervorragend als Web- und Mailserver. Schau auch in den " Tipps und Tricks"-Bereich.
Antworten
Success
Beiträge: 288
Registriert: 01.06.2013 21:23:15

ssh (oder sftp) als eigener User starten

Beitrag von Success » 15.04.2015 20:25:44

Hallo

ich möchte gerne von ftp auf sftp umsteigen. Für sftp brauch ich ja ssh. ssh Server (für den Login aus der Ferne) läuft ja schon, nur der sftp Server will nicht starten. Das Problem ist das chroot. Wenn ich nix ändere kann jeder der sich einloggen kann, seelenruhig im rootverzeichnis rumtummeln. setze ich jedoch in der sshd_config ein ChrootDirectory %h oder ein ChrootDirectory ~, meckert jeder ftp Client und in der auth.log steht dann auch

fatal: bad ownership or modes for chroot directory component

da /media/ext/web die passenden Rechte (775 auf dirs, 664 auf files, natürlich rekursiv) hat, kann ich fehlerhaft vergebene Rechte eigentlich ausschließen.

proftpd (der normale FTP Server) ist so konfigurierbar das man ihn mit dem user web starten konnte. Den gleichen User hab ich auch bei Apache2 und einem Samba User eingestellt. Samba, Apache und der FTP Server sind alle in der Gruppe web und haben deshalb auch Schreibrechte.

Bei sftp habe ich keine Möglichkeit gefunden ihn unter einem anderen User zu starten. Ich möchte das er auch mit dem User web startet. Geht das irgendwie? Ich mein damit sollte es keine Probleme mit dem User /Gruppe web kommen da ja sftp dann dem user/Gruppe web gehört. Ich habs schon mit USER web und GROUP web versucht aber dann startete der ssh Server nicht mehr (Error in Line 3, Error in Line 4).

Subsystem sftp internal-sftp kann man übrigens auch nicht aktivieren weil dann kein SSH Login mehr funktioniert. (this service allows sftp connections only)

Mir ist schon öfter aufgefallen dass das ssh Programm OpenBSD Secure Shell server heißt. Kann das sein das ich einfach das falsche Programm für openssh hab das zufällig mit ssh funktioniert aber mit sftp nicht? Ich hab nämlich Debian Wheezy (glaub 7.8) am Server und kein Open BSD. Sollte da nicht GNU Linux oder sowas da stehen? Ist Open BSD nicht komplett was anderes?

Falls man sftp nicht als web starten kann, kann man proftpd irgendwie einstellen dass wenigstens das sftp kann?

Dimejo
Beiträge: 503
Registriert: 21.07.2014 13:37:23

Re: ssh (oder sftp) als eigener User starten

Beitrag von Dimejo » 16.04.2015 09:47:01

Success hat geschrieben:fatal: bad ownership or modes for chroot directory component

da /media/ext/web die passenden Rechte (775 auf dirs, 664 auf files, natürlich rekursiv) hat, kann ich fehlerhaft vergebene Rechte eigentlich ausschließen.
Und das Verzeichnis gehört root?

Benutzeravatar
Patsche
Beiträge: 3263
Registriert: 21.06.2013 01:47:54
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: /home/10001101001

Re: ssh (oder sftp) als eigener User starten

Beitrag von Patsche » 16.04.2015 10:03:58

Nur mal eine Frage: Du verwechselst aber nicht sftp mit ftps, oder?

uname
Beiträge: 12540
Registriert: 03.06.2008 09:33:02

Re: ssh (oder sftp) als eigener User starten

Beitrag von uname » 16.04.2015 10:52:35

/etc/ssh/sshd_config

Code: Alles auswählen

Subsystem sftp /usr/lib/openssh/sftp-server
Match group sftponly
         ChrootDirectory /home/%u
         X11Forwarding no
         AllowTcpForwarding no
         ForceCommand internal-sftp
SSH-Server neu laden.
Benutzer user in die Gruppe sftponly eintragen.
/home/user/home anlegen mit Eigentümer "root".
/home/user/home/user anlegen mit Eigentümer "user".

Testen am besten per "localhost". Nur nicht Extra-Fehlerquellen wie Windows einbauen.

Code: Alles auswählen

sftp user@localhost
(put und get)
ssh user@localhost
Anmerkung: Unterstützt nur sftp und nicht scp(only) wie Debianscponly

Antworten