Installer un serveur dédié Debian "Dedibox" #3

Résumé des épisodes précédents. Nous avons évité les freeze de notre Dédibox puis avons commencé à la sécuriser.

Nous allons maintenant terminer le boulot.

Seconde partie – Chapitre 2 : Un peu de /proc, une once de fail2ban et un soupçon de chkrootkit

1/ Sécuriser les accès réseau :

Pour cette partie, je vous conseille de vous référer à cette excellente documentation.

  • Protection contre le synflood :

Tapez[1] :

# echo "1" > /proc/sys/net/ipv4/tcp_syncookies # echo "1024" > /proc/sys/net/ipv4/tcp_max_syn_backlog # echo "1" > /proc/sys/net/ipv4/conf/all/rp_filter
  • Protection contre les redirections ICMP :
# echo "0" > /proc/sys/net/ipv4/conf/all/accept_redirects # echo "0" > /proc/sys/net/ipv4/conf/all/secure_redirects
  • Logguer les Martiens[2]
# echo "1" > /proc/sys/net/ipv4/conf/all/log_martians
  • Faire fi du Source Routing :
# echo "0" > /proc/sys/net/ipv4/conf/all/accept_source_route
  • Yo. Pas de Smurf Attack chez moi :
# echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

Vous pouvez compléter en fouillant plus avant dans les options sysctl, si vous le souhaitez.

2/ Installer fail2ban :

Fail2ban permet d’éviter les gros nazes – et ils sont nombreux – qui tentent de s’introduire chez vous en les bannissant dès lors que le nombre de tentatives de connexion défini par vous est dépassé.

Installons la bête :

# apt-get install fail2ban

puis, éditons le fichier de configuration de fail2ban :

# nano /etc/fail2ban/jail.conf

Modifions les lignes de jail.conf comme suit :

 [ssh] enabled = true logpath = /var/log/auth.log port = ssh filter  = sshd timeregex = S{3}s{1,2}d{1,2} d{2}:d{2}:d{2} timepattern = %%b %%d %%H:%%M:%%S failregex = : (?:(?:Authentication failure|Failed [-/\w+]+) for(?: illegal user)?|Illegal user|Did not receive identification) .$ maxretry = 3 findtime = 600 bantime = 1800 [postfix] enabled  = false port     = smtp filter   = postfix logpath  = /var/log/postfix.log

Redémarrons fail2ban-client et relançons le :

# fail2ban-client stop # fail2ban-client start

Et pour terminer, vérifions le bon fonctionnement :

# fail2ban-client -d

Vous devriez obtenir les premiers signes de fonctionnement de l’engin.

3/ Un détecteur de rootkit

Nous allons maintenant passer à l’installation de chkrootkit. Nous programmerons un envoi de mail automatique du rapport quotidien ensuite :

Tapez :

# sudo apt-get install chkrootkit

et éditez votre crontab

# crontab -e

et insérez cette ligne :

0 3 * * *  chkrootkit 2>&1 | mail votre@adresse.mail -s "Rapport quotidien RootKit"

De cette manière, vous recevrez tous les matins à 3 heures l’état des tentatives rootkit éventuelles.

C’est tout pour l’instant. La suite est consacrée à l’installation de PHP5, Mysql et Apache

Notes

[1] Je le rappelle, une ligne précédée de $ se tape en utilisateur courant, et précédée de # en root

[2] Je me comprends

Giskette

Geekette coquette avec un chat et un gros défaut... mes parents : je m'appelle Gisèle

2 réponses

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *


*