Je viens d'essayer une nouvelle fois, à tête reposée, de configurer un chroot SFTP pour donner accès à des données personnelles à un ami.
Sur Google et sur DuckDuckGo, c'est le wiki d'Archlinux.org qui sort en premier sur la requête "SFTP chroot", ça tombe bien !

https://wiki.archlinux.org/index.php/SFTP_chroot
L'ennui c'est que j'ai beau suivre le guide à la lettre, ça ne fonctionne pas.
Comme ça n'avait pas fonctionné la fois précédente avec ce guide, j'ai diagnostiqué étape après étape.
Après avoir seulement ajouté "Subsystem sftp internal-sftp" à /etc/ssh/sshd_config et redémarré sshd, mon propre utilisateur peut toujours se connecter en SSH et en SFTP.
Après avoir ajouté le bloc Match User, idem.
Puis je crée l'utilisateur de mon ami, avec pour groupe de base "users" (sudo useradd -m -g users XXX), je lui attribue un mot de passe, et je chown root:root son /home, conformément à ce qu'indique le guide du wiki d'Archlinux. Il est expliqué que si on ne le fait pas, l'utilisateur pourra sortir de son chroot. Je "mkdir" puis je "mount --bind" le répertoire que je veux lui partager dans la foulée.
Mais lorsque j'essaie de me connecter via SFTP, il m'est impossible de lister le contenu du répertoire. Si je "sudo su XXX", j'obtiens "bash: /home/XXX/.bashrc: Permission denied" et il m'est impossible de "cd /home/XXX". Ce qui me parait logique, puisque le /home/XXX ne lui appartient pas, mais je n'ai fait que suivre les instructions.
Juste pour vérifier, je re-chown XXX:users son home, mais lorsque j'essaie de me connecter via SFTP, j'obtiens : "packet_write_wait: Connection to ::1 port 22: Broken pipe" "Couldn't read packet: Connection reset by peer". Pourquoi le serveur est-il si restrictif ?
Puis en me basant sur ma très modeste maitrise des autorisations, j'ai "chown root:users /home/XXX" puis "chmod g+rx /home/XXX". Depuis je crois que ça fonctionne comme je le souhaitais.
Mais suis-je passé à côté de quelque chose ?
