Sécurisation et Protection

Cette partie comporte des idées pour sécuriser votre système un minimum.

Fail2Ban

Fail2Ban est un ingénieux programme qui va bannir (en utilisant le FireWall //Iptables//) les IP qui tentent de se loguer sur le port SSH au bout de multiples tentatives de connexions échouées.

apt-get install fail2ban

Configuration de Fail2Ban

Configuration des tentatives à surveiller :

nano /etc/fail2ban/jail.conf

[ssh]
 enabled = true
 port    = ssh
 filter  = sshd
 logpath  = /var/log/auth.log
 maxretry = 6
 # durée du banissement
 bantime = 900

On définit le nombre de tentatives maximales avant de bannir, ici on bannit au bout de 6 tentatives et pendant 15 minutes.

On redémarre le démon :

/etc/init.d/fail2ban restart

Exemple de tentatives de connexions par SSH

Voici un exemple de tentatives de connexions par SSH que l’on peut trouver dans le fichier de log : //nano /var/log/auth.log// (j’ai caché les 3 derniers chiffres de l’IP) :

Jan 31 05:45:50 stock sshd[3953]: (pam_unix) authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=blk-7-211-xxx.eastlink.ca
 Jan 31 05:45:52 stock sshd[3953]: Failed password for invalid user info from 71.7.211.xxx port 1979 ssh2
 Jan 31 05:45:53 stock sshd[3955]: Invalid user admin from 71.7.211.xxx
 Jan 31 05:45:53 stock sshd[3955]: (pam_unix) check pass; user unknown
 Jan 31 05:45:53 stock sshd[3955]: (pam_unix) authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=blk-7-211-xxx.eastlink.ca
 Jan 31 05:45:55 stock sshd[3955]: Failed password for invalid user admin from 71.7.211.xxx port 2149 ssh2
 Jan 31 05:45:56 stock sshd[3957]: Invalid user ftp from 71.7.211.xxx
 Jan 31 05:45:56 stock sshd[3957]: (pam_unix) check pass; user unknown
 Jan 31 05:45:56 stock sshd[3957]: (pam_unix) authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=blk-7-211-xxx.eastlink.ca
 Jan 31 05:45:58 stock sshd[3957]: Failed password for invalid user ftp from 71.7.211.xxx port 2329 ssh2
 Jan 31 05:45:59 stock sshd[3959]: Invalid user ftp from 71.7.211.xxx
 Jan 31 05:45:59 stock sshd[3959]: (pam_unix) check pass; user unknown

Affichage des IP bannis par Fail2Ban

Pour voir les IP bannis par Fail2Ban, il faut afficher les logs :

nano /var/log/fail2ban.log

Voici un exemple :

2008-02-01 12:11:50,955 fail2ban.actions: WARNING [ssh] Ban 74.94.201.xxx
2008-02-01 12:26:50,966 fail2ban.actions: WARNING [ssh] Unban 74.94.201.xxx

On remarque que l’IP 74.94.201.xxx (caché volontairement) a tenté de se connecter par SSH sur mon serveur mais qu’au bout de 6 tentatives, Fail2Ban l’a banni pendant 15 minutes. Car on remarque que l’IP a été bannie de 12h11 à 12h26.

Avec SSH

Si vous ne souhaitez pas voir des milliers de tentatives d’authentification chaque jour, un moyen tout simple consiste à changer le port d’écoute de SSH.
En effet, par défaut le port SSH est le 22 et des bots (robots) tentent de multiples combinaisons pour se loguer sur votre machine. En le modifiant nous allons réduire voir supprimer ce nombre de tentatives !

nano /etc/ssh/sshd_config
# What ports, IPs and protocols we listen for
 Port 22

Mettre un autre chiffre que 22 par exemple :

# What ports, IPs and protocols we listen for
Port 25555

Puis il faut redémarrer le démon SSHD :

/etc/init.d/ssh restart

A votre prochaine reconnexion, il faudra régler Putty pour se loguer sur le port que vous avez choisi, et non plus le 22 !

Visualisation des logs

Tous les logs des tentatives de connexions sont inscrites dans le fichier de log : /var/log/auth.log.

Avec mots-clefs , , .Lien pour marque-pages : permalien.

Laisser un commentaire