Authentification SSH par certificat

root linux

Dans ce cour article, nous allons voir comment mettre en place une authentication SSH par certificat au lieu d’utiliser l’authentication basique login / password.

L’authentication SSH par certificat se fait de la manière suivante :

– Le serveur SSH possède une clé publique.
– Le client possède une clé privée qui lui est propre
– Une passphrase peut venir en plus de la clé privée par sécurité.

Ce type d’authentication par certificat est beaucoup plus sécurisé qu’une authentication basique. Nous allons voir comment la mettre en place. J’utilise un CentOs 6.4 pour ce tutorial, mais il est valable pour n importe quel type de linux.

Passons maintenant à la pratique. Nous devons générer une clé RSA, pour se faire, tapez les commandes suivantes :

# mkdir ~/.ssh
# chmod 700 ~/.ssh
# ssh-keygen -t rsa -b 4096

A ce moment la, il vous est demandé tout un tas d’informations :

Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): /root/.ssh/alexnogard_key
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/alexnogard_key.
Your public key has been saved in /root/.ssh/alexnogard_key.pub.
The key fingerprint is:
xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx root@alexnogard.com

Passphrase en 10 et 30 caractères, Pas de caractères si vous voulez vous logger en automatique.

Vous avez maintenant votre clé publique généré avec le nom choisit.

Maintenant, connectez vous à votre serveur, et récupérez la clé privée (alexnogard_key ici). Une fois celle-ci récupéré, il faut changer le fichier de configuration ssh :

# vim /etc/ssh/sshd_config

Puis dé-commentez les lignes suivantes :

PubkeyAuthentication yes
RSAAuthentication yes

Vous pouvez maintenant vous logger sur votre serveur SSH en utilisant votre clé privée (attention de ne pas la perdre /!\. Vous pouvez également désactiver l’authentication par login password en commentant la ligne suivante :

PasswordAuthentication yes

J’espère que ce petit tuto vous a plu :) N’hésitez pas à commenter & partager ;).

About Alexandre Nogard

Check Also

Bash Scripting : Creation de vhosts automatisés avec Certificat Lets Encrypt

Bonjour à tous, Il y a quelques temps, j’avais posté un script bash permettant de …

Owncloud 9.X : Sécurisez votre serveur avec Fail2Ban sur Centos 7.X – Part3

Dans ce tuto, nous allons voir comment protéger Owncloud 9.X des brutes-forces sur les tentatives …

OpenVAS : Configuration & Utilisation sur CentOs 7 – Part 2

OpenVAS est installé sur notre CentOs 7, nous allons maintenant aborder la partie configuration et …

One comment

  1. Bonjour

    Ne pas confondre clés pub/priv et certificats. Où est indiqué l’usage de certificats dans cet article ?
    Salutations
    Laurent

Leave a Reply

Your email address will not be published. Required fields are marked *