GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comment configurer un serveur SFTP sur Rocky Linux/CentOS 8 Server

Le File Transfer Protocol est un protocole de communication standard utilisé pour le transfert de fichiers informatiques d'un serveur à un client sur un réseau informatique.

FTP n'est pas populaire aujourd'hui car il manque de sécurité. Lorsqu'un fichier est envoyé à l'aide de ce protocole, les données, le nom d'utilisateur et le mot de passe sont tous partagés en texte brut, ce qui signifie qu'un pirate peut accéder à ces informations avec peu ou pas d'effort. Pour que les données soient sécurisées, vous devez utiliser une version mise à jour de FTP comme SFTP.

Le protocole de transfert de fichiers sécurisé SFTP est un protocole de transfert de fichiers qui fournit un accès sécurisé à un ordinateur distant pour fournir des communications sécurisées. Il exploite SSH - Secure Socket Shell et est souvent appelé "Secure Shell File Transfer Protocol".

Contenu associé

  • Comment installer et configurer le serveur sftp dans Ubuntu 20.04
  • Comment configurer un serveur SFTP sur le serveur OpenSUSE Leap 15.3

Prérequis

Pour suivre ce guide, assurez-vous d'avoir les éléments suivants :

  1. Système basé sur Centos 8 ou RHEL 8
  2. Accès root au serveur Ou un utilisateur disposant d'un accès root

Table des matières

  1. Installer ssh sur le service s'il n'est pas présent
  2. Créer des utilisateurs et des groupes et ajouter les répertoires nécessaires
  3. Configuration du service ssh
  4. Vérifier que la configuration fonctionne comme prévu

1. Installer ssh sur le service s'il n'est pas présent

Avant de continuer, assurez-vous que votre système est à jour :

$ sudo dnf update -y
Last metadata expiration check: 2:05:00 ago on Mon 27 Sep 2021 03:48:26 PM UTC.
Dependencies resolved.
Nothing to do.
Complete!

Vérifiez ensuite que le ssh est installé et fonctionne :

$ sudo dnf install -y openssh-server
Last metadata expiration check: 3:48:26 ago on Mon 27 Sep 2021 03:48:26 PM UTC.
Package openssh-server-8.0p1-6.el8_4.2.x86_64 is already installed.
Dependencies resolved.
Nothing to do.
Complete!

Démarrer le service

sudo systemctl restart sshd

2. Créer des utilisateurs et des groupes et ajouter les répertoires nécessaires

Ensuite, nous nous assurerons que les utilisateurs nécessaires sont présents dans le système. Dans mon cas, j'aimerais que les utilisateurs sftp soient chez eux en tant que /srv/sftp

Créons le home /srv/sftp avec cette commande :

sudo mkdir /srv/sftp

Alors créons un groupe parapluie pour SFTP uniquement

sudo groupadd sftpusers

Créez ensuite un utilisateur sftp uniquement :

sudo useradd -G sftpusers -d /srv/sftp/citizix -s /sbin/nologin citizix

Les options ci-dessus effectuent les actions suivantes :

  • -G sftpusers  :Créer un utilisateur, ajouter à sftpusers groupe
  • -d /srv/sftp/citizix  :Définissez le répertoire personnel sur /srv/sftp/citizix
  • -s /sbin/nologin :Nous ne voulons pas que l'utilisateur se connecte, donc pas de shell de connexion ssh
  • Enfin, le nom d'utilisateur est citizix

Ajoutez ensuite un mot de passe à l'utilisateur créé à l'aide de cette commande :

$ sudo passwd citizix
Changing password for user citizix.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.

3. Configuration du service ssh

Maintenant que nous avons installé le logiciel nécessaire et créé les utilisateurs et les groupes, configurons ssh.

Assurez-vous que l'authentification par mot de passe est activée pour ssh. Modifiez le fichier de configuration ici /etc/ssh/sshd_config :

sudo vim /etc/ssh/sshd_config

Assurez-vous ensuite que cette ligne n'est pas commentée :

PasswordAuthentication yes

Ensuite, nous devons ajouter des règles pour les utilisateurs dans le sftpusers groupe à considérer comme sftp. Modifiez le fichier de configuration :

sudo vim /etc/ssh/sshd_config

Ajoutez ce contenu en bas du fichier :

Match Group sftpusers  
    X11Forwarding no  
    AllowTcpForwarding no  
    ChrootDirectory /srv/sftp
    ForceCommand internal-sftp

Redémarrez ensuite sshd pour recharger la configuration :

sudo systemctl restart sshd

Vérifiez que sshd fonctionne comme prévu :

$ sudo systemctl status sshd
● sshd.service - OpenSSH server daemon
   Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2021-09-27 19:05:29 UTC; 43min ago
     Docs: man:sshd(8)
           man:sshd_config(5)
 Main PID: 746214 (sshd)
    Tasks: 1 (limit: 23800)
   Memory: 7.2M
   CGroup: /system.slice/sshd.service
           └─746214 /usr/sbin/sshd -D [email protected],[email protected]>

4. Vérifier que la configuration fonctionne comme prévu

Après avoir réussi à créer l'utilisateur et à ajouter des configurations sftp, testons la configuration à l'aide de la commande :

❯ sftp [email protected]
[email protected]'s password:
Connected to 3.250.122.68.
sftp> ls
citizix
sftp>

Nous avons maintenant un serveur sftp opérationnel avec un utilisateur configuré !

Les utilisateurs pourront se connecter au serveur et accéder aux fichiers et répertoires situés dans leur répertoire personnel. Si vous souhaitez donner à l'utilisateur d'autres répertoires en dehors de son propre répertoire, assurez-vous simplement que l'utilisateur dispose de suffisamment de droits d'accès. Ces répertoires et fichiers doivent se trouver dans le répertoire sftp – /srv/sftp .

Exemple :si je veux que l'utilisateur accède au répertoire /srv/sftp/paymentfiles , procédez comme suit :

Créer le répertoire

sudo mkdir /srv/sftp/paymentfiles

Attribuez ensuite l'utilisateur (citizix ) accéder en leur faisant posséder le répertoire :

sudo chown citizix:sftpusers /srv/sftp/paymentfiles

Vous pouvez maintenant accéder au contenu du répertoire.

Conclusion

Dans ce guide, nous avons réussi à configurer un serveur SFTP sur un serveur basé sur RHEL 8 comme Rocky Linux ou Centos 8.


Cent OS
  1. Configurer le serveur DHCP sur CentOS 8 - Comment faire ?

  2. Comment installer le serveur Mssql sur Rocky Linux 8/Centos 8

  3. Comment installer Erlang sur Rocky Linux/Alma Linux/CentOS 8

  4. Comment installer le client FreeIPA sur Rocky Linux/Alma Linux/CentOS 8

  5. Comment configurer un serveur SFTP sur Arch Linux

Comment configurer la réplication FreeIPA sur Rocky Linux/Alma Linux/Centos 8

Comment installer le serveur NextCloud sur Rocky Linux 8

Comment installer LAMP sur le serveur Rocky Linux 8

Comment configurer le serveur DHCP sur CentOS 8

Comment activer le service SSH sur Rocky Linux 8 / CentOS 8

Comment configurer SSH sur CentOS et RHEL