Cet article date d'il y a plus d'un an.
Il est possible qu'il ne soit plus à jour.
Un serveur SSH bien sécurisé
Je vous ai déjà parlé des guides Mozilla pour aider à bien configurer ses serveurs.
Mes articles concernaient les serveurs Web Nginx et Apache.
Mozilla s’est aussi attelé au serveur le plus répandu sous Unix/Linux : OpenSSH.
Je vous avoue que sans ce guide la configuration est ardue car comment savoir quels algorithmes, méthodes de chiffrement et hashages utiliser ???
Selon Mozilla, un serveur moderne devrait ressembler à ça (/etc/ssh/sshd_config) :
# Algorithmes d'échange de clés (sans DSA) HostKey /etc/ssh/ssh_host_ed25519_key HostKey /etc/ssh/ssh_host_rsa_key HostKey /etc/ssh/ssh_host_ecdsa_key # Méthodes de chiffrement (sans SHA1) KexAlgorithms curve25519-sha256@libssh.org,ecdh-sha2-nistp521,ecdh-sha2-nistp384,ecdh-sha2-nistp256,diffie-hellman-group-exchange-sha256 Ciphers chacha20-poly1305@openssh.com,aes256-gcm@openssh.com,aes128-gcm@openssh.com,aes256-ctr,aes192-ctr,aes128-ctr MACs hmac-sha2-512-etm@openssh.com,hmac-sha2-256-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-512,hmac-sha2-256,umac-128@openssh.com # Les authentifications ne sont possibles que par clés publiques (attention, la gestion des clés est un lourd travail à prévoir en amont !) AuthenticationMethods publickey # Augmenter le niveau de log à verbose pour voir plus d'infos dans /var/log/auth.log LogLevel VERBOSE # Augmenter le niveau de log de SFTP pour voir les accès en lecture et écriture des fichiers. Subsystem sftp /usr/lib/ssh/sftp-server -f AUTHPRIV -l INFO # Interdiction des connexions en tant que root (il faut user du su ou du sudo), pour ça aussi, il faut bien préparer le terrain ! PermitRootLogin No # Utiliser le système de bac à sable pour ne pas que les processus soient lancés avec des privilèges trop importants. UsePrivilegeSeparation sandbox
Ca fera l’objet d’une future recette Ansible.