Empêchez le téléchargement de keys ssh en utilisant vsftp

Je configure vsftpd pour les téléchargements à partir d'un périphérique sur mon réseau. Le FTP est nécessaire pour des raisons anciennes. C'est quelque chose que je ne peux pas changer, peu importe combien je le souhaite. Donc, ne pensez pas que je n'utilise pas ftp! Cette interface est brûlée dans le microprogramme d'un périphérique avec lequel je dois interagir et ne peut pas changer ou contrôler.

Mon problème: je veux empêcher l'access shell (ou tout autre type d'access au-delà du transfert de files) dans la mesure du possible.

Je configure une coquille de /usr/sbin/nologin . Dans l'intérêt de la défense en profondeur (pour atténuer les modifications accidentelles de la shell, par exemple), je suis intéressé par toutes les autres idées que vous pourriez avoir.

Par exemple, je envisage de créer un directory .ssh dans le directory personnel du count, root:root propriétaire root:root mode root:root 0550, avec le bit de bit immuable. Cela empêcherait le count de l'appareil de pouvoir configurer l'access SSH pour lui-même.

Existe-t-il une meilleure façon d'empêcher les keys SSH d'être téléchargées via vsftpd? Existe-t-il d'autres files ou directorys que vous souhaitez interdire d'être téléchargés dans l'intérêt de la security?

Je décrocherai un peu en arrière et désactivera SSH pour ces / ces counts entièrement.

Dans votre sshd_config , vous pouvez sshd_config users qui peuvent se connecter via SSH, ou vous pouvez sshd_config les users sshd_config . Les mots keys pertinents sont

 AllowGroups This keyword can be followed by a list of group name patterns, separated by spaces. If specified, login is allowed only for users whose primary group or supplementary group list matches one of the patterns. AllowUsers This keyword can be followed by a list of user name patterns, separated by spaces. If specified, login is allowed only for user names that match one of the patterns. 

et leurs homologues DenyUsers et DenyGroups .

Vous pouvez également confondre le problème en modifiant le nom du file de keys autorisé ssh, de sorte que même si quelqu'un devait download un file dans .ssh/authorized_keys , SSH n'utiliserait pas ce file. Le mot-key pertinent est

 AuthorizedKeysFile Specifies the file that contains the public keys that can be used for user authentication. 

Ou vous pouvez choisir de rejeter complètement l'authentification de key ssh, bien que je ne le recommand généralement pas.

Une addition:

Vous pouvez également utiliser l'option deny_file de vsftpd pour limiter les téléchargements de files dans le ftpd, et je devrais vous conseiller d'examiner votre configuration pam pour empêcher les users de se connecter via d'autres methods que SSH.