web-dev-qa-db-fra.com

Pourquoi l'authentification par clé SSH est-elle meilleure que l'authentification par mot de passe?

Ce n’est pas tant une question technique que conceptuelle. Je comprends que la cryptographie utilisée dans une clé SSH est beaucoup plus puissante qu'un mot de passe habituel, mais je ne comprends pas pourquoi il est considéré comme plus sécurisé.

La plupart des tutoriels que j'ai lus suggèrent d'utiliser l'authentification par clé SSH plutôt que par mot de passe. Mais si j'ai bien compris, quiconque a ensuite accès à un ordinateur client pré-approuvé pourra alors se connecter au serveur, ce qui signifie que le niveau de sécurité fourni par la clé SSH est aussi puissant que le niveau de sécurité du serveur physique. machine cliente.

Par exemple, si je configure une clé SSH sur mon téléphone pour se connecter à mon ordinateur personnel, si je perds mon téléphone et que quelqu'un parvient à le déverrouiller, il pourra se connecter à mon ordinateur personnel. Je sais que je peux ensuite retirer la clé de mon téléphone de mon ordinateur personnel, mais je suis vulnérable tant que je ne réalise pas que le périphérique client a été perdu/endommagé.

Ai-je mal compris quelque chose ou ces préoccupations sont-elles valables?

43
BoomShaka

Si votre service SSH autorise l'authentification par mot de passe, votre serveur SSH connecté à Internet sera martelé jour et nuit par des réseaux réseau tentant de deviner les noms d'utilisateur et les mots de passe. Le réseau de bot n'a besoin d'aucune information, il peut simplement essayer des noms et des mots de passe populaires. Il y a énormément de personnes nommées john avec le mot de passe qwerty123. En dehors de toute autre chose, cela obstrue vos journaux.

Si votre service SSH n'autorise que l'authentification par clé publique, un attaquant a besoin d'une copie d'une clé privée correspondant à une clé publique stockée sur le serveur. Ils ne peuvent pas simplement faire des attaques aléatoires, ils doivent avoir une connaissance préalable de vos utilisateurs et pouvoir voler une clé privée sur le PC d'un utilisateur autorisé de votre serveur SSH.

Le fait que les clés privées soient souvent protégées par une longue phrase de passe revêt une importance secondaire.

Mettre à jour:

Comme le soulignent les commentaires et l'expérience que j'ai vécue, le fait de déplacer votre service SSH du port 22 vers un port de numéro élevé a une incidence considérable sur le nombre de tentatives de connexion non autorisées figurant dans vos journaux. Cela vaut la peine d'être fait, mais je le considère comme une forme de sécurité par obscurité (un faux sentiment de sécurité). Tôt ou tard, les réseaux de robots vont implémenter une analyse lente des ports furtifs ou vous serez délibérément ciblé. Mieux vaut être préparé.

J'utilise toujours une phrase secrète longue pour protéger ma clé privée. Je suppose que cela revêt une importance particulière pour les appareils mobiles qui pourraient être plus facilement perdus ou volés.

En outre, http://xkcd.com/538/

Security

38
RedGrittyBrick

La logique est qu'il y a beaucoup plus de combinaisons de clés SSH que de mots de passe, il est donc beaucoup plus difficile à deviner. L'utilisation de clés SSH vous permet également de désactiver l'authentification par mot de passe, ce qui signifie que la plupart des attaques automatisées faisant le tour d'Internet seront inutiles.

En ce qui concerne la sécurité physique, il n'y a pas de différence entre enregistrer un mot de passe et disposer d'une clé SSH non chiffrée sur votre appareil en cas de perte ou de vol. Le seul avantage que vous auriez, c'est que personne ne possède votre mot de passe et que vous pouvez théoriquement vous assurer que tous les périphériques possèdent des certificats SSH différents, vous pouvez donc simplement désactiver celui de votre téléphone.

Je crois qu'il est également possible de protéger par mot de passe les clés SSH.

7
Matthew Steeples

Les mots de passe peuvent également être compromis si votre clavier est surveillé "par-dessus votre épaule". En outre, l'utilisation de mots de passe similaires dans de nombreux endroits est une faiblesse, en particulier si le mot de passe est parfois utilisé sur un ordinateur moins sécurisé avec des enregistreurs de frappe potentiels.

Vous avez raison de dire qu'une clé non chiffrée peut être lue sur le disque dur en cas de vol de l'ordinateur; cryptez-la avec un mot de passe.

Si votre ordinateur est compromis par un logiciel malveillant, vous êtes bourré quand même .. - quelqu'un peut obtenir la clé cryptée et le journal des clés avec votre mot de passe.

1
eug