Installation d'un serveur dédié Debian Wheezy - Sécurisation

Quelques éléments sur la sécurisation. Attention, les serveurs type Kimsuffi sont très régulièrement ciblés. Cette page ne saurait être suffisante en tant que telle, elle ne doit servir que de complément à la sécurisation de votre serveur et souvenez-vous que la sécurité repose d'abord sur les nécessaires mises à jour.

Applications de sécurité

On peut installer quelques applications qui faciliteront (plus ou moins...) la gestion de la sécurité.

fail2ban

fail2ban analyse les log et permet de bannir les ip qui tentent de se connecter à de trop nombreuses reprises (cas typique d'une attaque force brute).

apt-get install fail2ban

Le fichier de configuration est /etc/fail2ban/jail.conf.  On y mettra notamment à jour destemail (l'adresse mail à laquelle envoyer les messages), maxretry (nombre d'essais autorisés) et bantime (durée du bannissement). Si on a modifié le port SSH, il faut le mettre à jour dans la partie SSH du fichier. On relance ensuite le service.

service fail2ban restart

On peut accéder aux états par :

fail2ban-client status
fail2ban-client status nom_de_la_prison (ssh ou apache par exemple)

portsentry

portsentry permet de bannir les ip qui scan les ports ouverts.

apt-get install portsentry

La configuration est dans le fichier /etc/portsentry/portsentry.conf. On doit commenter KILL_HOSTS_DENY et décommenter KILL_ROUTE="/sbin/iptables -I INPUT -s $TARGET$ -j DROP".
On le lance par (udp et tcp) :

portsentry –audp
portsentry –atcp

rkhunter

rkhunter recherche les éventuels rootkit.

apt-get install rkhunter

Dans le fichier /etc/default/rkhunter, on mettra à jour les options REPORT_EMAIL="monMail" et CRON_DAILY_RUN="yes".
On pourra ensuite le lancer une fois par :

rkhunter --checkall

logwatch

logwatch fournit un rapport des tentatives de connexion à partir des logs.

apt-get install logwatch

La configuration est dans /usr/share/logwatch/default.conf/logwatch.conf où on mettra à jour le MailTo et le niveau de verbosité (Low par exemple).
On peut l'appeler directement par :

logwatch

En complément...

logwatch vous permettra d'identifier les ip qui cherchent à vous attaquer. On peut facilement bloquer ces ip (ce qui ne génera que les bots et les scripts kiddies) :

iptables -I INPUT -s IP_A_BANNIR -j DROP

Pour les deban, on appelera :

iptables -L INPUT -n --line-numbers

puis (attention quand on supprime une ligne la numérotation change) :

iptables -D INPUT numero_ligne_a_supprimer

On pourra bloquer les attaques type w00t par :

iptables -I INPUT -d 5.39.77.208 -p tcp --dport 80 -m string --to 70 --algo bm --string 'GET /w00tw00t.at.ISC.SANS.' -j DROP

et connaître les blocages par :

iptables -L INPUT -nvx

Liens :
http://fr.openclassrooms.com/informatique/cours/securiser-son-serveur-linux
http://ralph.davidovits.net/internet/se-proteger-des-pirates-et-hackers.html
http://www.infowebmaster.fr/tutoriel/securiser-dossier-htpasswd
http://perso.telecom-paristech.fr/~danzart/frames/htaccess.html

fleche-gauche.pngfleche-droite.png

Date de dernière mise à jourJan 23, 2014