ich wollte dem user1 den Zugriff auf das Verzeichnis /home/user1/www per sftp ermöglichen und ihn gleichzeitig "einsperren", damit er nicht auf die restlichen Verzeichnisse des Servers zugreifen kann. Außerdem soll nur user1 keinen Zugriff über die Shell haben.
Dazu habe ich folgende Schritte durchgeführt:
Code: Alles auswählen
# adduser user1
# passwd user1
# usermod -s /bin/false user1
# chown root:root /home/user1
# chmod 755 /home/user1
# mkdir /home/user1/www
# chown user1:user1 /home/user1/www
Code: Alles auswählen
#Subsystem sftp /usr/lib/openssh/sftp-server (auskommentiert)
# Neueintrag
Match User user1
ChrootDirectory /home/%u
ForceCommand internal-sftp
X11Forwarding no
AllowTcpForwarding no
Dann bekam ich die Meldung:
Code: Alles auswählen
/etc/ssh/sshd_config line 97: Directive 'UsePAM' is not allowed within a Match block
Absolut blöderweise habe ich dann, bevor ich den sftp-Zugang für user1 getestet habe, den SSH-Zugang gekappt, wobei der eh nach kurzer Zeit von alleine gekappt worden wäre. Jedenfalls funktioniert der SFTP-Zugang für user1 nicht und auch nicht mehr für den User, mit dem ich bisher problemlos per SSH und SFTP auf den Server zugreifen konnte. Anders gesagt, ich habe mich ausgesperrt, da jetzt für den SSH-Login offenbar ein Publickey benötigt wird, den ich natürlich nicht habe, da ich mich ja via PW angemeldet habe. Zumindest schließe ich das aus der Meldung:
Code: Alles auswählen
Permission denied (publickey).

Bin für jeden Hinweis sehr dankbar!
Nachtrag: Würde ein bestehender VPN-Zugang weiterhelfen? Kann den zurzeit leider nicht testen, weil ich derzeit an den Rechner mit dem VPN Zugang nicht dran komme.