Léa-Linux & amis :   LinuxFR   GCU-Squad   Zarb.Org   GNU
Trucs:Connection SSH sans mot de passe
Léa (Fred)<fred@lea-linux.org>

Vous allez me demander : "Une connection SSH (sécurisée) sans mot de passe (non sécurisé), à quoi cela peut-il servir ?".

Supposons que vous ayez 2 postes "sûrs" (c'est-à-dire dont vous n'avez pas spécialement peur qu'on puisse prendre le contrôle), si vous avez réussi a vous connecter sur le premier, c'est pénible de devoir taper un mot de passe pour faire un truc sur le second. Surtout que si quelqu'un vient de prendre possession de votre compte sur le premier poste, de toute façon, le second sera en sa possession dans pas longtemps.

solution avec une clef ssh sans mot de passe

Le but n'est pas de se passer de sécurité (au contraire). La solution du problème est la suivante. Nous avons deux postes : frodon.tux et gandalf.tux. Sur les deux postes sshd tourne et est correctement configuré. Sur chacun des postes on génére des clés :

[fred@frodon ~]$ ssh-keygen -t rsa

(entrez une passe-phrase vide), et :

[bibi@gandalf ~]$ ssh-keygen -t rsa

(entrez aussi une passe-phrase vide). Ensuite, il suffit de copier la clé publique d'un poste sur l'autre dans la liste des clés autorisées :

[fred@frodon ~]$ scp ~fred/.ssh/id_rsa.pub bibi@gandalf.tux:~bibi/.ssh/authorized_keys2

et :

[bibi@gandalf ~]$ scp ~bibi/.ssh/id_rsa.pub fred@frodon.tux:~fred/.ssh/authorized_keys2

(il peut falloir remplacer : authorized_keys2 par authorized_keys). Et voilà, à partir de maintenant, une connection :

[bibi@gandalf ~]$ ssh fred@frodon

ou

[fred@frodon ~]$ ssh bibi@gandalf

ne demandera pas de mot de passe. Mais ce ne sera pas pour autant trop "désécurisée", puisque pour se connecter sans mot de passe sur frodon il faudra réussir à se connecter avec mot de passe sur gandalf et réciproquement.

Note (1) : Si vous voulez seulement vous connecter sur frodon sans mot de passe depuis gandalf, il n'est pas nécessaire générer la clé sur frodon.
Note (2) : Si vous avez plusieurs "authorized_keys" il suffit de les concaténer.

solution avec ssh-agent

Ajout de point bonnet chez 9online point fr Michel Bonnet

Personnellement, je trouve que c'est dangereux de laisser une clef privée sans mot de passe, car si quelqu'un arrive à accéder au répertoire où elle est stockée, il peut utiliser immédiatement la clé.

Il est donc préférable de passer par un agent d'authentification.
il faut générer les clés de façon identique (mais avec un mot de passe, ce qui permet de crypter la clé privée).

Note (Fred) : mais cette solution ne permet pas, entre autre, de monter un système de fichier via shfs au démarrage de la machine puisqu'il faut que le propriétaire de la clé doit taper le mot de passe lors de sa première (première de la session) utilisation , alors que la première le permet. Ces deux méthodes répondent en fait à des utilisations différentes.

Pour les utiliser :

  • ssh-agent screen (lancement de l'agent)
  • ssh-add <ma liste de clés privée>

(il va demander le mot de passe pour chacune des clés s'il est différent, ou une seule fois, si c'est le même)

pour se connecter :

ssh bibi@gandalf marchera automatiquement sans retaper le mot de passe, et ce tant que l'agent tourne.

Pour terminer,
la sécurité est un vaste sujet, qui au fond dépend de son appréciation du risque, ce qui est éminemment très personnel.

Affichages

Serveur hébergé par ST-Hebergement et Lost-Oasis / IRC hébergé par FreeNode / NS secondaire hébergé par XName
Sauf mention contraire, les documentations publiées sont sous licence Creative-Commons CC-BY-SA