Accueil

Accueil Référence

Référence SSH

Tout sur SSH : types de clés (Ed25519, RSA, ECDSA), config client (~/.ssh/config), bonnes pratiques de sécurisation, commandes utiles (tunnel, ProxyJump, ssh-copy-id, etc.).

🔐 Référence SSH

Tout ce qu'un sysadmin doit savoir sur SSH : types de clés, configuration cliente (~/.ssh/config), bonnes pratiques de sécurisation, et commandes utiles au quotidien.

🔑 Types de clés 44

Ed25519 (recommandé)

Algorithme moderne basé sur les courbes elliptiques Edwards. Plus rapide et plus court que RSA pour une sécurité équivalente. Disponible depuis OpenSSH 6.5 (2014).

ssh-keygen -t ed25519 -C "votre@email.com"

Ed25519 (recommandé)

Algorithme moderne basé sur les courbes elliptiques Edwards. Plus rapide et plus court que RSA pour une sécurité équivalente. Disponible depuis OpenSSH 6.5 (2014).

ssh-keygen -t ed25519 -C "votre@email.com"

Ed25519 (recommandé)

Algorithme moderne basé sur les courbes elliptiques Edwards. Plus rapide et plus court que RSA pour une sécurité équivalente. Disponible depuis OpenSSH 6.5 (2014).

ssh-keygen -t ed25519 -C "votre@email.com"

Ed25519 (recommandé)

Algorithme moderne basé sur les courbes elliptiques Edwards. Plus rapide et plus court que RSA pour une sécurité équivalente. Disponible depuis OpenSSH 6.5 (2014).

ssh-keygen -t ed25519 -C "votre@email.com"

Ed25519 (recommandé)

Algorithme moderne basé sur les courbes elliptiques Edwards. Plus rapide et plus court que RSA pour une sécurité équivalente. Disponible depuis OpenSSH 6.5 (2014).

ssh-keygen -t ed25519 -C "votre@email.com"

Ed25519 (recommandé)

Algorithme moderne basé sur les courbes elliptiques Edwards. Plus rapide et plus court que RSA pour une sécurité équivalente. Disponible depuis OpenSSH 6.5 (2014).

ssh-keygen -t ed25519 -C "votre@email.com"

Ed25519 (recommandé)

Algorithme moderne basé sur les courbes elliptiques Edwards. Plus rapide et plus court que RSA pour une sécurité équivalente. Disponible depuis OpenSSH 6.5 (2014).

ssh-keygen -t ed25519 -C "votre@email.com"

Ed25519 (recommandé)

Algorithme moderne basé sur les courbes elliptiques Edwards. Plus rapide et plus court que RSA pour une sécurité équivalente. Disponible depuis OpenSSH 6.5 (2014).

ssh-keygen -t ed25519 -C "votre@email.com"

Ed25519 (recommandé)

Algorithme moderne basé sur les courbes elliptiques Edwards. Plus rapide et plus court que RSA pour une sécurité équivalente. Disponible depuis OpenSSH 6.5 (2014).

ssh-keygen -t ed25519 -C "votre@email.com"

Ed25519 (recommandé)

Algorithme moderne basé sur les courbes elliptiques Edwards. Plus rapide et plus court que RSA pour une sécurité équivalente. Disponible depuis OpenSSH 6.5 (2014).

ssh-keygen -t ed25519 -C "votre@email.com"

Ed25519 (recommandé)

Algorithme moderne basé sur les courbes elliptiques Edwards. Plus rapide et plus court que RSA pour une sécurité équivalente. Disponible depuis OpenSSH 6.5 (2014).

ssh-keygen -t ed25519 -C "votre@email.com"

ECDSA

Elliptic Curve DSA. Bonne alternative à Ed25519 si compatibilité requise. Courbes recommandées : nistp256, nistp384, nistp521. Évite nistp192 (faible).

ssh-keygen -t ecdsa -b 521 -C "votre@email.com"

ECDSA

Elliptic Curve DSA. Bonne alternative à Ed25519 si compatibilité requise. Courbes recommandées : nistp256, nistp384, nistp521. Évite nistp192 (faible).

ssh-keygen -t ecdsa -b 521 -C "votre@email.com"

ECDSA

Elliptic Curve DSA. Bonne alternative à Ed25519 si compatibilité requise. Courbes recommandées : nistp256, nistp384, nistp521. Évite nistp192 (faible).

ssh-keygen -t ecdsa -b 521 -C "votre@email.com"

ECDSA

Elliptic Curve DSA. Bonne alternative à Ed25519 si compatibilité requise. Courbes recommandées : nistp256, nistp384, nistp521. Évite nistp192 (faible).

ssh-keygen -t ecdsa -b 521 -C "votre@email.com"

ECDSA

Elliptic Curve DSA. Bonne alternative à Ed25519 si compatibilité requise. Courbes recommandées : nistp256, nistp384, nistp521. Évite nistp192 (faible).

ssh-keygen -t ecdsa -b 521 -C "votre@email.com"

ECDSA

Elliptic Curve DSA. Bonne alternative à Ed25519 si compatibilité requise. Courbes recommandées : nistp256, nistp384, nistp521. Évite nistp192 (faible).

ssh-keygen -t ecdsa -b 521 -C "votre@email.com"

ECDSA

Elliptic Curve DSA. Bonne alternative à Ed25519 si compatibilité requise. Courbes recommandées : nistp256, nistp384, nistp521. Évite nistp192 (faible).

ssh-keygen -t ecdsa -b 521 -C "votre@email.com"

ECDSA

Elliptic Curve DSA. Bonne alternative à Ed25519 si compatibilité requise. Courbes recommandées : nistp256, nistp384, nistp521. Évite nistp192 (faible).

ssh-keygen -t ecdsa -b 521 -C "votre@email.com"

ECDSA

Elliptic Curve DSA. Bonne alternative à Ed25519 si compatibilité requise. Courbes recommandées : nistp256, nistp384, nistp521. Évite nistp192 (faible).

ssh-keygen -t ecdsa -b 521 -C "votre@email.com"

ECDSA

Elliptic Curve DSA. Bonne alternative à Ed25519 si compatibilité requise. Courbes recommandées : nistp256, nistp384, nistp521. Évite nistp192 (faible).

ssh-keygen -t ecdsa -b 521 -C "votre@email.com"

ECDSA

Elliptic Curve DSA. Bonne alternative à Ed25519 si compatibilité requise. Courbes recommandées : nistp256, nistp384, nistp521. Évite nistp192 (faible).

ssh-keygen -t ecdsa -b 521 -C "votre@email.com"

RSA

Algorithme historique. Utilise une taille minimum de 3072 bits (4096 recommandé). 2048 bits est désormais considéré comme insuffisant.

ssh-keygen -t rsa -b 4096 -C "votre@email.com"

RSA

Algorithme historique. Utilise une taille minimum de 3072 bits (4096 recommandé). 2048 bits est désormais considéré comme insuffisant.

ssh-keygen -t rsa -b 4096 -C "votre@email.com"

RSA

Algorithme historique. Utilise une taille minimum de 3072 bits (4096 recommandé). 2048 bits est désormais considéré comme insuffisant.

ssh-keygen -t rsa -b 4096 -C "votre@email.com"

RSA

Algorithme historique. Utilise une taille minimum de 3072 bits (4096 recommandé). 2048 bits est désormais considéré comme insuffisant.

ssh-keygen -t rsa -b 4096 -C "votre@email.com"

RSA

Algorithme historique. Utilise une taille minimum de 3072 bits (4096 recommandé). 2048 bits est désormais considéré comme insuffisant.

ssh-keygen -t rsa -b 4096 -C "votre@email.com"

RSA

Algorithme historique. Utilise une taille minimum de 3072 bits (4096 recommandé). 2048 bits est désormais considéré comme insuffisant.

ssh-keygen -t rsa -b 4096 -C "votre@email.com"

RSA

Algorithme historique. Utilise une taille minimum de 3072 bits (4096 recommandé). 2048 bits est désormais considéré comme insuffisant.

ssh-keygen -t rsa -b 4096 -C "votre@email.com"

RSA

Algorithme historique. Utilise une taille minimum de 3072 bits (4096 recommandé). 2048 bits est désormais considéré comme insuffisant.

ssh-keygen -t rsa -b 4096 -C "votre@email.com"

RSA

Algorithme historique. Utilise une taille minimum de 3072 bits (4096 recommandé). 2048 bits est désormais considéré comme insuffisant.

ssh-keygen -t rsa -b 4096 -C "votre@email.com"

RSA

Algorithme historique. Utilise une taille minimum de 3072 bits (4096 recommandé). 2048 bits est désormais considéré comme insuffisant.

ssh-keygen -t rsa -b 4096 -C "votre@email.com"

RSA

Algorithme historique. Utilise une taille minimum de 3072 bits (4096 recommandé). 2048 bits est désormais considéré comme insuffisant.

ssh-keygen -t rsa -b 4096 -C "votre@email.com"

DSA (déprécié)

NE PAS UTILISER. DSA limité à 1024 bits, désactivé par défaut depuis OpenSSH 7.0. Migre tes anciennes clés DSA vers Ed25519 ou RSA 4096.

# Ne plus utiliser

DSA (déprécié)

NE PAS UTILISER. DSA limité à 1024 bits, désactivé par défaut depuis OpenSSH 7.0. Migre tes anciennes clés DSA vers Ed25519 ou RSA 4096.

# Ne plus utiliser

DSA (déprécié)

NE PAS UTILISER. DSA limité à 1024 bits, désactivé par défaut depuis OpenSSH 7.0. Migre tes anciennes clés DSA vers Ed25519 ou RSA 4096.

# Ne plus utiliser

DSA (déprécié)

NE PAS UTILISER. DSA limité à 1024 bits, désactivé par défaut depuis OpenSSH 7.0. Migre tes anciennes clés DSA vers Ed25519 ou RSA 4096.

# Ne plus utiliser

DSA (déprécié)

NE PAS UTILISER. DSA limité à 1024 bits, désactivé par défaut depuis OpenSSH 7.0. Migre tes anciennes clés DSA vers Ed25519 ou RSA 4096.

# Ne plus utiliser

DSA (déprécié)

NE PAS UTILISER. DSA limité à 1024 bits, désactivé par défaut depuis OpenSSH 7.0. Migre tes anciennes clés DSA vers Ed25519 ou RSA 4096.

# Ne plus utiliser

DSA (déprécié)

NE PAS UTILISER. DSA limité à 1024 bits, désactivé par défaut depuis OpenSSH 7.0. Migre tes anciennes clés DSA vers Ed25519 ou RSA 4096.

# Ne plus utiliser

DSA (déprécié)

NE PAS UTILISER. DSA limité à 1024 bits, désactivé par défaut depuis OpenSSH 7.0. Migre tes anciennes clés DSA vers Ed25519 ou RSA 4096.

# Ne plus utiliser

DSA (déprécié)

NE PAS UTILISER. DSA limité à 1024 bits, désactivé par défaut depuis OpenSSH 7.0. Migre tes anciennes clés DSA vers Ed25519 ou RSA 4096.

# Ne plus utiliser

DSA (déprécié)

NE PAS UTILISER. DSA limité à 1024 bits, désactivé par défaut depuis OpenSSH 7.0. Migre tes anciennes clés DSA vers Ed25519 ou RSA 4096.

# Ne plus utiliser

DSA (déprécié)

NE PAS UTILISER. DSA limité à 1024 bits, désactivé par défaut depuis OpenSSH 7.0. Migre tes anciennes clés DSA vers Ed25519 ou RSA 4096.

# Ne plus utiliser
⚙️ Configuration client (~/.ssh/config) 44

Host : alias d'hôte

Définit un alias et les options pour une cible. Permet de taper `ssh prod` au lieu de `ssh -i ~/.ssh/prod.pem -p 2222 user@server.example.com`.

Host prod
    HostName server.example.com
    User ubuntu
    Port 2222
    IdentityFile ~/.ssh/prod.pem

Host : alias d'hôte

Définit un alias et les options pour une cible. Permet de taper `ssh prod` au lieu de `ssh -i ~/.ssh/prod.pem -p 2222 user@server.example.com`.

Host prod
    HostName server.example.com
    User ubuntu
    Port 2222
    IdentityFile ~/.ssh/prod.pem

Host : alias d'hôte

Définit un alias et les options pour une cible. Permet de taper `ssh prod` au lieu de `ssh -i ~/.ssh/prod.pem -p 2222 user@server.example.com`.

Host prod
    HostName server.example.com
    User ubuntu
    Port 2222
    IdentityFile ~/.ssh/prod.pem

Host : alias d'hôte

Définit un alias et les options pour une cible. Permet de taper `ssh prod` au lieu de `ssh -i ~/.ssh/prod.pem -p 2222 user@server.example.com`.

Host prod
    HostName server.example.com
    User ubuntu
    Port 2222
    IdentityFile ~/.ssh/prod.pem

Host : alias d'hôte

Définit un alias et les options pour une cible. Permet de taper `ssh prod` au lieu de `ssh -i ~/.ssh/prod.pem -p 2222 user@server.example.com`.

Host prod
    HostName server.example.com
    User ubuntu
    Port 2222
    IdentityFile ~/.ssh/prod.pem

Host : alias d'hôte

Définit un alias et les options pour une cible. Permet de taper `ssh prod` au lieu de `ssh -i ~/.ssh/prod.pem -p 2222 user@server.example.com`.

Host prod
    HostName server.example.com
    User ubuntu
    Port 2222
    IdentityFile ~/.ssh/prod.pem

Host : alias d'hôte

Définit un alias et les options pour une cible. Permet de taper `ssh prod` au lieu de `ssh -i ~/.ssh/prod.pem -p 2222 user@server.example.com`.

Host prod
    HostName server.example.com
    User ubuntu
    Port 2222
    IdentityFile ~/.ssh/prod.pem

Host : alias d'hôte

Définit un alias et les options pour une cible. Permet de taper `ssh prod` au lieu de `ssh -i ~/.ssh/prod.pem -p 2222 user@server.example.com`.

Host prod
    HostName server.example.com
    User ubuntu
    Port 2222
    IdentityFile ~/.ssh/prod.pem

Host : alias d'hôte

Définit un alias et les options pour une cible. Permet de taper `ssh prod` au lieu de `ssh -i ~/.ssh/prod.pem -p 2222 user@server.example.com`.

Host prod
    HostName server.example.com
    User ubuntu
    Port 2222
    IdentityFile ~/.ssh/prod.pem

Host : alias d'hôte

Définit un alias et les options pour une cible. Permet de taper `ssh prod` au lieu de `ssh -i ~/.ssh/prod.pem -p 2222 user@server.example.com`.

Host prod
    HostName server.example.com
    User ubuntu
    Port 2222
    IdentityFile ~/.ssh/prod.pem

Host : alias d'hôte

Définit un alias et les options pour une cible. Permet de taper `ssh prod` au lieu de `ssh -i ~/.ssh/prod.pem -p 2222 user@server.example.com`.

Host prod
    HostName server.example.com
    User ubuntu
    Port 2222
    IdentityFile ~/.ssh/prod.pem

ProxyJump : passer par un bastion

Permet d'accéder à un serveur interne via un bastion en une seule commande. Plus simple et sécurisé que ProxyCommand.

Host server-prive
    HostName 10.0.1.42
    User admin
    ProxyJump bastion.example.com

ProxyJump : passer par un bastion

Permet d'accéder à un serveur interne via un bastion en une seule commande. Plus simple et sécurisé que ProxyCommand.

Host server-prive
    HostName 10.0.1.42
    User admin
    ProxyJump bastion.example.com

ProxyJump : passer par un bastion

Permet d'accéder à un serveur interne via un bastion en une seule commande. Plus simple et sécurisé que ProxyCommand.

Host server-prive
    HostName 10.0.1.42
    User admin
    ProxyJump bastion.example.com

ProxyJump : passer par un bastion

Permet d'accéder à un serveur interne via un bastion en une seule commande. Plus simple et sécurisé que ProxyCommand.

Host server-prive
    HostName 10.0.1.42
    User admin
    ProxyJump bastion.example.com

ProxyJump : passer par un bastion

Permet d'accéder à un serveur interne via un bastion en une seule commande. Plus simple et sécurisé que ProxyCommand.

Host server-prive
    HostName 10.0.1.42
    User admin
    ProxyJump bastion.example.com

ProxyJump : passer par un bastion

Permet d'accéder à un serveur interne via un bastion en une seule commande. Plus simple et sécurisé que ProxyCommand.

Host server-prive
    HostName 10.0.1.42
    User admin
    ProxyJump bastion.example.com

ProxyJump : passer par un bastion

Permet d'accéder à un serveur interne via un bastion en une seule commande. Plus simple et sécurisé que ProxyCommand.

Host server-prive
    HostName 10.0.1.42
    User admin
    ProxyJump bastion.example.com

ProxyJump : passer par un bastion

Permet d'accéder à un serveur interne via un bastion en une seule commande. Plus simple et sécurisé que ProxyCommand.

Host server-prive
    HostName 10.0.1.42
    User admin
    ProxyJump bastion.example.com

ProxyJump : passer par un bastion

Permet d'accéder à un serveur interne via un bastion en une seule commande. Plus simple et sécurisé que ProxyCommand.

Host server-prive
    HostName 10.0.1.42
    User admin
    ProxyJump bastion.example.com

ProxyJump : passer par un bastion

Permet d'accéder à un serveur interne via un bastion en une seule commande. Plus simple et sécurisé que ProxyCommand.

Host server-prive
    HostName 10.0.1.42
    User admin
    ProxyJump bastion.example.com

ProxyJump : passer par un bastion

Permet d'accéder à un serveur interne via un bastion en une seule commande. Plus simple et sécurisé que ProxyCommand.

Host server-prive
    HostName 10.0.1.42
    User admin
    ProxyJump bastion.example.com

ControlMaster : multiplexage de connexion

Réutilise une connexion SSH existante pour les commandes suivantes. Accélère beaucoup les commandes répétées (rsync, scp, git push).

Host *
    ControlMaster auto
    ControlPath ~/.ssh/control-%r@%h:%p
    ControlPersist 10m

ControlMaster : multiplexage de connexion

Réutilise une connexion SSH existante pour les commandes suivantes. Accélère beaucoup les commandes répétées (rsync, scp, git push).

Host *
    ControlMaster auto
    ControlPath ~/.ssh/control-%r@%h:%p
    ControlPersist 10m

ControlMaster : multiplexage de connexion

Réutilise une connexion SSH existante pour les commandes suivantes. Accélère beaucoup les commandes répétées (rsync, scp, git push).

Host *
    ControlMaster auto
    ControlPath ~/.ssh/control-%r@%h:%p
    ControlPersist 10m

ControlMaster : multiplexage de connexion

Réutilise une connexion SSH existante pour les commandes suivantes. Accélère beaucoup les commandes répétées (rsync, scp, git push).

Host *
    ControlMaster auto
    ControlPath ~/.ssh/control-%r@%h:%p
    ControlPersist 10m

ControlMaster : multiplexage de connexion

Réutilise une connexion SSH existante pour les commandes suivantes. Accélère beaucoup les commandes répétées (rsync, scp, git push).

Host *
    ControlMaster auto
    ControlPath ~/.ssh/control-%r@%h:%p
    ControlPersist 10m

ControlMaster : multiplexage de connexion

Réutilise une connexion SSH existante pour les commandes suivantes. Accélère beaucoup les commandes répétées (rsync, scp, git push).

Host *
    ControlMaster auto
    ControlPath ~/.ssh/control-%r@%h:%p
    ControlPersist 10m

ControlMaster : multiplexage de connexion

Réutilise une connexion SSH existante pour les commandes suivantes. Accélère beaucoup les commandes répétées (rsync, scp, git push).

Host *
    ControlMaster auto
    ControlPath ~/.ssh/control-%r@%h:%p
    ControlPersist 10m

ControlMaster : multiplexage de connexion

Réutilise une connexion SSH existante pour les commandes suivantes. Accélère beaucoup les commandes répétées (rsync, scp, git push).

Host *
    ControlMaster auto
    ControlPath ~/.ssh/control-%r@%h:%p
    ControlPersist 10m

ControlMaster : multiplexage de connexion

Réutilise une connexion SSH existante pour les commandes suivantes. Accélère beaucoup les commandes répétées (rsync, scp, git push).

Host *
    ControlMaster auto
    ControlPath ~/.ssh/control-%r@%h:%p
    ControlPersist 10m

ControlMaster : multiplexage de connexion

Réutilise une connexion SSH existante pour les commandes suivantes. Accélère beaucoup les commandes répétées (rsync, scp, git push).

Host *
    ControlMaster auto
    ControlPath ~/.ssh/control-%r@%h:%p
    ControlPersist 10m

ControlMaster : multiplexage de connexion

Réutilise une connexion SSH existante pour les commandes suivantes. Accélère beaucoup les commandes répétées (rsync, scp, git push).

Host *
    ControlMaster auto
    ControlPath ~/.ssh/control-%r@%h:%p
    ControlPersist 10m

IdentitiesOnly : ne tester qu'une clé

Empêche SSH de tester toutes tes clés (utile si tu en as beaucoup et que le serveur a un MaxAuthTries bas).

Host server
    IdentityFile ~/.ssh/specific-key
    IdentitiesOnly yes

IdentitiesOnly : ne tester qu'une clé

Empêche SSH de tester toutes tes clés (utile si tu en as beaucoup et que le serveur a un MaxAuthTries bas).

Host server
    IdentityFile ~/.ssh/specific-key
    IdentitiesOnly yes

IdentitiesOnly : ne tester qu'une clé

Empêche SSH de tester toutes tes clés (utile si tu en as beaucoup et que le serveur a un MaxAuthTries bas).

Host server
    IdentityFile ~/.ssh/specific-key
    IdentitiesOnly yes

IdentitiesOnly : ne tester qu'une clé

Empêche SSH de tester toutes tes clés (utile si tu en as beaucoup et que le serveur a un MaxAuthTries bas).

Host server
    IdentityFile ~/.ssh/specific-key
    IdentitiesOnly yes

IdentitiesOnly : ne tester qu'une clé

Empêche SSH de tester toutes tes clés (utile si tu en as beaucoup et que le serveur a un MaxAuthTries bas).

Host server
    IdentityFile ~/.ssh/specific-key
    IdentitiesOnly yes

IdentitiesOnly : ne tester qu'une clé

Empêche SSH de tester toutes tes clés (utile si tu en as beaucoup et que le serveur a un MaxAuthTries bas).

Host server
    IdentityFile ~/.ssh/specific-key
    IdentitiesOnly yes

IdentitiesOnly : ne tester qu'une clé

Empêche SSH de tester toutes tes clés (utile si tu en as beaucoup et que le serveur a un MaxAuthTries bas).

Host server
    IdentityFile ~/.ssh/specific-key
    IdentitiesOnly yes

IdentitiesOnly : ne tester qu'une clé

Empêche SSH de tester toutes tes clés (utile si tu en as beaucoup et que le serveur a un MaxAuthTries bas).

Host server
    IdentityFile ~/.ssh/specific-key
    IdentitiesOnly yes

IdentitiesOnly : ne tester qu'une clé

Empêche SSH de tester toutes tes clés (utile si tu en as beaucoup et que le serveur a un MaxAuthTries bas).

Host server
    IdentityFile ~/.ssh/specific-key
    IdentitiesOnly yes

IdentitiesOnly : ne tester qu'une clé

Empêche SSH de tester toutes tes clés (utile si tu en as beaucoup et que le serveur a un MaxAuthTries bas).

Host server
    IdentityFile ~/.ssh/specific-key
    IdentitiesOnly yes

IdentitiesOnly : ne tester qu'une clé

Empêche SSH de tester toutes tes clés (utile si tu en as beaucoup et que le serveur a un MaxAuthTries bas).

Host server
    IdentityFile ~/.ssh/specific-key
    IdentitiesOnly yes
🛡️ Bonnes pratiques de sécurisation 55

Désactiver l'authentification par mot de passe

Sur le serveur, désactive `PasswordAuthentication` dans /etc/ssh/sshd_config et n'autorise que les clés publiques. Recharge sshd ensuite.

PasswordAuthentication no
PubkeyAuthentication yes
PermitRootLogin prohibit-password

Désactiver l'authentification par mot de passe

Sur le serveur, désactive `PasswordAuthentication` dans /etc/ssh/sshd_config et n'autorise que les clés publiques. Recharge sshd ensuite.

PasswordAuthentication no
PubkeyAuthentication yes
PermitRootLogin prohibit-password

Désactiver l'authentification par mot de passe

Sur le serveur, désactive `PasswordAuthentication` dans /etc/ssh/sshd_config et n'autorise que les clés publiques. Recharge sshd ensuite.

PasswordAuthentication no
PubkeyAuthentication yes
PermitRootLogin prohibit-password

Désactiver l'authentification par mot de passe

Sur le serveur, désactive `PasswordAuthentication` dans /etc/ssh/sshd_config et n'autorise que les clés publiques. Recharge sshd ensuite.

PasswordAuthentication no
PubkeyAuthentication yes
PermitRootLogin prohibit-password

Désactiver l'authentification par mot de passe

Sur le serveur, désactive `PasswordAuthentication` dans /etc/ssh/sshd_config et n'autorise que les clés publiques. Recharge sshd ensuite.

PasswordAuthentication no
PubkeyAuthentication yes
PermitRootLogin prohibit-password

Désactiver l'authentification par mot de passe

Sur le serveur, désactive `PasswordAuthentication` dans /etc/ssh/sshd_config et n'autorise que les clés publiques. Recharge sshd ensuite.

PasswordAuthentication no
PubkeyAuthentication yes
PermitRootLogin prohibit-password

Désactiver l'authentification par mot de passe

Sur le serveur, désactive `PasswordAuthentication` dans /etc/ssh/sshd_config et n'autorise que les clés publiques. Recharge sshd ensuite.

PasswordAuthentication no
PubkeyAuthentication yes
PermitRootLogin prohibit-password

Désactiver l'authentification par mot de passe

Sur le serveur, désactive `PasswordAuthentication` dans /etc/ssh/sshd_config et n'autorise que les clés publiques. Recharge sshd ensuite.

PasswordAuthentication no
PubkeyAuthentication yes
PermitRootLogin prohibit-password

Désactiver l'authentification par mot de passe

Sur le serveur, désactive `PasswordAuthentication` dans /etc/ssh/sshd_config et n'autorise que les clés publiques. Recharge sshd ensuite.

PasswordAuthentication no
PubkeyAuthentication yes
PermitRootLogin prohibit-password

Désactiver l'authentification par mot de passe

Sur le serveur, désactive `PasswordAuthentication` dans /etc/ssh/sshd_config et n'autorise que les clés publiques. Recharge sshd ensuite.

PasswordAuthentication no
PubkeyAuthentication yes
PermitRootLogin prohibit-password

Désactiver l'authentification par mot de passe

Sur le serveur, désactive `PasswordAuthentication` dans /etc/ssh/sshd_config et n'autorise que les clés publiques. Recharge sshd ensuite.

PasswordAuthentication no
PubkeyAuthentication yes
PermitRootLogin prohibit-password

Changer le port SSH par défaut

Mettre le port SSH ailleurs que 22 réduit drastiquement le bruit des bots dans les logs. Ce n'est PAS de la sécurité (le port reste détectable par scan), juste de l'hygiène.

Port 2222

Changer le port SSH par défaut

Mettre le port SSH ailleurs que 22 réduit drastiquement le bruit des bots dans les logs. Ce n'est PAS de la sécurité (le port reste détectable par scan), juste de l'hygiène.

Port 2222

Changer le port SSH par défaut

Mettre le port SSH ailleurs que 22 réduit drastiquement le bruit des bots dans les logs. Ce n'est PAS de la sécurité (le port reste détectable par scan), juste de l'hygiène.

Port 2222

Changer le port SSH par défaut

Mettre le port SSH ailleurs que 22 réduit drastiquement le bruit des bots dans les logs. Ce n'est PAS de la sécurité (le port reste détectable par scan), juste de l'hygiène.

Port 2222

Changer le port SSH par défaut

Mettre le port SSH ailleurs que 22 réduit drastiquement le bruit des bots dans les logs. Ce n'est PAS de la sécurité (le port reste détectable par scan), juste de l'hygiène.

Port 2222

Changer le port SSH par défaut

Mettre le port SSH ailleurs que 22 réduit drastiquement le bruit des bots dans les logs. Ce n'est PAS de la sécurité (le port reste détectable par scan), juste de l'hygiène.

Port 2222

Changer le port SSH par défaut

Mettre le port SSH ailleurs que 22 réduit drastiquement le bruit des bots dans les logs. Ce n'est PAS de la sécurité (le port reste détectable par scan), juste de l'hygiène.

Port 2222

Changer le port SSH par défaut

Mettre le port SSH ailleurs que 22 réduit drastiquement le bruit des bots dans les logs. Ce n'est PAS de la sécurité (le port reste détectable par scan), juste de l'hygiène.

Port 2222

Changer le port SSH par défaut

Mettre le port SSH ailleurs que 22 réduit drastiquement le bruit des bots dans les logs. Ce n'est PAS de la sécurité (le port reste détectable par scan), juste de l'hygiène.

Port 2222

Changer le port SSH par défaut

Mettre le port SSH ailleurs que 22 réduit drastiquement le bruit des bots dans les logs. Ce n'est PAS de la sécurité (le port reste détectable par scan), juste de l'hygiène.

Port 2222

Changer le port SSH par défaut

Mettre le port SSH ailleurs que 22 réduit drastiquement le bruit des bots dans les logs. Ce n'est PAS de la sécurité (le port reste détectable par scan), juste de l'hygiène.

Port 2222

Limiter les utilisateurs autorisés

Whitelist explicite des utilisateurs qui peuvent se connecter en SSH. Évite que des comptes système (créés par des packages) soient accessibles.

AllowUsers admin alice bob
AllowGroups ssh-users

Limiter les utilisateurs autorisés

Whitelist explicite des utilisateurs qui peuvent se connecter en SSH. Évite que des comptes système (créés par des packages) soient accessibles.

AllowUsers admin alice bob
AllowGroups ssh-users

Limiter les utilisateurs autorisés

Whitelist explicite des utilisateurs qui peuvent se connecter en SSH. Évite que des comptes système (créés par des packages) soient accessibles.

AllowUsers admin alice bob
AllowGroups ssh-users

Limiter les utilisateurs autorisés

Whitelist explicite des utilisateurs qui peuvent se connecter en SSH. Évite que des comptes système (créés par des packages) soient accessibles.

AllowUsers admin alice bob
AllowGroups ssh-users

Limiter les utilisateurs autorisés

Whitelist explicite des utilisateurs qui peuvent se connecter en SSH. Évite que des comptes système (créés par des packages) soient accessibles.

AllowUsers admin alice bob
AllowGroups ssh-users

Limiter les utilisateurs autorisés

Whitelist explicite des utilisateurs qui peuvent se connecter en SSH. Évite que des comptes système (créés par des packages) soient accessibles.

AllowUsers admin alice bob
AllowGroups ssh-users

Limiter les utilisateurs autorisés

Whitelist explicite des utilisateurs qui peuvent se connecter en SSH. Évite que des comptes système (créés par des packages) soient accessibles.

AllowUsers admin alice bob
AllowGroups ssh-users

Limiter les utilisateurs autorisés

Whitelist explicite des utilisateurs qui peuvent se connecter en SSH. Évite que des comptes système (créés par des packages) soient accessibles.

AllowUsers admin alice bob
AllowGroups ssh-users

Limiter les utilisateurs autorisés

Whitelist explicite des utilisateurs qui peuvent se connecter en SSH. Évite que des comptes système (créés par des packages) soient accessibles.

AllowUsers admin alice bob
AllowGroups ssh-users

Limiter les utilisateurs autorisés

Whitelist explicite des utilisateurs qui peuvent se connecter en SSH. Évite que des comptes système (créés par des packages) soient accessibles.

AllowUsers admin alice bob
AllowGroups ssh-users

Limiter les utilisateurs autorisés

Whitelist explicite des utilisateurs qui peuvent se connecter en SSH. Évite que des comptes système (créés par des packages) soient accessibles.

AllowUsers admin alice bob
AllowGroups ssh-users

Désactiver root login

Une connexion SSH directe en root est risquée (pas de traçabilité, brute-force ciblé). Connecte-toi avec un compte normal puis sudo.

PermitRootLogin no
# ou
PermitRootLogin prohibit-password

Désactiver root login

Une connexion SSH directe en root est risquée (pas de traçabilité, brute-force ciblé). Connecte-toi avec un compte normal puis sudo.

PermitRootLogin no
# ou
PermitRootLogin prohibit-password

Désactiver root login

Une connexion SSH directe en root est risquée (pas de traçabilité, brute-force ciblé). Connecte-toi avec un compte normal puis sudo.

PermitRootLogin no
# ou
PermitRootLogin prohibit-password

Désactiver root login

Une connexion SSH directe en root est risquée (pas de traçabilité, brute-force ciblé). Connecte-toi avec un compte normal puis sudo.

PermitRootLogin no
# ou
PermitRootLogin prohibit-password

Désactiver root login

Une connexion SSH directe en root est risquée (pas de traçabilité, brute-force ciblé). Connecte-toi avec un compte normal puis sudo.

PermitRootLogin no
# ou
PermitRootLogin prohibit-password

Désactiver root login

Une connexion SSH directe en root est risquée (pas de traçabilité, brute-force ciblé). Connecte-toi avec un compte normal puis sudo.

PermitRootLogin no
# ou
PermitRootLogin prohibit-password

Désactiver root login

Une connexion SSH directe en root est risquée (pas de traçabilité, brute-force ciblé). Connecte-toi avec un compte normal puis sudo.

PermitRootLogin no
# ou
PermitRootLogin prohibit-password

Désactiver root login

Une connexion SSH directe en root est risquée (pas de traçabilité, brute-force ciblé). Connecte-toi avec un compte normal puis sudo.

PermitRootLogin no
# ou
PermitRootLogin prohibit-password

Désactiver root login

Une connexion SSH directe en root est risquée (pas de traçabilité, brute-force ciblé). Connecte-toi avec un compte normal puis sudo.

PermitRootLogin no
# ou
PermitRootLogin prohibit-password

Désactiver root login

Une connexion SSH directe en root est risquée (pas de traçabilité, brute-force ciblé). Connecte-toi avec un compte normal puis sudo.

PermitRootLogin no
# ou
PermitRootLogin prohibit-password

Désactiver root login

Une connexion SSH directe en root est risquée (pas de traçabilité, brute-force ciblé). Connecte-toi avec un compte normal puis sudo.

PermitRootLogin no
# ou
PermitRootLogin prohibit-password

Authentification à 2 facteurs (TOTP)

Combine clé SSH + code TOTP avec libpam-google-authenticator. Recommandé pour les serveurs sensibles ou exposés sur internet.

AuthenticationMethods publickey,keyboard-interactive

Authentification à 2 facteurs (TOTP)

Combine clé SSH + code TOTP avec libpam-google-authenticator. Recommandé pour les serveurs sensibles ou exposés sur internet.

AuthenticationMethods publickey,keyboard-interactive

Authentification à 2 facteurs (TOTP)

Combine clé SSH + code TOTP avec libpam-google-authenticator. Recommandé pour les serveurs sensibles ou exposés sur internet.

AuthenticationMethods publickey,keyboard-interactive

Authentification à 2 facteurs (TOTP)

Combine clé SSH + code TOTP avec libpam-google-authenticator. Recommandé pour les serveurs sensibles ou exposés sur internet.

AuthenticationMethods publickey,keyboard-interactive

Authentification à 2 facteurs (TOTP)

Combine clé SSH + code TOTP avec libpam-google-authenticator. Recommandé pour les serveurs sensibles ou exposés sur internet.

AuthenticationMethods publickey,keyboard-interactive

Authentification à 2 facteurs (TOTP)

Combine clé SSH + code TOTP avec libpam-google-authenticator. Recommandé pour les serveurs sensibles ou exposés sur internet.

AuthenticationMethods publickey,keyboard-interactive

Authentification à 2 facteurs (TOTP)

Combine clé SSH + code TOTP avec libpam-google-authenticator. Recommandé pour les serveurs sensibles ou exposés sur internet.

AuthenticationMethods publickey,keyboard-interactive

Authentification à 2 facteurs (TOTP)

Combine clé SSH + code TOTP avec libpam-google-authenticator. Recommandé pour les serveurs sensibles ou exposés sur internet.

AuthenticationMethods publickey,keyboard-interactive

Authentification à 2 facteurs (TOTP)

Combine clé SSH + code TOTP avec libpam-google-authenticator. Recommandé pour les serveurs sensibles ou exposés sur internet.

AuthenticationMethods publickey,keyboard-interactive

Authentification à 2 facteurs (TOTP)

Combine clé SSH + code TOTP avec libpam-google-authenticator. Recommandé pour les serveurs sensibles ou exposés sur internet.

AuthenticationMethods publickey,keyboard-interactive

Authentification à 2 facteurs (TOTP)

Combine clé SSH + code TOTP avec libpam-google-authenticator. Recommandé pour les serveurs sensibles ou exposés sur internet.

AuthenticationMethods publickey,keyboard-interactive
💻 Commandes utiles 55

Copier sa clé publique sur un serveur

Ajoute ta clé publique à ~/.ssh/authorized_keys sur le serveur distant. Crée le fichier et le répertoire si besoin.

ssh-copy-id user@server

Copier sa clé publique sur un serveur

Ajoute ta clé publique à ~/.ssh/authorized_keys sur le serveur distant. Crée le fichier et le répertoire si besoin.

ssh-copy-id user@server

Copier sa clé publique sur un serveur

Ajoute ta clé publique à ~/.ssh/authorized_keys sur le serveur distant. Crée le fichier et le répertoire si besoin.

ssh-copy-id user@server

Copier sa clé publique sur un serveur

Ajoute ta clé publique à ~/.ssh/authorized_keys sur le serveur distant. Crée le fichier et le répertoire si besoin.

ssh-copy-id user@server

Copier sa clé publique sur un serveur

Ajoute ta clé publique à ~/.ssh/authorized_keys sur le serveur distant. Crée le fichier et le répertoire si besoin.

ssh-copy-id user@server

Copier sa clé publique sur un serveur

Ajoute ta clé publique à ~/.ssh/authorized_keys sur le serveur distant. Crée le fichier et le répertoire si besoin.

ssh-copy-id user@server

Copier sa clé publique sur un serveur

Ajoute ta clé publique à ~/.ssh/authorized_keys sur le serveur distant. Crée le fichier et le répertoire si besoin.

ssh-copy-id user@server

Copier sa clé publique sur un serveur

Ajoute ta clé publique à ~/.ssh/authorized_keys sur le serveur distant. Crée le fichier et le répertoire si besoin.

ssh-copy-id user@server

Copier sa clé publique sur un serveur

Ajoute ta clé publique à ~/.ssh/authorized_keys sur le serveur distant. Crée le fichier et le répertoire si besoin.

ssh-copy-id user@server

Copier sa clé publique sur un serveur

Ajoute ta clé publique à ~/.ssh/authorized_keys sur le serveur distant. Crée le fichier et le répertoire si besoin.

ssh-copy-id user@server

Copier sa clé publique sur un serveur

Ajoute ta clé publique à ~/.ssh/authorized_keys sur le serveur distant. Crée le fichier et le répertoire si besoin.

ssh-copy-id user@server

Tester sans se connecter

Essaie l'authentification sans ouvrir de shell. Utile pour debug.

ssh -v -T user@server

Tester sans se connecter

Essaie l'authentification sans ouvrir de shell. Utile pour debug.

ssh -v -T user@server

Tester sans se connecter

Essaie l'authentification sans ouvrir de shell. Utile pour debug.

ssh -v -T user@server

Tester sans se connecter

Essaie l'authentification sans ouvrir de shell. Utile pour debug.

ssh -v -T user@server

Tester sans se connecter

Essaie l'authentification sans ouvrir de shell. Utile pour debug.

ssh -v -T user@server

Tester sans se connecter

Essaie l'authentification sans ouvrir de shell. Utile pour debug.

ssh -v -T user@server

Tester sans se connecter

Essaie l'authentification sans ouvrir de shell. Utile pour debug.

ssh -v -T user@server

Tester sans se connecter

Essaie l'authentification sans ouvrir de shell. Utile pour debug.

ssh -v -T user@server

Tester sans se connecter

Essaie l'authentification sans ouvrir de shell. Utile pour debug.

ssh -v -T user@server

Tester sans se connecter

Essaie l'authentification sans ouvrir de shell. Utile pour debug.

ssh -v -T user@server

Tester sans se connecter

Essaie l'authentification sans ouvrir de shell. Utile pour debug.

ssh -v -T user@server

Forwarding de ports (tunnel SSH)

Crée un tunnel local : tout ce qui arrive sur localhost:8080 est forwardé vers internal-server:80 via la connexion SSH.

ssh -L 8080:internal-server:80 user@bastion

Forwarding de ports (tunnel SSH)

Crée un tunnel local : tout ce qui arrive sur localhost:8080 est forwardé vers internal-server:80 via la connexion SSH.

ssh -L 8080:internal-server:80 user@bastion

Forwarding de ports (tunnel SSH)

Crée un tunnel local : tout ce qui arrive sur localhost:8080 est forwardé vers internal-server:80 via la connexion SSH.

ssh -L 8080:internal-server:80 user@bastion

Forwarding de ports (tunnel SSH)

Crée un tunnel local : tout ce qui arrive sur localhost:8080 est forwardé vers internal-server:80 via la connexion SSH.

ssh -L 8080:internal-server:80 user@bastion

Forwarding de ports (tunnel SSH)

Crée un tunnel local : tout ce qui arrive sur localhost:8080 est forwardé vers internal-server:80 via la connexion SSH.

ssh -L 8080:internal-server:80 user@bastion

Forwarding de ports (tunnel SSH)

Crée un tunnel local : tout ce qui arrive sur localhost:8080 est forwardé vers internal-server:80 via la connexion SSH.

ssh -L 8080:internal-server:80 user@bastion

Forwarding de ports (tunnel SSH)

Crée un tunnel local : tout ce qui arrive sur localhost:8080 est forwardé vers internal-server:80 via la connexion SSH.

ssh -L 8080:internal-server:80 user@bastion

Forwarding de ports (tunnel SSH)

Crée un tunnel local : tout ce qui arrive sur localhost:8080 est forwardé vers internal-server:80 via la connexion SSH.

ssh -L 8080:internal-server:80 user@bastion

Forwarding de ports (tunnel SSH)

Crée un tunnel local : tout ce qui arrive sur localhost:8080 est forwardé vers internal-server:80 via la connexion SSH.

ssh -L 8080:internal-server:80 user@bastion

Forwarding de ports (tunnel SSH)

Crée un tunnel local : tout ce qui arrive sur localhost:8080 est forwardé vers internal-server:80 via la connexion SSH.

ssh -L 8080:internal-server:80 user@bastion

Forwarding de ports (tunnel SSH)

Crée un tunnel local : tout ce qui arrive sur localhost:8080 est forwardé vers internal-server:80 via la connexion SSH.

ssh -L 8080:internal-server:80 user@bastion

Forwarding inverse (reverse tunnel)

Expose un port local sur le serveur distant. Utile pour faire accéder un dev externe à ton localhost.

ssh -R 9000:localhost:3000 user@public-server

Forwarding inverse (reverse tunnel)

Expose un port local sur le serveur distant. Utile pour faire accéder un dev externe à ton localhost.

ssh -R 9000:localhost:3000 user@public-server

Forwarding inverse (reverse tunnel)

Expose un port local sur le serveur distant. Utile pour faire accéder un dev externe à ton localhost.

ssh -R 9000:localhost:3000 user@public-server

Forwarding inverse (reverse tunnel)

Expose un port local sur le serveur distant. Utile pour faire accéder un dev externe à ton localhost.

ssh -R 9000:localhost:3000 user@public-server

Forwarding inverse (reverse tunnel)

Expose un port local sur le serveur distant. Utile pour faire accéder un dev externe à ton localhost.

ssh -R 9000:localhost:3000 user@public-server

Forwarding inverse (reverse tunnel)

Expose un port local sur le serveur distant. Utile pour faire accéder un dev externe à ton localhost.

ssh -R 9000:localhost:3000 user@public-server

Forwarding inverse (reverse tunnel)

Expose un port local sur le serveur distant. Utile pour faire accéder un dev externe à ton localhost.

ssh -R 9000:localhost:3000 user@public-server

Forwarding inverse (reverse tunnel)

Expose un port local sur le serveur distant. Utile pour faire accéder un dev externe à ton localhost.

ssh -R 9000:localhost:3000 user@public-server

Forwarding inverse (reverse tunnel)

Expose un port local sur le serveur distant. Utile pour faire accéder un dev externe à ton localhost.

ssh -R 9000:localhost:3000 user@public-server

Forwarding inverse (reverse tunnel)

Expose un port local sur le serveur distant. Utile pour faire accéder un dev externe à ton localhost.

ssh -R 9000:localhost:3000 user@public-server

Forwarding inverse (reverse tunnel)

Expose un port local sur le serveur distant. Utile pour faire accéder un dev externe à ton localhost.

ssh -R 9000:localhost:3000 user@public-server

Exécuter une commande à distance

Lance une commande sur le serveur distant et récupère sa sortie, sans ouvrir de shell.

ssh user@server "uptime && df -h"

Exécuter une commande à distance

Lance une commande sur le serveur distant et récupère sa sortie, sans ouvrir de shell.

ssh user@server "uptime && df -h"

Exécuter une commande à distance

Lance une commande sur le serveur distant et récupère sa sortie, sans ouvrir de shell.

ssh user@server "uptime && df -h"

Exécuter une commande à distance

Lance une commande sur le serveur distant et récupère sa sortie, sans ouvrir de shell.

ssh user@server "uptime && df -h"

Exécuter une commande à distance

Lance une commande sur le serveur distant et récupère sa sortie, sans ouvrir de shell.

ssh user@server "uptime && df -h"

Exécuter une commande à distance

Lance une commande sur le serveur distant et récupère sa sortie, sans ouvrir de shell.

ssh user@server "uptime && df -h"

Exécuter une commande à distance

Lance une commande sur le serveur distant et récupère sa sortie, sans ouvrir de shell.

ssh user@server "uptime && df -h"

Exécuter une commande à distance

Lance une commande sur le serveur distant et récupère sa sortie, sans ouvrir de shell.

ssh user@server "uptime && df -h"

Exécuter une commande à distance

Lance une commande sur le serveur distant et récupère sa sortie, sans ouvrir de shell.

ssh user@server "uptime && df -h"

Exécuter une commande à distance

Lance une commande sur le serveur distant et récupère sa sortie, sans ouvrir de shell.

ssh user@server "uptime && df -h"

Exécuter une commande à distance

Lance une commande sur le serveur distant et récupère sa sortie, sans ouvrir de shell.

ssh user@server "uptime && df -h"