Sécurisez votre SSH avec une connexion sans mot de passe

Sécurisez votre SSH avec une connexion sans mot de passe

Introduction

SSH est dans un outil essentiel pour tout utilisateur de Linux, mais de nombreuses personnes ne profitent pas de ses capacités robustes, à savoir les connexions sécurisées avec des clés.

Les paires de clés SSH vous permettent de vous connecter beaucoup plus en toute sécurité en limitant les connexions aux seuls ordinateurs qui possèdent une clé cryptée qui a été associée à la cible de connexion. Contrairement aux mots de passe, ces clés ne peuvent pas être devinées, il n'est donc pas nécessaire de s'inquiéter pour quelqu'un qui essaie des milliers de mots de passe pour pénétrer dans votre ordinateur ou votre serveur. Aucune clé n'égale aucun accès.

La bonne nouvelle est; Ces clés sont très faciles à configurer et à utiliser, vous n'avez donc pas à vous soucier de maintenir des configurations ou de patauger dans un long processus de configuration.

Le besoin de clés

Si vous dirigez une machine face au public, vous avez besoin de ces clés. Désolé, mais si vous utilisez l'authentification du mot de passe, vous êtes plus vulnérable.

Les mots de passe sont terribles. C'est bien connu depuis un certain temps maintenant. La plupart des principales applications Web et services publics qui reposent sur les mots de passe offrent une authentification à 2 facteurs car ils reconnaissent les lacunes des mots de passe les plus forts. Pour SSH, les clés sont le deuxième facteur d'authentification. Ils fournissent une deuxième étape pour garantir uniquement l'accès autorisé à un système.

Générer une paire de clés

La majorité des travaux ici se font sur le système client souhaité, et vous enverrez l'une des clés de la paire au serveur auquel vous souhaitez accéder.

Si vous ne voulez pas vous investir trop dans la personnalisation du processus de génération de clés, c'est en fait bien. La plupart des options offertes par la commande qui génèrent des clés ne sont pas si utiles dans des circonstances communes.

La façon la plus élémentaire de générer une clé est avec la commande Linux suivante.

$ ssh-keygen -t rsa

Avec cette commande, vous exécutez à peu près tout avec les valeurs par défaut. La seule chose que vous devez spécifier est le type de chiffrement utilisé, RSA.

Il vous demandera si vous souhaitez inclure un mot de passe pour votre clé. Ce n'est pas entièrement nécessaire, et beaucoup de gens ne le font pas. Si vous voulez et ajoutez une couche de sécurité, ajoutez également une phrase secrète forte. Sachez simplement que vous devrez y entrer chaque fois que vous vous connectez en utilisant cette clé.

Il existe une autre option que vous pouvez utiliser si vous souhaitez ajouter plus de sécurité à votre clé. En ajoutant le -b Flag à votre ssh-keygen commande, vous pouvez spécifier la quantité de bits utilisés. La valeur par défaut est 2048, ce qui devrait être bien dans la plupart des cas. Voici à quoi ressemble un exemple.

$ ssh-keygen -b 4096 -t rsa

Transfert d'une clé au serveur

Pour que le tout fonctionne, vous devez donner à la machine que vous essayez de vous connecter à une partie de la paire de clés. C'est pourquoi ils sont générés par paires, après tout. Les fichiers avec le .clé est votre clé privée. Ne partagez pas ni ne distribuez celui-là. Celui avec le .pub Cependant, l'extension doit être envoyée aux machines avec lesquelles vous souhaitez vous connecter.

La plupart des systèmes Linux sont livrés avec un script très simple qui vous permet de pousser votre clé publique vers les machines auxquelles vous souhaitez vous connecter. Ce script, ssh-copy-id vous permet d'envoyer votre clé avec une seule commande.

$ ssh-copy-id -i ~ /.ssh / id_rsa.Nom d'utilisateur de pub @ 192.168.1.1

Bien sûr, vous remplaceriez le nom d'utilisateur de l'utilisateur auquel vous vous connectez sur la machine cible et la propriété ip réelle de cet ordinateur. Un nom de domaine ou un nom d'hôte fonctionnerait aussi.

Si vous avez configuré votre serveur pour utiliser SSH sur un autre port, vous pouvez spécifier le port pour ssh-copy-id en utilisant le -p drapeau suivi du numéro de port souhaité.

Se connecter

L'enregistrement via SSH devrait être à peu près le même qu'auparavant, sauf que vous utiliserez votre paire de clés pour la validation. Connectez-vous simplement sur SSH comme vous le feriez normalement.

$ ssh nom d'utilisateur @ 192.168.1.1

Si vous n'avez pas configuré un mot de passe pour votre clé, vous vous connectez automatiquement. Si vous avez ajouté un mot de passe, vous serez invité à le fournir avant que le système vous enregistre.

Désactivation des connexions de mot de passe

Maintenant que vous utilisez des clés SSH pour vous connecter, c'est une bonne idée de désactiver les connexions basées sur le mot de passe pour SSH. De cette façon, vous n'êtes pas vulnérable à quelqu'un qui découvre le mot de passe à l'un de vos comptes et l'utilisez. Tous les connexions de mot de passe seront désactivées.

Sur la machine à laquelle vous souhaitez vous connecter, vraisemblablement un serveur, trouvez le fichier de configuration SSH. Il est généralement situé à / etc / ssh / sshd_config. Ouvrez ce fichier dans votre éditeur de texte de choix comme root ou avec sudo.

# vim / etc / ssh / sshd_config

Trouver la ligne, PasswordAuthentication et l'incommente, si vous le devez, et définir sa valeur à Non.

PasswordAuthentication Non

Il y a quelques autres options que vous voudrez peut-être modifier dans cette section pour une meilleure sécurité. De cette façon, seuls les connexions avec votre clé seront autorisées.

PasswordAuthentication No permisEmpTyPasswords pas d'authentification hôte non 

Lorsque vous avez terminé, enregistrez et sortez du fichier. Vous devrez redémarrer le service SSH pour que les modifications prennent effet.

SystemCTL Redémarrer SSHD

ou

/ etc / init.D / SSHD redémarrer

Réflexions de clôture

Avec seulement un effort minimal, la connexion SSH de votre serveur est devenue beaucoup plus sécurisée. Les mots de passe sont problématiques à bien des égards, et SSH est l'un des services les plus couramment attaqués sur Internet. Prenez le temps d'utiliser les clés SSH et assurez-vous que votre serveur est protégé contre les attaques de mot de passe.

Tutoriels Linux connexes:

  • Choses à faire après l'installation d'Ubuntu 20.04 Focal Fossa Linux
  • Choses à installer sur Ubuntu 20.04
  • Mint 20: Mieux que Ubuntu et Microsoft Windows?
  • Comment se connecter à un haut-parleur Bluetooth sur XFCE, Mate et…
  • Bases de mathématiques informatiques: binaire, décimal, hexadécimal, octal
  • Ubuntu 20.04 Hadoop
  • Système linux hung? Comment s'échapper vers la ligne de commande et…
  • Reprenez votre confidentialité et votre sécurité à l'ère numérique
  • Une introduction à l'automatisation Linux, des outils et des techniques
  • Liste des meilleurs outils Kali Linux pour les tests de pénétration et…