Posez votre question Signaler

[SSH] Authentification ssh par cetificat

Dglingo - Dernière réponse le 18 sept. 2006 à 15:39
Bonjour,

Nous avons 5 serveurs sous Debian et nous y accédons en ssh avec un simple mot de passe. ( on a bien sur désactiver la connection du root en ssh).

Je voudrais mettre en place une authentification par certificat (X509) lorsque nous nous connectons sur le serveurs à distance par ssh.

Nous avons des certificats fournis par une autorité de certification.

J'ai cheché des infos mais j'ai trouvé rien de concret

Cela est-il posible?
Comment le met-on en place?

Merci pour tout renseignement

Dglingo
Lire la suite 

[SSH] Authentification ssh par cetificat »

8 réponses
Réponse
+8
moins plus
C'est possible et ca doit etre fait par les utilisateurs individuellement. Si ce n 'est pas deja fait il faut d'abord creer sur chaque pc (client et serveur !!) un repertoire "~/.ssh" dans le home de l'utilisateur avec les bonnes permissions, seulement "rxw" pour l'utilisateur et RIEN pour le groupe et les autres:
cd ~
mkdir .ssh
chmod 700 .ssh

).
Apres il faut creer sur le pc client une paire de cles privee-publique avec la commande: "ssh-keygen", peut-etre il faut y mettre les bonnes options, regarder soi meme avec "man ssh-keygen". Ce truc cree dans le dossier .ssh (sur le pc client !!) deux fichiers:
id_rsa => ca c'est la cle prive qui ne doit jamais quitter le pc client, et:
id_rsa.pub => ca c'est la cle publique qui va avec l'autre cle prive.

Apres il faut copier le fichier "id_rsa.pub" sur le pc serveur (on peut le faire par "scp" en mettant encore une fois le mot de pas) et sur le pc serveur il faut aller dans le dossier ~/.ssh et ajouter la ligne texte du fichier "id_rsa.pub" dans le fichier: "authorized_keys" avec:
cat id_rsa.pub >> ~/.ssh/authorized_keys

(ceci revient a creer le fichier "authorized_keys" s'il n'existe pas deja, sinon ca y ajoute la ligne avec la nouvelle cle publique).
Une fois c'est fait on pourra faire depuis le pc client un "ssh <nom_pc_serveur>" (ou un "scp ...", "sft ...") sans etre oblige de taper le mot de pass. En principe il faut refaire cette manipe pour chaque pc client qu'on souhaite utiliser sans mot de pass.

A savoir: si le fichier de la cle publique (le "id_rsa.pub") est perdu, c.-a-d. "vole" ou "copie" par quelqu'un d'autre ce n'est pas grave. Ca permettrait theoriquement au voleur de donner un acces a l'utilisateur victime (du vol) au pc du voleur mais pas a l'inverse (le voleur n'aurait pas acces au pc serveur sur le compte de l'utilisateur victime, pour ca il lui manque la cle privee). Pour la securite il faut eviter de se faire voler la cle prive (le fichier "id_rsa" qui est reste sur le pc client). Si toute fois ca arrive il faut effacer la ligne de la cle publique dans le "authorized_keys" sur le serveur et refaire la manipe en recreant une nouvelle pair de cles.

En theorie on pourrait copier la cle prive creee sur un pc client vers d'autres pcs client pour utiliser la meme cle pour se connecter mais ce serait une mauvaise chose a faire car l'operation de copie (entre deux pcs) est potentiellement un risque. La bonne facon de faire est de creer pour chaque client une nouvelle paire de cle et faire en sorte que la cle prive ne quitte jamais le pc client et d'ajouter la cle publique au "authorized_keys" sur le serveur (qui contiendrait ainsi beaucoup des lignes pour differentes cles, une cle par client).
Ajouter un commentaire
Réponse
+0
moins plus
bonjour
je viens de mettre en place un serveur ssh sous debian et jai cree une paire de cle prive/public et ai mis la cle publique ds le repertoire $HOME/.ssh/authorized_keys de lutilisateur concerne. cependant quand jessaie de me connecter a mon serveur avec cet utilisateur il me redemande mon mdp???
merci de votre aide
lami20j - 13 sept. 2006 à 18:35
Re,

c'est pas grave pour le doublon

J'ai écrit un tuto linux creation environnement openssh chroot
Ca pourra t'intéressé ;)

Avec ce que je t'ai donné chez moi la connexion par mot de passe et interidte.

lami20j
hermiote - 18 sept. 2006 à 15:28
merci encore une fois pour ta réactivité
j'essaie ta méthode et je te tiens au courant
pour ce qui est du chroot je réfléchis à la meilleure méthode à utiliser pour moi : ftp avec un chroot ds le prog genre proftpd ou passer la aussi par ssh et creer un veritable emplacement distinct en y copiant les commendes necessaires (ou accessibles) aux utilisateurs devant sy connecter.
a bientot
lami20j - 18 sept. 2006 à 15:39
Avec ce que j'ai fait c'est suffisant pour pouvoir utiliser sftp.
A toi de voir.

lami20j
Ajouter un commentaire
Réponse
+0
moins plus
Re,

ne pose pas la question 2 fois
ici et obliger utilisation couple cle prive cle publ#2006 09 13%2012%3A30%3A55

j'avais l'impression que je me suis trompé de thread ;)
lami20j
Ajouter un commentaire
Ce document intitulé « [SSH] Authentification ssh par cetificat » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Windows 8 - À quoi s'attendre ?