web-dev-qa-db-fra.com

Créer un utilisateur SFTP pour accéder à un dossier spécifique uniquement?

J'utilise Ubuntu 14.04 LTS 64bit. Je veux créer un utilisateur sftp pour accéder à un dossier existant et lui permettre de télécharger/télécharger/éditer. Comment puis-je faire ceci?

1
TravelWhere

Bien créer un serveur ftp ou même sftp est assez simple avec le paquet vsftpd, mais si vous souhaitez vraiment autoriser une personne extérieure à établir une connexion ftp, vous devez prendre en charge certains scénarios importants. Il est donc préférable de configurer sftp de manière non-chroot afin qu'aucun utilisateur de sftp ne puisse voir vos fichiers système. Cela peut être fait de différentes manières, et bien je peux expliquer un moyen simple pour atteindre vos objectifs en quelques étapes simples.

Devenir utilisateur privilégié.

Sudo su

Installer les paquets

Sudo apt-get install vsftpd openssh-server

Sauvegardez le fichier de configuration et créez-en un nouveau.

mv /etc/vsftpd.conf{,.backup}

nano /etc/vsftpd.conf

téléchargez le fichier de configuration et copiez le conten

sauvegarder et quitter

Ctrl + x 
y

Redémarrez le serveur vsftp

service vsftpd restart

créer un utilisateur pour ftp seulement

useradd -g sftpgroup -d /files -s /sbin/nologin sagar

Définir le mot de passe pour l'utilisateur Sagar

Sudo passwd sagar

Ajoutez nologin à Shell config pour l’utiliser.

echo "/usr/sbin/nologin" >> /etc/shells

Créez un groupe pour ftp afin que tous les utilisateurs du groupe puissent utiliser sftp

Sudo groupadd sftpgroup

Maintenant, éditez le fichier de configuration ssh daemon pour utiliser SFTP/etc/ssh/sshd_config

Sudo nano /etc/ssh/sshd_config

Recherchez la ligne "Sous-système sftp/usr/lib/openssh/sftp-server" et commentez comme suit.

#Subsystem sftp /usr/lib/openssh/sftp-server

coller ce qui suit à la fin du fichier

Subsystem sftp internal-sftp
Match group sftpgroup
ChrootDirectory /ftpdir/%u
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp

Sauvegarder par Ctrl + x y

Créez un répertoire pour les fichiers ftp tels que mkdir -p/ftpdir // files.

mkdir -p /ftpdir/sagar/files

Donner la propriété

Sudo chown -R sagar:sftpgroup /ftpdir/sagar/files

Redémarrez le système

Sudo reboot

Utilisez maintenant le client filezilla pour vous connecter via SFTP ou un terminal identique. C'est ça.

0
SAGAR Nair