Debian: User für sFTP-only mit Schlüsselpaar anlegen

Hier möchte ich erklären wie ein Benutzer auf einem Debiansystem angelegt wird, der nur sFTP Zugang mit SSH-Key hat und in einem bestimmten Verzeichnis eingesperrt ist.
Als erstes wird ein Benutzer angelegt der keine LoginShell hat und der sich nicht via Passwort am Server anmelden kann.

adduser --shell /bin/false --disabled-password BENUTZERNAME

Anschließend wird ein entsprechendes Schlüsselpaar mit 2048 Bit erzeugt.

sudo -H -u BENUTZERNAME ssh-keygen -b 2048 -t rsa

Der erzeugte Public-Key wird in die authorized_keys eingetragen.

cat /home/BENUTZERNAME/.ssh/id_rsa.pub >> /home/BENUTZERNAME/.ssh/authorized_keys

Zu guter Letzt muß noch die Datei /etc/ssh/sshd_config erweitert werden.
Das sFTP Subsystem umstellen.

#Subsystem sftp /usr/lib/openssh/sftp-server 
Subsystem sftp internal-sftp

Am Ende noch folgendes einfügen.

Match user BENUTZERNAME
ChrootDirectory /sftp-verzeichnis
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp

Wenn AllowTcpForwarding auf yes umgestellt wird, hat der User zusätzlich die Möglichkeit Portforwarding zu nutzen.