Kurze Zusammenfassung der Schritte um Usern einen beschränkten SFTP Zugang mit Public Key Authentifizierung zu gewähren:
Gruppe und User anlegen:
groupadd sftponly
useradd USERNAME
usermod USERNAME -g sftponly -s /bin/false
passwd USERNAME
Userspezifische authorized_keys File anlegen:
mkdir /etc/ssh/authorized_keys
chown root:root /etc/ssh/authorized_keys
chmod 755 /etc/ssh/authorized_keys
echo ’ssh-rsa <key> <username@host>‘ >> /etc/ssh/authorized_keys/USERNAME
chmod 644 /etc/ssh/authorized_keys/USERNAME
sshd_config modifizieren:
AuthorizedKeysFile /etc/ssh/authorized_keys/%u .ssh/authorized_keys
Match Group sftponly
ChrootDirectory /var/www
ForceCommand internal-sftp
AllowTcpForwarding no
Nun nur noch ssh neu starten und das wars.