Utilisez le protocole SSH 2
La version 1 du protocole 1 est obsolète et doit être évitée à tout prix. Ouvrir le fichier sshd_config et vérifiez que la ligne suivante existe:
Protocole 2
Contrôlez les utilisateurs qui peuvent se connecter en SSH
Par défaut, tous les utilisateurs des systèmes peuvent se connecter via SSH en utilisant leur mot de passe ou une clé publique. Parfois, vous créez UNIX / Linux pour compte d’utilisateur FTP ou le but de messagerie. Toutefois, les utilisateurs peuvent se connecter au système en utilisant ssh. Ils auront un accès complet aux outils système, y compris les compilateurs et les langages de script tels que Perl, Python qui peuvent ouvrir des ports réseau et de nombreux autres choses fantaisistes.
Autoriser seulement les administrateurs, par exemple pascal. pour cela dans le fichier de configuration sshd_config:
AllowUsers pascal
Alternativement, vous pouvez permettre à tous les utilisateurs de se connecter via SSH, mais nie que quelques utilisateurs, avec la ligne suivante:
DenyUsers root postfix www-data
Configurer la déconnexion des session inactive
Utilisateur peut se connecter au serveur via ssh et vous pouvez définir un délai d’inactivité après lequel ils seront déconnectez. Dans le fichier sshd_config assurez-vous les valeurs suivantes sont configurées:
ClientAliveInterval 300
ClientAliveCountMax 0
Vous définissez un intervalle de délai d’inactivité en secondes (300 secondes = 5 minutes). Passé ce délai est passé, l’utilisateur sera automatiquement déconnectés.
Désactiver. Rhosts
Ne pas lire utilisateur ~/.Rhosts et ~/.Shosts fichiers. Modifiez dans sshd_config les paramètres suivants:
IgnoreRhosts yes
SSH peut émuler le comportement de rsh, il suffit de désactiver l’accès via rsh.
Désactiver l’authentification basé sur l’hôte
Pour l’authentification basée sur l’hôte désactiver, mettez à jour sshd_config avec l’option suivante:
HostbasedAuthentication no
Désactiver la connexion root via SSH
Il n’est pas nécessaire de se connecter en tant que root. Les utilisateurs normaux peuvent utiliser su ou sudo pour avoir accès root. Cela permet aussi de tracer/log ce qui est fait avec les droit root. Pour désactiver la connexion de root via SSH, éditez sshd_config et vérifier le paramètre suivant :
PermitRootLogin no
Utilisez une authentification par clef
Il est preferable de se connecter via une authentification par clef plutôt qu’avec un mot de passe.
Votre clef privée doit être protégé par mot de passe.
Interdire les connection via mot de passe vide
Vous devez explicitement interdire la connexion à distance à partir de comptes avec des mots de passe vide, dans sshd_config :
PermitEmptyPasswords no
Protection contre le brute-force
Voici la liste des outils permettant de bloquer les tentative de brute-force :
- DenyHosts
- Fail2ban
- sshguard-pf
- security/sshguard-ipfw
- security/sshguard-ipfilter
- security/sshblock
- security/sshit
- BlockHosts
- Blacklist
- Brute Force detection
- IPQ BDB filtre
Derniers paramètres a vérifier
UsePrivilegeSeparation yes
StrictModes yes
# Vérifier le reverse DNS
VerifyReverseMapping yes
# Spécifie si l'authentification par mot de passe est autorisée.
PasswordAuthentication no