Je ne connais pas AIX, mais vous devriez être capable de le faire avec OpenSSH, mais cela nécessitera des permissions root. Vous devrez écrire un script wrapper pour le composant serveur de sftp. Le wrapper devra modifier de manière sélective le umask
pour l'utilisateur, puis exec
le serveur sftp. Pour sélectionner un utilisateur, je suis partie à:
id --user
Si vous deviez créer un tel script /usr/local/sbin/sftp-wrapper
, alors vous changez la configuration du sous-système sftp en /etc/ssh/sshd_config
de:
Subsystem sftp /usr/libexec/openssh/sftp-server
à:
Subsystem sftp /usr/local/sbin/sftp-wrapper
Au-delà de l'écriture du script wrapper, chaque étape nécessite des autorisations root. Commentaire: Je crois que le serveur sftp est démarré par root lorsque vous vous connectez via sftp. Ainsi, l'umask par défaut dérive de l'umask de la racine. Je ne crois pas qu'il existe un moyen de modifier cela pour un utilisateur particulier à partir de la configuration de cet utilisateur. Si vous voulez changer le umask sftp pour tous les utilisateurs, vous pouvez faire une modification plus simple à la configuration du sous-système sftp:
Subsystem sftp /bin/bash -c ‘umask 002; /usr/libexec/openssh/sftp-server’
Attention lorsque vous faites cela. Dans l'exemple ci-dessus, l'ensemble du groupe 'www-data' ne pourra pas faire de SSH via la console. Je reçois l'erreur 'Ce service permet seulement les connexions sftp.Connexion pour prospérer fermé. '. – dominikz
Cela a fonctionné pour moi aussi (sur Amazon Linux). J'avais précédemment utilisé la méthode SSH_ORIGINAL_COMMAND décrite ci-dessus. Pour une raison quelconque, lorsque je suis passé à sftp-internal et que j'ai créé le répertoire Chroot, l'umask de authorized_keys a cessé d'avoir un effet. Merci! – mikeabout
Pour la plupart d'entre nous concernés par la sécurité des utilisateurs sftp, chroot est la solution. Et cette réponse m'a aidé à résoudre les problèmes de umask pour ces utilisateurs sans accès shell ou répertoire personnel. +1 Cependant, cela ne s'est pas révélé rapidement dans la recherche. – nightgaunt