5 conseils pour sécuriser votre site web

Pour fonctionner les sites web ont besoin d’une infrastructure réseau, matérielle et logicielle. Chaque composant apporte son lot de risques et de failles de sécurité qu’il nous faut réduire au minimum afin d’assurer une qualité de service et une performance optimale. Ce travail est réparti parmi plusieurs acteurs : l’hébergeur, l’administrateur système, le webmaster et l’utilisateur. Voici quelques recommandations parmi celles que nous appliquons à IRCF, afin de sécuriser au mieux votre site web et le serveur qui l’héberge.


Les conseils ci-dessous s’appliquent essentiellement pour les serveurs web sous Linux, qui représentent la grande majorité des serveurs actuels.

1. Renforcer  et protéger vos mots de passe

Capture du 2015-07-26 10:41:54

  • L’idéal est de générer un mot de passe aléatoire, utiliser un programme comme apg plutôt qu’un générateur en ligne. Actuellement un mot de passe de 8 caractères contenant minuscules, majuscules, chiffres et ponctuation vous assure une tranquillité pendant quelques années.
  • Renouveler vos mots de passe régulièrement, par exemple chaque année.
  • Protéger vos formulaires contre les robots en installant des captchas.
  • Installé sur le serveur, le service Fail2ban permet de limiter les tentatives de mot de passe sur chaque service et de bannir automatiquement les adresses IP qui dépassent cette limite (attaques force brute ou dictionnaire). Fail2ban peut également vous protéger contre les attaques DOS.

2. Renforcer et protéger les services

  • Réduire au strict minimum les services ouverts sur le serveur. Des outils comme nmap permettent de vérifier quels sont les ports ouverts. Le firewall iptables installé sur la plupart des serveurs permet de restreindre certains services à votre IP pour limiter les risques de piratage.
  • Réduire au strict minimum les informations délivrées par les services (logiciel, version, extensions…), de même dans le code source de votre site web.
  • Privilégier les logiciels robustes et légers, en remplaçant par exemple le serveur web Apache par Lighttpd ou Nginx réputés plus sécurisés, notamment contre les attaques DOS.
  • S’assurer que le dossiers et fichiers disposent de permissions minimum, restreindre au maximum les dossiers accessibles en écriture.
  • Pour sécuriser votre site en PHP, désactiver l’affichage des erreurs, les fonctions dangereuses et  limiter l’accès aux dossiers du serveur.
  • Dans la configuration du serveur web, restreindre l’exécution PHP à certains dossiers/fichiers, exiger une authentification HTTP pour l’accès aux services sensibles et/ou sécuriser l’accès à ces services (https) et  protégez vous des attaques les plus courantes.
  • Protéger votre code PHP contre les attaques de type injection SQL et XSS en échappant les variables de formulaire pour supprimer les codes SQL ou HTML non désirés. Des plugins Firefox comme Hackbar, XSS me ou SQL inject me permettent de tester les injections.

Attention : Pensez à prévenir votre administrateur système avant d’utiliser ces outils et de préférence aux heures creuses Ils peuvent être perçus comme une attaque et peuvent vous exposer à des sanctions.

3. Faire des mises à jour fréquentes

  • Un CMS à jour sécurise votre site, mais assurez-vous de faire faire la mise à jour par un professionnel, il pourra corriger les bogues éventuels liés à la mise à jour. Dans tous les cas, pensez à toujours effectuer une sauvegarde préalable.
  • Privilégier les installations de logiciels packagés permet de faciliter les mises à jour.
  • Des logiciels comme chkrootkit ou rkhunter permettent de scanner votre serveur à chaque mise à jour pour vérifier qu’il ne soit pas infecté par un rootkit (programme malveillant).

4. Dupliquer les ressources

  • Un hébergement en cloud (ex : Cloud IRCF) permet de répartir votre serveur sur plusieurs machines physiques et supprime les risques de panne. Assurez-vous également de la redondance au niveau des réseaux et de l’alimentation électrique. Cela n’est en général pas le cas avec un hébergement dédié lowcost.
  • Si vous ne disposez pas d’un cloud, utiliser un CDN comme Cloudflare est une solution simple et rapide pour protéger votre site contre les attaques et alléger la charge de votre serveur.
  • Des logiciels comme Rsnapshot permettent d’effectuer des sauvegardes régulières de vos bases de données et des fichiers sur une machine distante.

5. Veiller et surveiller

Capture du 2015-07-26 10:47:08

  • Des logiciels comme nagios ou monit permettent de monitorer vos services et d’être informé en cas de coupure.
  • Suivre les comptes Twitter de votre CMS (ex : WordPress), des services et de votre système d’exploitation pour être informé des failles découvertes.
  • En cas de doute, faire réaliser un audit de sécurité de votre site et/ou serveur par un professionnel peut s’avérer très instructif et vous économiser de lourdes pertes.

Pour évaluer la sécurité de votre site, nous vous invitons à consulter un professionnel pour réaliser un audit de sécurité. N’hésitez pas à nous contacter pour réaliser un audit de votre site web.