Bonnes pratiques sécurité pour serveur SSH OpenSSH.
OpenSSH Hardening regroupe les bonnes pratiques de configuration sécurité pour serveur SSH (sshd) — critique car SSH est souvent la porte d'entrée principale aux serveurs et cible privilégiée des attaques (brute force, key compromise, vulnerabilities).
Configurations recommandées /etc/ssh/sshd_config :
(1) **PermitRootLogin no** — interdire login root direct (utiliser sudo).
(2) **PasswordAuthentication no** — désactiver passwords, only keys (post key deployment).
(3) **PubkeyAuthentication yes**.
(4) **PermitEmptyPasswords no**.
(5) **Protocol 2** (Protocol 1 deprecated).
(6) **Port 2222** (security through obscurity faible mais réduit bruit scans automated).
(7) **AllowUsers user1 user2** ou **AllowGroups sshusers** — whitelist.
(8) **MaxAuthTries 3** — limit attempts per connection.
(9) **LoginGraceTime 30** — close idle login attempts.
(10) **ClientAliveInterval 300 ClientAliveCountMax 2** — timeout idle sessions.
(11) **X11Forwarding no** sauf si nécessaire.
(12) **AllowTcpForwarding no** ou **local** seulement.
(13) **HostKeyAlgorithms** et **KexAlgorithms** — moderniser : `KexAlgorithms curve25519-sha256,[email protected]`, `Ciphers [email protected],[email protected]`, `MACs [email protected]`.
Protections additionnelles : (1) **fail2ban** — auto-ban IPs avec brute force attempts ; (2) **2FA** — google-authenticator-libpam, DUO, YubiKey via pam_yubico ; (3) **SSH Certificate Authority** — sign user keys with CA, central management vs authorized_keys distribution ; (4) **SSH Bastion / Jump host** — single entry point, audited, monitored.
Audit : `ssh-audit` outil (open source) scan votre serveur SSH et donne security score + recommandations. Compétences Security+, RHCSA, LFCS.
200+ certifications, 400 000+ questions, examens blancs chronométrés.
Voir le catalogue →