GNU/Linux >> Tutoriels Linux >  >> Linux

Comment autoriser SFTP et interdire SSH ?

Dans ce tutoriel, j'expliquerai comment configurer SSH pour autoriser SFTP et interdire l'accès à la connexion SSH.

Solution :

Eh bien, SFTP utilise SSH et par défaut, les utilisateurs pourront utiliser à la fois SSH et SFTP. Mais si jamais vous voulez que les utilisateurs utilisent uniquement SFTP et interdisent l'accès SSH, alors OpenSSH le prend en charge. À partir de la version 4.9 d'OpenSSH, vous pouvez modifier sshd_config fichier comme indiqué ci-dessous :

Comment autoriser SFTP et interdire SSH

Étape 1  :Modifier le fichier de configuration SSH

# vim /etc/sshd_config

Étape 2 :Recherchez le sous-système FTP.

Au cas où, si le sous-système est déjà défini comme indiqué ci-dessous :

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

Ensuite, vous devez le remplacer par :

Subsystem sftp internal-sftp

Les deux serveur sftp et interne-sftp sont les sous-systèmes de SSH, mais internal-sftp est le plus préféré. La raison en est internal-sftp est un sftp en cours de traitement serveur qui a un avantage de performance sur stp-server et ne nécessite pas non plus de fichiers de support supplémentaires lorsqu'il est utilisé avec ChrootDirectory option.

Étape 3 :Ajoutez les lignes ci-dessous

Match group ftp
     ChrootDirectory /home/%u
     X11Forwarding no
     AllowTcpForwarding no
     ForceCommand internal-sftp

Attention à 'Match group ftp ' ligne qui indique que tout utilisateur souhaitant utiliser SFTP doit appartenir au groupe appelé 'ftp ‘ (créez votre propre groupe, si nécessaire). Utilise également internal-sftp le sous-système est important, car nous utiliserons ChrootDirectory option.

Remarque  :Assurez-vous que les lignes ci-dessus sont ajoutées après "UsePAM yes ' dans sshd_config fichier.

Étape 4 :Ajouter des utilisateurs au groupe FTP.

# vim /etc/group

Recherchez le groupe FTP et ajoutez des utilisateurs comme indiqué ci-dessous, par exemple l'utilisateur 'sysadmin ‘.

ftp:x:113:sysadmin

Vous devrez peut-être changer le répertoire personnel de l'utilisateur en / à cause de l'utilisation de Chroot et racine devrait être le propriétaire de /home/user .

Étape 5 :testez si les configurations sont correctes avant de redémarrer le service SSH. Cette étape est très importante.

# sshd -t

S'il y a une erreur, elle sera affichée à l'écran. Sinon, aucune sortie ne sera affichée.

Étape 6 :Redémarrez le service SSHD

# /etc/init.d/ssh restart

(ou)

# /etc/init.d/sshd restart

(ou)

# service ssh restart

(ou)

# service sshd restart

Étape 7 :Tester

Désormais, tout utilisateur appartenant à 'ftp ' sera autorisé à utiliser SFTP, mais ne pourra pas se connecter via SSH.

Remarque :Les commandes ci-dessus ont été exécutées et testées sur Ubuntu 14.04.4 LTS.


Linux
  1. Comment utiliser les protocoles SSH et SFTP sur votre réseau domestique

  2. Ssh – Restreindre un utilisateur Ssh/scp/sftp à un répertoire ?

  3. Comment configurer Chroot SFTP sous Linux (Autoriser uniquement SFTP, pas SSH)

  4. Comment configurer SSH pour restreindre les utilisateurs/groupes avec des directives d'autorisation et de refus

  5. Comment autoriser ssh avec des mots de passe vides sous Linux

Comment installer et utiliser SFTP sur des serveurs Linux

Comment configurer la clé publique et privée SSH sous Linux

Comment télécharger et charger un répertoire distant dans sFTP

Comment autoriser les ports dans le pare-feu WHM et le pare-feu CSF via SSH ?

Comment générer et utiliser la clé SSH dans le système Linux ?

Comment ajouter une clé SSH au code VS et se connecter à un hôte