Il est facile de sécuriser la couche TCP/IP du serveur juste en activant quelques directives.
Normalement, le réseau de l’hébergeur est suffisant stable pour que nous puissions désactiver certains fonctions de routage IPv4 et IPv6.
Nous allons donc désactiver les redirections ICMP, nous protéger des attaques SYN FLOOD, du spoofing, du smurfing, désactiver le routage à l’intérieur des paquets et finalement désactiver l’autoconf IPV6.
Vous voulez sécuriser votre site avant qu'il soit trop tard ?
Plugins obsolètes, xmlrpc ouvert, uploads non protégés — la plupart des intrusions WordPress exploitent des failles connues et évitables. Un durcissement sérieux prend une demi-journée.
Faites auditer votre sécurité →Ce tutoriel prend à peine 10 minutes.
Configuration du fichier /etc/sysctl.conf
Il existe pas mal d’options dans le fichier sysctl.conf liées à la sécurité. Commençons par éditer le fichier :
nano /etc/sysctl.conf
Tout d’abord, on se protége du spoofing. Décommentez les 2 lignes :
net.ipv4.conf.default.rp_filter=1
net.ipv4.conf.all.rp_filter=1Code language: PHP (php)
On se protège ensuite des attaques de type SYN flood, décommentez la ligne :
net.ipv4.tcp_syncookies=1
et juste après, rajoutez :
net.ipv4.tcp_max_syn_backlog = 1024
On refuse les redirections ICMP pour éviter les attaques Man In The Middle (MITM) :
net.ipv4.conf.all.accept_redirects = 0
net.ipv6.conf.all.accept_redirects = 0
Nous ne sommes pas un routeur, nous n’envoyons donc pas de redirections ICMP:
net.ipv4.conf.all.send_redirects = 0
net.ipv6.conf.all.send_redirects = 0
et nous n’acceptons pas de router les paquets :
net.ipv4.conf.all.accept_source_route = 0
net.ipv6.conf.all.accept_source_route = 0
On peut également rajouter des directives supplémentaires. Par exemple, ignorer les codes réponses bogus des logs ICMP et éviter le smurfing :
net.ipv4.icmp_ignore_bogus_error_responses = 1
net.ipv4.icmp_echo_ignore_broadcasts = 1
ou encore désactiver l’autoconf IPv6 qui est responsable de l’erreur “kernel: IPv6 addrconf: prefix with wrong length 56”, très commune sur les serveurs OVH (dont notre kimsufi) :
net.ipv6.conf.all.autoconf = 0
net.ipv6.conf.default.autoconf = 0
net.ipv6.conf.eth0.autoconf = 0Code language: PHP (php)
Il ne vous reste plus qu’à enregistrer le fichier et à appliquer les modifications :
sysctl -n -e -q -p /etc/sysctl.conf
Voilà, votre serveur devrait être un peu plus sécurisé qu’au départ.
Votre hébergement est devenu un problème ?
Serveur partagé saturé, limites PHP trop basses, support qui répond en 48h — à un certain niveau de trafic, l'hébergement mutualisé devient le goulot. Je migre et configure des serveurs dédiés.
Parlons de votre infrastructure →