Limiter l'accès utilisateur SFTP au répertoire spécifié

10

J'ai un serveur Ubuntu 14.04 installé avec ssh ouvert. J'aimerais configurer sftp pour que les clients puissent télécharger uniquement des fichiers. En d'autres termes, je place les fichiers dans un répertoire où ils sont emprisonnés. Je dois m'assurer qu'ils ne peuvent accéder au répertoire qu'avec leurs fichiers et rien d'autre.

À l'origine, j'allais utiliser vsftpd, mais quelqu'un m'a dit que sftp était la meilleure option. S'il y a de la documentation sur ce dont j'ai besoin, ce serait bien.

J'ai besoin d'aide sur les points suivants:

  1. Comment configurer sftp
  2. Comment configurer des comptes d'utilisateurs et les utiliser pour sftp
  3. Comment configurer des comptes en prison
scottsmail
la source

Réponses:

12

Paramètres pour /etc/ssh/sshd_config

Subsystem sftp internal-sftp -f AUTH -l VERBOSE
UsePAM yes
Match group sftp
  ChrootDirectory %h
  ForceCommand internal-sftp
  AllowTcpForwarding no

créer un groupe sftp:

groupadd sftp

Créer le répertoire

sudo mkdir /ftpusers
sudo mkdir /ftpusers/HomeFolder

Créez un utilisateur directement avec le nouveau groupe sftp attaché:

sudo useradd -d /ftpusers/HomeFolder -m UserName -g sftp -s /bin/false
sudo passwd UserName

définir les autorisations à utiliser avec ssh pour sftp:

chown root:root /ftpusers/HomeFolder
chmod 755 /ftpusers/HomeFolder

redémarrer le service:

service ssh restart

Remarque: le dossier de base du nouvel utilisateur sftp doit avoir le propriétaire root.

2707974
la source
Merci pour la réponse!! Je ne sais pas pourquoi, mais quand j'essaie de créer un utilisateur directement dans le groupe. J'obtiens l'erreur suivante ... useradd: impossible de créer le répertoire / ftpusers / HomeFolder
scottsmail
Courez d'abord sudo mkdir /ftpusers, puissudo mkdir /ftpusers/HomeFolder
2707974
Je vous remercie. Ok, problème suivant ... Lorsque j'essaie de définir des autorisations à utiliser avec ssh pour sftp avec chown root: root HomeFolder je me fais chown: ne peut pas accéder à 'HomeFolder': Aucun fichier ou répertoire de ce type
scottsmail
chown root:root /ftpusers/HomeFolderetchmod 755 /ftpusers/HomeFolder
2707974
UsePAM yesruine tout pour moi et provoque une "connexion refusée". Je ne sais pas pourquoi, mais commenter cette ligne fait que tout fonctionne parfaitement.
pzkpfw