Retour au blog

Comment utiliser SSH pour se connecter à un serveur distant dans Ubuntu

Comment utiliser SSH pour se connecter à un serveur distant dans Ubuntu

Qu'est-ce que SSH ?

SSH signifie Secure Shell. Avec SSH, vous pouvez accéder à des machines distantes de manière sécurisée car la connexion est chiffrée. Avec la commande ssh du terminal Linux, nous pouvons nous connecter à des serveurs Linux distants et travailler comme s'il s'agissait de notre propre ordinateur. À la fin de ce tutoriel, vous devriez avoir une compréhension complète de la façon d'utiliser SSH pour vous connecter à un serveur distant sous Ubuntu.

Syntaxe

La syntaxe est la règle définissant comment utiliser la commande ssh. Vous pouvez réorganiser la syntaxe, mais un format direct doit être respecté. Ci-dessous se trouve un exemple de syntaxe pour utiliser la commande ssh :

Le nom de domaine ou l'adresse IP auquel vous souhaitez vous connecter est le remote_host comme indiqué dans la commande ci-dessus. Cette syntaxe suppose que votre nom d'utilisateur sur le système distant et votre système local est le même. Cependant, si les noms d'utilisateur ne sont pas les mêmes, vous pouvez l'indiquer avec cette commande :

Vous devrez vérifier votre identité en fournissant un mot de passe immédiatement lors de la connexion au serveur. Tapez la commande exit pour revenir à votre session locale.

Comment configurer SSH

Le fichier de configuration principal de sshd dans Ubuntu est situé à l'adresse /etc/ssh/sshd_config. Si vous modifiez la configuration SSH, les paramètres du serveur SSHD changeront automatiquement. Avant toute configuration, assurez-vous de sauvegarder la version actuelle du fichier à l'aide de cette commande :

Utilisez un éditeur de texte pour l'ouvrir :

Vous devriez laisser la plupart des paramètres inchangés dans ce fichier. Cependant, il y a quelques éléments auxquels vous devriez prêter attention :

Les déclarations de port indiquent le port sur lequel le serveur SSHD attend les connexions. La valeur par défaut est 22. Sauf raison spécifique, vous n'avez pas besoin de modifier ce paramètre :

La déclaration de la clé d'hôte indique où se trouve la clé d'hôte globale :

Le niveau de journaux (logs) à générer est indiqué par ces deux éléments. Si vous rencontrez des problèmes lors de l'utilisation de SSH, un excellent moyen d'identifier le problème consiste à augmenter le niveau de détail des journaux :

Ces options définissent certaines informations pour la connexion afin d'empêcher les connexions non autorisées lorsque les fichiers de configuration ne sont pas sécurisés :

Ces configurations de paramètres sont appelées fonctions de transfert X11 (X11 forwarding). De cette façon, vous pouvez afficher l'interface graphique du système distant sur le système local. Vous devez activer cette option sur le serveur tout en vous connectant avec l'option -X au client SSH.

Après avoir effectué les modifications, enregistrez le fichier et fermez-le en appuyant sur CTRL-X et Y, puis appuyez sur Entrée. Si vous modifiez les paramètres dans / etc / ssh / sshd_config, vous devez redémarrer le serveur sshd pour appliquer la modification :

Pour les systèmes systemd tels qu'Ubuntu 16.04 ou Debian Jessie, utilisez cette commande :

Testez minutieusement vos modifications pour vous assurer que tout fonctionne parfaitement. Vous devriez probablement garder quelques sessions actives si vous effectuez des modifications. De cette façon, vous pourrez restaurer la configuration si nécessaire.

Comment se connecter à SSH avec des clés ? C'est une bonne chose de se connecter à un système distant avec un mot de passe. Cependant, il est préférable de configurer une authentification par clé.

Qu'est-ce que l'authentification par clé ?

L'authentification par clé crée deux paires de clés appelées clé privée et clé publique. La clé privée se trouve sur l'ordinateur de l'utilisateur et a été protégée et gardée secrète. La clé publique peut être mise à la disposition de n'importe qui ou stockée sur n'importe quel serveur auquel vous souhaitez accéder. Si vous tentez de vous connecter à l'aide d'une paire de clés, le serveur utilise la clé publique pour générer un message destiné à l'ordinateur de l'utilisateur. L'utilisateur ne peut lire le message qu'à l'aide d'une clé privée. L'ordinateur de l'utilisateur renvoie ensuite une réponse au serveur et le serveur sait que l'utilisateur est authentique. Après avoir configuré la clé, l'ensemble du processus se déroule automatiquement en arrière-plan.

Comment créer des clés SSH

Les clés SSH doivent être générées sur l'ordinateur à partir duquel vous souhaitez vous connecter. Il s'agit généralement de votre ordinateur local. Saisissez la commande suivante dans la ligne de commande :

Ensuite, acceptez les valeurs par défaut en appuyant sur la TOUCHE ENTRÉE. Vos clés seront générées dans ~/.ssh/id_rsa.pub et ~/.ssh/id_rsa. Saisissez ensuite la commande ci-dessous pour vous rendre dans le répertoire .ssh :

Voici les permissions des fichiers :

list files in .ssh folder

Comme vous pouvez le voir, seul le propriétaire peut lire et écrire dans le fichier id_rsa. Par conséquent, vous devez le garder en sécurité. Cependant, vous pouvez partager le fichier id_rsa.pub et disposer des permissions appropriées pour cette activité. L'étape suivante consiste à transférer la clé publique vers le serveur en utilisant cette syntaxe :

Cela démarre une session SSH et vous devez utiliser un mot de passe pour l'authentification. Après avoir saisi le mot de passe, votre clé publique sera copiée dans le fichier de clés autorisées du serveur afin que vous puissiez vous connecter la prochaine fois sans mot de passe.

Comment désactiver l'authentification par mot de passe

Si une clé SSH est générée, vous pouvez améliorer la sécurité du serveur en désactivant l'authentification uniquement par mot de passe. Vous pouvez vous connecter au serveur à l'aide de la clé privée, la clé publique étant installée sur le serveur, au lieu d'utiliser la console.

Remarque : Assurez-vous d'avoir installé la clé publique sur le serveur avant de procéder à cette étape. Sinon, vous serez bloqué !

Ouvrez le fichier de configuration sshd à l'aide de cette commande :

Recherchez et décommentez la ligne concernant la vérification de l'authentification par mot de passe en supprimant le # au début. Ensuite, vous pouvez changer la valeur en “no” :

Les options PubkeyAuthentication et ChallengeResponseAuthentication sont définies par défaut et devraient ressembler à ceci :

Vous ne devez pas modifier ces deux paramètres. Après cela, enregistrez le fichier et fermez-le une fois les modifications effectuées. Ensuite, utilisez la commande ci-dessous pour redémarrer le démon SSH :

Enfin, vous avez désactivé l'authentification par mot de passe, et votre serveur n'est désormais accessible qu'en utilisant l'authentification par clé SSH.

Conclusion

Dans ce tutoriel, nous vous avons montré comment utiliser SSH pour vous connecter en toute sécurité à un serveur distant sous Ubuntu. Apprendre à utiliser SSH est fondamental si vous êtes administrateur système, donc après avoir maîtrisé ce tutoriel, vous pourrez passer à des fonctionnalités plus avancées de SSH.

Bonne informatique !

 

author

Akshay Nagpal

Auteur · CloudSigma

Preslav Dobrev est un designer créatif chez CloudSigma, axé sur une identité commerciale cohérente à travers des canaux marketing traditionnels et innovants. Il excelle à fusionner la vision artistique avec le marketing stratégique pour créer des récits de marque percutants.

Commentaires

Aucun commentaire pour l'instant. Soyez le premier.