GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment configurer le serveur SFTP sur Ubuntu 22.04 Jammy Jellyfish Linux

Dans ce tutoriel, nous allons vous montrer comment configurer un serveur SFTP sur Ubuntu 22.04 Jammy Jellyfish.

FTP est un excellent protocole pour accéder et transférer des fichiers, mais il a le défaut d'être un protocole en texte clair . En d'autres termes, son utilisation via une connexion Internet n'est pas sécurisée, car vos informations d'identification et vos données sont transmises sans cryptage. Le « S » dans SFTP signifie « Sécurisé » et tunnelise le protocole FTP via SSH, fournissant le cryptage nécessaire pour établir une connexion sécurisée.

Dans ce didacticiel, vous apprendrez :

  • Comment installer et configurer le démon SSH
  • Comment configurer un compte utilisateur et un groupe SFTP
  • Comment se connecter au serveur SFTP via l'interface graphique
  • Comment se connecter au serveur SFTP via la ligne de commande
Configuration logicielle requise et conventions de ligne de commande Linux
Catégorie Exigences, conventions ou version du logiciel utilisée
Système Ubuntu 22.04 Jammy Jellyfish
Logiciel Démon SSH
Autre Accès privilégié à votre système Linux en tant que root ou via le sudo commande.
Conventions # - nécessite que les commandes linux données soient exécutées avec les privilèges root soit directement en tant qu'utilisateur root, soit en utilisant sudo commande
$ – nécessite que les commandes linux données soient exécutées en tant qu'utilisateur normal non privilégié

Configurer le démon SSH

  1. SFTP nécessite SSH, donc si le serveur SSH n'est pas déjà installé sur votre système, installez-le en ouvrant un terminal de ligne de commande et en exécutant les commandes suivantes :
    $ sudo apt update
    $ sudo apt install ssh
    
  2. Une fois SSH installé, nous devons apporter quelques modifications au fichier de configuration SSHD. Utilisez nano ou votre éditeur de texte préféré pour l'ouvrir avec les privilèges root :
    $ sudo nano /etc/ssh/sshd_config
    
  3. Faites défiler jusqu'au bas du fichier et ajoutez les 5 lignes suivantes à la toute fin :
    Match group sftp
    ChrootDirectory /home
    X11Forwarding no
    AllowTcpForwarding no
    ForceCommand internal-sftp
    

    Les lignes ci-dessus autoriseront les utilisateurs dans le sftp groupe pour accéder à leurs répertoires personnels via SFTP, mais leur refuse l'accès SSH normal, de sorte qu'ils ne peuvent jamais accéder à un shell. Après avoir collé ces lignes, enregistrez et fermez le fichier de configuration.

  4. Exécutez la commande suivante afin de redémarrer le service SSH pour que ces nouvelles modifications prennent effet :
    $ sudo systemctl restart ssh
    

Avec SSH correctement configuré, nous pouvons passer à la configuration d'un compte SFTP pour un utilisateur.

Créer un compte utilisateur SFTP

Nous devons maintenant créer des comptes d'utilisateurs pour toute personne à qui nous souhaitons accorder un accès SFTP.

  1. Créez un nouveau groupe d'utilisateurs appelé sftp . Tous nos utilisateurs SFTP devront appartenir à ce groupe.

    $ sudo addgroup sftp
    
  2. Ensuite, créez un nouvel utilisateur. Nous appellerons simplement le nôtre sftpuser dans cet exemple, mais vous pouvez lui donner le nom que vous voulez. Assurez-vous également d'ajouter cet utilisateur au sftp groupe que nous venons de créer.
    $ sudo useradd -m sftpuser -g sftp
    
  3. Définir un mot de passe pour le nouveau sftpuser . Vous devrez entrer le nouveau mot de passe deux fois pour vérification.
    $ sudo passwd sftpuser
    
  4. Enfin, accordons un accès complet à l'utilisateur sur son propre répertoire personnel, mais refusons l'accès au répertoire pour tous les autres utilisateurs du système :
    $ sudo chmod 700 /home/sftpuser/
    

Notre configuration SFTP est terminée et nous pouvons maintenant nous connecter pour nous assurer que tout fonctionne correctement.

Se connecter à SFTP à l'aide de la ligne de commande

Vous pouvez vous connecter via SFTP avec le nom d'hôte ou l'adresse IP de votre système. Pour tester à partir du même système que celui sur lequel vous venez de configurer SFTP, en vous connectant à l'adresse de bouclage 127.0.0.1 fonctionnera très bien.

  1. Ouvrez un terminal et connectez-vous en utilisant le sftp commande et le sftpuser compte (ou quel que soit le nom que vous avez décidé d'utiliser pour le vôtre). Vous devrez entrer le mot de passe que nous avons configuré dans la section précédente pour cet utilisateur.
    $ sftp [email protected]
    
  2. Naviguez jusqu'au répertoire personnel de l'utilisateur, car c'est le seul endroit où il dispose d'autorisations. Ici, essayez de créer un nouveau répertoire pour confirmer que tout fonctionne comme prévu :
    sftp> cd sftpuser
    sftp> mkdir sftp-test
    sftp> ls
    sftp-test          
    sftp>
    

Se connecter à SFTP à l'aide de l'interface graphique

Si vous préférez utiliser une application graphique pour vous connecter à votre serveur SFTP, de nombreuses options sont disponibles. Vous pouvez utiliser votre client SFTP préféré ou celui intégré à Ubuntu 22.04 par défaut - le gestionnaire de fichiers Nautilus sur GNOME.

  1. Ouvrez le gestionnaire de fichiers Nautilus depuis le menu Applications.
  2. Cliquez sur "Autres emplacements" et saisissez sftp://127.0.0.1 dans la case "Se connecter au serveur" en bas de la fenêtre et cliquez sur se connecter.
  3. Saisissez les informations d'identification du compte SFTP que nous avons configurées précédemment et cliquez sur se connecter.
  4. Une fois la connexion établie, vous pourrez ouvrir votre répertoire personnel et voir le répertoire de test que vous avez créé précédemment.

Réflexions finales

Dans l'article Serveur SFTP, nous avons vu comment créer un serveur SFTP et ensuite s'y connecter sur Ubuntu 22.04 Jammy Jellyfish Linux. Nous avons également expliqué comment utiliser la ligne de commande et l'interface graphique Ubuntu pour se connecter au serveur FTP.

Dans cet article, nous avons vu comment sécuriser le protocole FTP en configurant SFTP sur notre système. En suivant les instructions de ce guide, les ordinateurs de votre réseau local ou sur Internet peuvent accéder en toute sécurité à votre système pour stocker et récupérer des fichiers, soit via la ligne de commande, soit via leur client SFTP préféré.


Ubuntu
  1. Comment configurer le serveur SFTP sur Ubuntu 20.04 Focal Fossa Linux

  2. Comment configurer et utiliser le serveur FTP dans Ubuntu Linux

  3. Comment configurer le serveur SFTP MySecureShell sur Ubuntu 18.04

  4. Comment activer le serveur SSH sur Ubuntu 22.04 Jammy Linux

  5. Comment configurer SSH sans mot de passe sous Linux

Comment configurer le partage du serveur Samba sur Ubuntu 22.04 Jammy Jellyfish Linux

Comment installer Go sur Ubuntu 22.04 Jammy Jellyfish Linux

Comment installer MATLAB sur Ubuntu 22.04 Jammy Jellyfish Linux

Comment installer VMware Workstation sur Ubuntu 22.04 Jammy Jellyfish Linux

Comment installer RStudio sur Ubuntu 22.04 Jammy Jellyfish Linux

Activer SSH sur Ubuntu 22.04 Jammy Jellyfish Linux