GNU/Linux >> Tutoriels Linux >  >> OpenSuse

Comment configurer un serveur SFTP sur le serveur OpenSUSE Leap 15.3

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 travailler avec le client SFTP sous Linux – 10 commandes sftp
  • Comment configurer un serveur SFTP sur le serveur Debian 11
  • Télécharger des fichiers à partir du serveur SFTP à l'aide d'un script python
  • Répertorier, charger et télécharger des fichiers depuis un serveur SFTP à l'aide de golang
  • Comment installer et configurer le serveur sftp dans Ubuntu 20.04
  • Comment configurer un serveur SFTP sur le serveur OpenSUSE Leap 15.3
  • Comment configurer un serveur SFTP sur le serveur CentOS 8/RHEL 8

Prérequis

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

  1. Serveur OpenSUSE Leap 15.3
  2. Accès root au serveur ou à un utilisateur disposant d'un accès root
  3. Accès Internet depuis le serveur

Table des matières

  1. S'assurer que le serveur est à jour
  2. S'assurer que le service SSH est installé
  3. Créer des utilisateurs et des groupes et ajouter les répertoires nécessaires
  4. Configuration du service ssh
  5. Vérifier que la configuration fonctionne comme prévu

1. S'assurer que le serveur est à jour

Avant de continuer, assurez-vous que votre système est à jour. Utilisez cette commande pour actualiser les packages système et les mettre à jour.

sudo zypper ref
sudo zypper update -y

2. S'assurer que le service SSH est installé

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

~> sudo zypper install openssh-server
Loading repository data...
Reading installed packages...
'openssh-server' is already installed.
No update candidate for 'openssh-server-8.4p1-3.3.1.x86_64'. The highest available version is already installed.
Resolving package dependencies...
Nothing to do.

Maintenant qu'il est installé, démarrez le service

sudo systemctl start sshd

Confirmer son statut

~> sudo systemctl status sshd
● sshd.service - OpenSSH Daemon
     Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: disabled)
     Active: active (running) since Fri 2021-12-03 10:19:26 UTC; 29min ago
   Main PID: 1419 (sshd)
      Tasks: 1
     CGroup: /system.slice/sshd.service
             └─1419 sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups

Dec 03 10:19:26 ip-10-2-40-46 sshd[1419]: Server listening on 0.0.0.0 port 22.
Dec 03 10:19:26 ip-10-2-40-46 sshd[1419]: Server listening on :: port 22.
Dec 03 10:19:26 ip-10-2-40-46 systemd[1]: Started OpenSSH Daemon.
Dec 03 10:21:13 ip-10-2-40-46 sshd[1507]: Received disconnect from 92.255.85.37 port 43914:11: Bye Bye [preauth]
Dec 03 10:21:13 ip-10-2-40-46 sshd[1507]: Disconnected from authenticating user root 92.255.85.37 port 43914 [preauth]
Dec 03 10:33:40 ip-10-2-40-46 sshd[1977]: Accepted publickey for ec2-user from 105.231.31.248 port 60453 ssh2: RSA SHA256:nDQ1FM>
Dec 03 10:33:40 ip-10-2-40-46 sshd[1977]: pam_unix(sshd:session): session opened for user ec2-user by (uid=0)
Dec 03 10:36:49 ip-10-2-40-46 sshd[2203]: Invalid user huawei from 92.255.85.37 port 36540
Dec 03 10:36:49 ip-10-2-40-46 sshd[2203]: Received disconnect from 92.255.85.37 port 36540:11: Bye Bye [preauth]
Dec 03 10:36:49 ip-10-2-40-46 sshd[2203]: Disconnected from invalid user huawei 92.255.85.37 port 36540 [preauth]

3. 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 /srv/sftp

Créons la maison /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 appelé citizix :

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 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 Daemon
     Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: disabled)
     Active: active (running) since Fri 2021-12-03 11:22:18 UTC; 5min ago
    Process: 15765 ExecStartPre=/usr/sbin/sshd-gen-keys-start (code=exited, status=0/SUCCESS)
    Process: 15770 ExecStartPre=/usr/sbin/sshd -t $SSHD_OPTS (code=exited, status=0/SUCCESS)
   Main PID: 15780 (sshd)
      Tasks: 1
     CGroup: /system.slice/sshd.service
             └─15780 sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups

Dec 03 11:22:18 ip-10-2-40-46 systemd[1]: Starting OpenSSH Daemon...
Dec 03 11:22:18 ip-10-2-40-46 sshd-gen-keys-start[15765]: Checking for missing server keys in /etc/ssh
Dec 03 11:22:18 ip-10-2-40-46 sshd[15780]: Server listening on 0.0.0.0 port 22.
Dec 03 11:22:18 ip-10-2-40-46 sshd[15780]: Server listening on :: port 22.
Dec 03 11:22:18 ip-10-2-40-46 systemd[1]: Started OpenSSH Daemon.

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 52.24.157.181.
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

C'est ça. Les utilisateurs devraient maintenant y avoir accès.

Conclusion

Nous avons réussi à configurer le serveur sftp dans un OpenSUSE Leap 15.3 dans ce guide.


OpenSuse
  1. Comment installer et configurer le serveur sftp dans Ubuntu 20.04

  2. Comment installer Mongodb 5 dans Opensuse Leap 15.3

  3. Comment installer Mysql Server 8 sur OpenSUSE Leap 15.3

  4. Comment installer et configurer Redis 6 sur OpenSUSE Leap 15.3

  5. Comment installer et configurer Nginx en tant que proxy OpenSUSE Leap 15.3

Comment installer un bureau KDE OpenSUSE Leap 42.1

Comment installer Skype sur openSUSE Leap

Comment activer SSH sur openSUSE

Comment installer TeamViewer 12 sur openSUSE Leap 42.2

Comment installer Dropbox sur openSUSE Leap 42.2

Comment installer RabbitMQ dans OpenSUSE Leap 15.3