Comment créer un utilisateur SFTP sans accès de shell sur CentOS / RHEL 7

Comment créer un utilisateur SFTP sans accès de shell sur CentOS / RHEL 7

Ce tutoriel vous aidera à créer un utilisateur SFTP uniquement (sans accès SSH) sur les systèmes CentOS et RedHat. L'utilisateur peut connecter le serveur avec l'accès SFTP uniquement et autorisé à accéder au répertoire spécifié. Les utilisateurs ne peuvent pas SSH dans le serveur. Suivez le tutoriel ci-dessous pour créer un compte SFTP uniquement.

Étape 1 - Créer un compte

Tout d'abord, créez un compte d'utilisateur à utiliser pour l'accès SFTP. La commande ci-dessous créera un utilisateur nommé SFTPUSER sans accès à la coquille.

sudo addUser --shell / bin / false sftpuser sudo passwd sftpuser 

Étape 2 - Créer un répertoire

Maintenant, créez la structure du répertoire pour être accessible par l'utilisateur SFTP.

sudo mkdir -p / var / sftp / fichiers 

Modifier la propriété du répertoire des fichiers en utilisateur SFTP. Afin que le SFTPUSER puisse lire et écrire sur ce répertoire.

sudo chown sftpuser: sftpuser / var / sftp / fichiers 

Et définissez le propriétaire et le propriétaire du groupe du / var / sftp pour root. L'utilisateur racine a un accès en lecture / écriture sur cet accès. Les membres du groupe et d'autres comptes n'ont lu et exécuté que des autorisations.

sudo chown racine: racine / var / sftp sudo chmod 755 / var / sftp 

Étape 3 - Configurer SSH pour SFTP

Modifiez maintenant le fichier de configuration SSH dans un éditeur de texte

sudo vim / etc / ssh / sshd_config 

et ajouter les paramètres suivants à la fin du fichier.

Faites correspondre l'utilisateur SFTPUSER FORCEMAND INTERNAL-SFTP PASTORDAUTHENTICATION Oui ChrootDirectory / Var / SFTP Permittunnel Non Autoriser pour faire non plus 

Enregistrez la configuration et redémarrez le service SSH pour appliquer les modifications.

sudo systemctl redémarrer sshd.service 

Étape 4 - Testez la connexion SFTP

J'utilise Filezilla pour la connexion à l'instance SFTP à partir de mes systèmes Windows. Les utilisateurs de Linux Desktop peuvent également utiliser Filezilla pour la connexion.

Pour le serveur Linux, les utilisateurs peuvent utiliser l'utilitaire de ligne de commande SFTP pour se connecter à l'instance SFTP distante.

sftp [e-mail protégé] Connexion à SFTP.técadmin.Net… [Mot de passe du courrier électronique]: SFTP> 

Connectez-vous avec Filezilla:

Comme ce compte est configuré pour la connexion SFTP uniquement. Donc, si un utilisateur essayait de se connecter via SSH sera déconnecté immédiatement après une authentification réussie. L'utilisateur obtiendra un message inférieur:

ssh [e-mail protégé] Mot de passe de [e-mail protégé par e-mail: ce service autorise les connexions SFTP uniquement. Connexion à SFTP.técadmin.filet fermé.