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
Ceci est un brouillon d'introducion à la documentation de nyroFwk. Toutes remarques, suggestions ou questions pour l'améliorer est la bienvenue !
Vendredi dernier, j'ai mis en ligne l'API et le svn (user : anon / passe : anon) de nyroFwk.
Bon c'est très bien tout ça, mais qu'est-ce que c'est ?
Pour commencer, petit extrai de wikipedia : Un framework est un kit de composants logiciels structurels, qui définissent les fondations ainsi que les grandes lignes de l'organisation de tout ou partie d'un logiciel.
Voilà, notre serveur est maintenant opérationnel en tout point.
Encore faut-il ajouter des sites internet dessus, transférer les fichiers, faire pointer les DNS dessus, etc...
Voici donc la marche à suivre pour ajouter un nouveau site sur le site :
I : Ajouter un nouvel utilisateur avec la commande :
useradd -m -g www-data DOMUSER
Comme nous avons créer le dossier www dans /etc/skel, la création de l'utilisateur va directement crée le /home de ce dernier avec le dossier pour contenir les fichiers du futur site web.
Dans ce dernier billet, je vais recensé tout un tas de petites choses qui améliore la vie du serveur et de l'administrateur.
Tout d'abord, je vous conseille de modifier les heures d'exécution des tâches cron dans /etc/crontab pour mettre des heures de creux de votre serveur ; pensez aux graphes de munin pour définir ces heures !
Ensuite, installons de nouveaux paquets :
apt-get install screen ncftp ntpdate apticron
Screen permet de lancer un nouveau shell dans un shell courant.
UPDATE : voir la version à jour pour Debian Squeeze pour l'installation de Munin.
UPDATE : voir la version à jour pour Debian Squeeze pour l'installation de Monit.
Notre serveur fonctionne bien, avec quelques bans pour différents services. Mais qu'arrive-t-il si un démon tombe en panne ? Et puis comment connait-on la charge du serveur ?
Monit va répondre à la première question en vérifiant à intervalle régulier tous les services et les redémarrer si besoin.