J'ai un serveur SFTP fonctionnant sur Ubuntu Server 12.04 LTS. Tous les utilisateurs du groupe 'sftponly' sont ancrés dans leur répertoire personnel lors de la connexion. Comme OpenSSH exige que le ChrootDirectory soit détenu par root, chaque utilisateur a un sous-dossier nommé 'upload' dans lequel il a le droit d'écrire. Tout cela fonctionne bien, et les utilisateurs sont limités à leur propre zone, qu'ils en soient conscients ou non.
Je voudrais maintenant fournir un accès via HTTP/HTTPS pour que les utilisateurs puissent télécharger des fichiers en utilisant simplement un navigateur Web. Je me suis penché sur le mod_userdir d'Apache, mais il semble être davantage axé sur l'accès anonyme. Je voudrais que le système demande à l'utilisateur de s'authentifier avant de pouvoir télécharger à partir de son dossier. Il devrait également l'autoriser à télécharger uniquement à partir de son dossier.
Par exemple, un utilisateur visiterait https://download.example.com/testuser/file.zip et devront s'authentifier en utilisant les mêmes informations d'identification que lorsqu'ils se connectent via SFTP pour télécharger le fichier.
J'ai cherché des solutions comme la création d'un hôte virtuel distinct pour chaque utilisateur, et la création manuelle de fichiers htaccess dans chaque répertoire personnel, mais cela semble un peu désordonné.
Toute suggestion est la bienvenue.