Le serveur fonctionne bien. Mais qu'arrive-t-il si pour une raison ou une autre un des services tombe ? Pour l'instant, aucune alerte n'est en place et rien ne sera fait.
C'est là que monit intervient. Après quelques configurations, Monit vérifiera toutes les 10 minutes si l'ensemble des services fonctionnement bien. Si ce n'est pas le cas, une alerte est envoyée par email et il tente de le rédmarrer automatiquement.
Maintenant que le serveur fonctionne et a tous les services requis, il serait bon de savoir si tout fonctionne bien, d'avoir des graphes d'utilisation etc...
Pour céer des graphiques d'utilisation de notre serveur, nous allons utiliser munin.
On l'installe avec quelques librairies utiles au bon fonctionnement de certains plugins et de quoi en ajouter des autres (git et zip) :
aptitude install munin munin-node munin-plugins-extra libhtml-parser-perl libhtml-tagset-perl libhtml-tree-perl liburi-perl libwww-perl git zip unzip
Lorsque l'installation est terminée, commençons par ajouter des plugins standard déjà disponibles, et supprimons-en un qui ne fonctionne pas sur Debian apparamment :
fail2ban est utilisé pour lire les log de tous les autres démons et bannir des adresses IP s'ils ont échoués à plusieurs reprises de se connecter.
On installe simplement :
aptitude install fail2ban
Puis dans le fichier /etc/fail2ban/jail.conf nous allons paramétré chacun de nos règles pour tous les différents services que propose notre serveur. Certaines sont déjà pre-paramétrées, mais nous allons aussi en ajouter d'autres.
destemail = yoy@email.com
action = %(action_mwl)s
Puis dans le fichier, votre trouver des sections.
Cette partie du tutorial est la plus longue car elle nécessite beaucoup de configuration. En effet, c'est pas moins de 4 démons que nous allons installé et configuré pour fonctionner parfaitement avec le reste de notre serveur. De plus notre serveur d'emails incluera un antispam pour tous les emails entrant, qui en plus vérifiera si les emails ne contiennent pas des virus grâce à ClamAV. Enfin, il sera possible d'entrâiner l'antispam simplement en déplacement un email du dossier enrant vers le dossier Spam et inversement.
Le choix de PowerDNS par rapport à Bind est simple : ave PowerDNS, on peut configurer l'ensemble des informations dans une base données, MySQL dans mon cas.
Donc on commencer par stopper et désinstaller bind, qui peut être là :
/etc/init.d/bind9 stop
aptitude purge bind9
Et on install PowerDNS :
aptitude install pdns-server pdns-backend-mysql pdns-recursor libnet-dns-perl
PowerDNS est découpé de deux façon différentes et indépendantes : le serveur qui permet de définir vos zones (vos sites, sous-domaines, etc.
Cette partie n'a pas évolué depuis Lenny. C'est exactement la même procédure.
On installe le serveur :
aptitude install mysql-server
Durant l'installation, il vous sera demandé le mot de passe de l'utilisateur MySQL root.
MySQL vient avec une commande sympathique qui permet de sécurisé le serveur :
mysql_secure_installation
# Current password : VOTRE_MOT_PASSE
# set new password : N
# remove anonymous Users : Y
# Disallow root login remotley : Y
Avant de commencer l'instalaltion de Nginx et PHP, quelques petits éléments.
J'ai décidé d'utiliser Nginx plutôt qu'Apache car il est beaucoup plus rapide et supporte des montées en charge beaucoup plus importantes qu'Apache.
Pour utiliser PHP avec Apache, il suffisait d'installer un module apache et tout fonctionnait directement. Avec Nginx, nous sommes obligés d'utiliser FastCGI Process Manager qui est plus ou moins un démon PHP qui va tourner sur le serveur et répondre à Nginx lorsqu'il le demandera.
La première étape lors de la réception d'un serveur dédié et de bien préparer le terrain pour configurer l'espace de travail dont nous avons besoin.
Pour l'édition de fichiers, j'utilise vi. Il existe une variante un peu plus ergonimique et avec plus d'options, nommé vim.
Je commence par l'installer :
aptitude install vim vim-common
Puis j'éditer la configuration de base pour y ajouter la colorisation syntaxique et l'affichage du nombre de ligne.
Il y a maintenant 3 ans, j'avais mis en ligne un tutorial complet pour installer un serveur Web Debian avec la version Lenny. Comme le support officiel de cette version s'est arrêté le 6 Février 2012, il est temps de mettre à jour vos serveurs.
De plus, le serveur sera totalement compatible IPv6.
Donc je vais reprendre le tutorial complet de la version Lenny, avec quelques changements, dont les principaux sont :
Il n'est pas rare de vouloir intégrer une carte sur une page contact d'un site. Mais on ne veut afficher une carte uniquement sur cette page. C'est donc dommage de charger le javascript de Google Map sur toutes les pages.
Couplé à des micro-data d'adresse (que vous devriez déjà avoir mis en place), il devient facile de charger une carte google à la volée avec un marker à l'adresse désirée.