Aller au contenu


Photo

Bonnes pratiques gestion de clés SSH

ssh

  • Veuillez vous connecter pour répondre
2 réponses à ce sujet

#1 pomeh

pomeh

    Petit nouveau

  • Membres
  • Pip
  • 11 messages

Posté 07 January 2013 - 00:00

Bonjour,

J'aimerais connaitre les bonnes pratiques/recommandations en matière de gestion de clés SSH.
Si j'ai bien compris le principe de ces clés, on a, dans une situation simple, un poste serveur "S", il connait la clé publique de l'utilisateur "U". Cet utilisateur utilise un poste client "C" et possède la clé privée et le mot de passe associé. Lors de la connexion de U sur le serveur S, il doit y avoir une correspondance entre les 2 clés afin de valider l'authentification. Mais comment doit-on faire lorsqu'on a plusieurs utilisateurs, plusieurs postes clients et plusieurs postes serveurs ?

Par exemple, si on a 2 serveurs avec un seul utilisateur et un seul client, il suffit de publier la clé publique sur chacun des serveurs. Mais si on a 2 postes clients avec un seul serveur et toujours un seul utilisateur: est-ce qu'on doit dupliquer la clé privée sur les 2 postes clients ? Et comment gérer la connexion du serveur A vers le serveur B par un utilisateur ? Et par un script type cron ?

La question est toute bête en soi mais je sais pas comment m'y prendre pour gérer ça au mieux. Pour vous donner une idée approximative de ma problématique, j'utilise 2 postes clients, pour me connecter à 2 serveurs différents (bientôt 3 voire 4). Je me connecte aussi sur le deuxième serveur depuis le premier, et j'aimerais le faire en utilisant ma clé SSH. J'utilise aussi quelques services tels que Github où il y a besoin d'une clé publique pour s'authentifier, et je les utilise indifféremment à partir des postes clients ou serveurs. J'aimerais mettre en place un script automatique de "backup" d'un serveur vers le second, donc je pense qu'il y aura besoin à un moment ou à un autre d'une certaine forme d'authentification entre les deux serveurs: comment faire ?

J'aimerais vraiment avoir quelque chose de propre, pour éviter d'avoir trop de clés de partout et pour pouvoir simplifier l'authentification entre ces machines. Quels conseils pourriez-vous me donner ? Merci pour votre aide.

#2 venturic

venturic

    Petit nouveau

  • Membres
  • Pip
  • 2 messages

Posté 07 January 2013 - 15:26

j'avoue que l'intitulé de ton message me branché bien. Mais bon pas de réponse dommage...

Par contre après recherche ce site est en Français et explique pas mal la mise en place de clées ssh :
http://www.git-attit...r-les-cles-ssh/

Sachant qu'il faudra propager la ou les clées sur tous les serveurs. Qu'une passphrass est vivement recommandé et que l'outil pagent permet de retenir ta passphrass.
Si tu n'a que deux poste client rien ne sert de faire une réplication de tes clées publique/privé de façon automatique.

Ensuite pour la mise en place de ton backup inter serveur les clées SSH plus rsync et ou scp/sftp feront le boulots. Dans un aspect de volume de données limités.

#3 muh

muh

    Petit nouveau

  • Membres
  • Pip
  • 1 messages

Posté 09 January 2013 - 11:38

Salut

La règle générale est d'avoir une seule biclé (privé/public) par utilisateur. Tu publies la clé publique sur chaque serveur auquel tu dois accéder, et tu mets la clé privée sur chaque PC client (ou sur une clé usb).

Il est en effet conseillé de protéger la clé privée par un mot de passe, ce qui permet d'obtenir une authentification forte : un élément que tu connais (le mot de passe), et un élément que tu dois posséder "physiquement" (la clé).

Pour ton script de backup, tu peux créer une autre biclé dont la clé privée sera sur un serveur et la clé publique sur l'autre serveur. Le serveur avec la clé publique se connectera au serveur avec la clé privé.

Have fun ^^