Vous êtes ici:

Menu


Stacks Image 5804
Voici la première maquette qui servira aussi pour la configuration des installations de supervision. Petite mise à jour avec Debian Jessie et corrections d’erreurs sur les pages.
 

1 Plantons le décor

Pour cette première maquette, nous allons créer notre petite entreprise. Nous l'appellerons DUCHMOL, elle aura un nom de domaine duchmol.net. Trois personnes travaillent dans cette entreprise : un patron, un informaticien et un stagiaire. Chacun aura un rôle bien défini dans les rôles d'administration de la supervision. L'entreprise DUCHMOL est équipée d'un site web gréé par le stagiaire. Celui-ci aura une délégation sur la supervision pour sa partie concernée au Web. Le patron aura une visu sur le SI informatique tel un directeur informatique et l'informaticien aura la vision globale du SI. Une connexion LDAP sera nécessaire pour s'authentifier sur la supervision. Un webmail pourra être consulté pour les notifications.
Stacks Image 5945
La maquette DUCHMOL
Stacks Image 5962
L'organigramme de l'entreprise
 

2 Serveur DNS, LDAP, WEBMAIL

Construisons notre premier serveur nommé server3. Nous utiliserons une vm debian comme indiqué dans l’article de l’installation d’une VM VMware Fusion.

2.1 Configuration de base

Notre VM étant préparée, installons ssh pour utiliser une fenêtre de terminal.
apt-get install ssh
Modifions le nom du serveur, modifiez /etc/hostname
server3
le fichier host, modifiez /etc/hosts
127.0.0.1       localhost.duchmol.net   localhost
127.0.1.1       server3.duchmol.net     server3
172.16.209.52   server3.duchmol.net     server3
et l'adresse IP, modifiez /etc/network/interfaces
iface eth0 inet static
	address 172.16.209.52
	netmask 255.255.255.0
	gateway 172.16.209.2

2.2 DNS

Installons les paquets pour le DNS et les outils correspondants.
apt-get install bind9 dnsutils

2.2.a configuration

InstallonCréation des fichiers de la zone duchmol.net. Ajoutons le fichier /etc/bind/db.duchmol.net pour créer la zone principale
$ORIGIN duchmol.net.
$TTL    1600
@ IN SOA server3.duchmol.net. root.duchmol.net.  (
        20140324   ; Serial  -> N° de série à incrémenter à chaque modif
                   ;            de ce fichier. Ce N° est utilisé par les
                   ;            serveurs esclaves pour lui indiquer qu'il
                   ;            doit mettre à jour sa base. Par commodité
                   ;            ce n° est une date à l'envers.
        604800     ;Refresh ->  A l'expiration du délai Refresh exprimé en
                   ;            secondes, le serveur excalve va entrer en
                   ;            communication avec le maitre et si il ne
                   ;            le trouve pas, il fera une nouvelle
                   ;            tentative au bout du délai Retry et si au
                   ;            bout du délai Expire il considerera que le
                   ;            serveur n'est plus disponible.
        86400      ; Retry
        2419200    ; Expire
        604800 )   ; Minimum -> Durée de vie minimum du cache en secondes


;** Les 3 lignes suivantes permettent au serveur de se retrouver lui même
@       IN        NS      server3.duchmol.net.        ;Nom du serveur
@       IN        MX      10    server3.duchmol.net.
server3 IN        A       172.16.209.52                     ;Adresse IP du serveur de noms
server3 IN        HINFO   "vmfusion :-)" "Debian Testing"  ;Info complèmentaire

;** Les lignes suivantes définissent la table entre les noms et les IP
ldap    CNAME   server3
imap    CNAME   server3
pop     CNAME   server3
smtp    CNAME   server3

;** Les lignes suivantes sont des alias entre des noms et des autres noms
supervision       A       172.16.209.50                     ;Adresse IP du serveur Nagios-Centreon
weblamp           A       172.16.209.51                     ;serveur weblamp
Création de la zone inverse, créez le fichier /etc/bind/db.duchmol.net.inv pour la résolution inverse
$ORIGIN 209.16.172.in-addr.arpa.
$TTL    1600
@       IN      SOA     server3.duchmol.net.  root.duchmol.net.  (
                      20140324
                        604800
                         86400
                       2419200
                        604800 )

@       IN        NS      server3.duchmol.net.

52               PTR     server3.duchmol.net. 
51               PTR     weblamp.duchmol.net
50               PTR     supervision.duchmol.net.
Modifier le fichier de configuration local de bin, /etc/bind/named.conf.local
//
// Do any local configuration here
//

// Consider adding the 1918 zones here, if they are not used in your
// organization
//include "/etc/bind/zones.rfc1918";

zone "duchmol.net" {
       type master;
       file "/etc/bind/db.duchmol.net";
       forwarders{};
};

zone "209.16.172.in-addr.arpa" {
       type master;
       file "/etc/bind/db.duchmol.net.inv";
       forwarders{};
};
Attention de ne pas oublier de modifier le fichier /etc/resolv.conf.
domain duchmol.net
search duchmol.net
nameserver 172.16.209.52
On relance le service dns
service bind9 restart
[....] Stopping domain name service...: bind9waiting for pid 2289 to die
. ok 
[ ok ] Starting domain name service...: bind9.

2.2.b vérification du fonctionnement

On vérifie les logs, il ne doit pas avoir d'erreur.
# tail /var/log/syslog
Mar 30 18:07:52 server3 named[3045]: command channel listening on 127.0.0.1#953
Mar 30 18:07:52 server3 named[3045]: command channel listening on ::1#953
Mar 30 18:07:52 server3 named[3045]: zone 0.in-addr.arpa/IN: loaded serial 1
Mar 30 18:07:52 server3 named[3045]: zone 127.in-addr.arpa/IN: loaded serial 1
Mar 30 18:07:52 server3 named[3045]: zone 209.16.172.in-addr.arpa/IN: loaded serial 20140324
Mar 30 18:07:52 server3 named[3045]: zone 255.in-addr.arpa/IN: loaded serial 1
Mar 30 18:07:52 server3 named[3045]: zone localhost/IN: loaded serial 2
Mar 30 18:07:52 server3 named[3045]: zone duchmol.net/IN: loaded serial 20140324
Mar 30 18:07:52 server3 named[3045]: managed-keys-zone ./IN: loaded serial 11
Mar 30 18:07:52 server3 named[3045]: running
Nous allons vérifier la résolution dns avec nslookup.
# nslookup
> server3
Server:		172.16.209.52
Address:	172.16.209.52#53

Name:	server3.duchmol.net
Address: 172.16.209.52
> server3.duchmol.net
Server:		172.16.209.52
Address:	172.16.209.52#53

Name:	server3.duchmol.net
Address: 172.16.209.52
On vérifie la fonction de forwarder (redirection).
> google.fr
Server:		172.16.209.52
Address:	172.16.209.52#53

Non-authoritative answer:
Name:	google.fr
Address: 173.194.40.120
Name:	google.fr
Address: 173.194.40.127
Name:	google.fr
Address: 173.194.40.119

2.3 LDAP

Installons les paquets pour LDAP et les outils web correspondants. A l'installation de LDAP, on vous demandera un mot de passe administrateur. Notez le, vous en aurez besoin lors de la configuration de notre maquette.
apt-get install slapd ldap-utils phpldapadmin

2.3.a configuration

Configurez LDAP
dpkg-reconfigure slapd
Stacks Image 6984
Sélectionnez Non
Stacks Image 6997
Saisissez le nom de domaine duchmol.net
Stacks Image 7010
Indiquez un nom d'entité duchmol
Stacks Image 7023
Saisissez le mot de passe administrateur de LDAP et confirmez une nouvelle fois
Stacks Image 7036
Sélectionnez le module MDB.
Stacks Image 10959
Sélectionnez Non.
Stacks Image 7049
Sélectionnez Oui pour déplacer l'ancienne base de données.
Stacks Image 7062
Sélectionnez Non pour le protocole LDAPv2.
Nous avons besoin du schéma de Courier pour notre base LDAP. Installons les paquets pour COURIER et les outils correspondants.
apt-get install courier-base courier-authdaemon courier-imap courier-authlib-ldap courier-pop courier-ldap fam
Stacks Image 7099
Répondre non à cette question.
Il faut récupérer le schéma pour l'authentification de COURIER avec LDAP et l'inclure dans notre base LDAP. Si le fichier est compressé, utilisez cette commande :
zcat /usr/share/doc/courier-authlib-ldap/authldap.schema.gz > /etc/ldap/schema/authldap.schema
Sinon utilisez cette commande :
cat /usr/share/doc/courier-authlib-ldap/authldap.schema > /etc/ldap/schema/authldap.schema
Vous devrez corriger ce schéma en supprimant la chaine $ mailhost située à la description de la classe d'objet CourierMailAccount (ligne MAY)
objectclass ( 1.3.6.1.4.1.10018.1.2.1 NAME 'CourierMailAccount'
     DESC 'Mail account object as used by the Courier mail server'
     SUP top AUXILIARY
     MUST ( mail $ homeDirectory )
     MAY ( uidNumber $ gidNumber $ mailbox $ uid $ cn $ gecos $ description $ loginShell $ quota $ userPassword $ clearPassword $ defaultdelivery $ disableimap $ disablepop3 $ disablewebmail $ sharedgroup $ disableshared ) )
Générez le schéma complet de votre LDAP. Appliquez les droits sur la configuration et redémarrez LDAP.
cat > /etc/ldap/slapd.conf << EOF
include         /etc/ldap/schema/core.schema
include         /etc/ldap/schema/cosine.schema
include         /etc/ldap/schema/nis.schema
include         /etc/ldap/schema/inetorgperson.schema
include         /etc/ldap/schema/authldap.schema
EOF
rm -R /etc/ldap/slapd.d/cn\=config/cn\=schema/*
slaptest -f /etc/ldap/slapd.conf -F /etc/ldap/slapd.d/
chown openldap:openldap /etc/ldap/schema/ -R
chown openldap:openldap /etc/ldap/slapd.d/ -R
service slapd restart
Vous pouvez vérifier le fonctionnement de votre LDAP
ldapsearch -h ldap -b dc=duchmol,dc=net -x

2.3.b Peuplement de votre LDAP

Créez un fichier ldif addcontact.ldif comme ci-dessous. Ne vous inquiétez pas pour les mots de passe, vous pourrez les redéfinir avec l'interface web phpldapadmin.
dn: o=maboite,dc=duchmol,dc=net
objectClass: CourierDomainAlias
objectClass: organization
objectClass: top
o: maboite
virtualdomain: duchmol.net
virtualdomainuser: duchmol.net/

dn: ou=users,o=maboite,dc=duchmol,dc=net
objectClass: organizationalUnit
objectClass: top
ou: users

dn: ou=aliases,o=maboite,dc=duchmol,dc=net
objectClass: organizationalUnit
objectClass: top
ou: aliases

dn: cn=jean.dupont,ou=users,o=maboite,dc=duchmol,dc=net
objectClass: inetOrgPerson
objectClass: organizationalPerson
objectClass: person
objectClass: CourierMailAccount
objectClass: top
cn: jean.dupont
gidNumber: 5000
givenName: jdupont
homeDirectory: /home/vmail/
mail: jean.dupont@duchmol.net
mailbox: duchmol.net/jean.dupont/
sn: dupont
uid: jean.dupont
uidNumber: 5000
quota: 500
userPassword: {SSHA} e1NTSEF9MTk2QzBtbEU0Wi9BN0RjeVpHa1Y0Zm1lT1l6d3RoZ1MK

dn: cn=eric.coquard,ou=users,o=maboite,dc=duchmol,dc=net
objectClass: inetOrgPerson
objectClass: organizationalPerson
objectClass: person
objectClass: CourierMailAccount
objectClass: top
cn: eric.coquard
gidNumber: 5001
givenName: ecoquard
homeDirectory: /home/vmail/
mail: eric.coquard@duchmol.net
mailbox: duchmol.net/eric.coquard/
sn: coquard
uid: eric.coquard
uidNumber: 5001
quota: 500
userPassword:{SSHA} e1NTSEF9Zlh2Qi9jS2hRMU1uZFFtcGx5elA5c3VIRWdxL0ViaWoK

dn: cn=alain.durand,ou=users,o=maboite,dc=duchmol,dc=net
objectClass: inetOrgPerson
objectClass: organizationalPerson
objectClass: person
objectClass: CourierMailAccount
objectClass: top
cn: alain.durand
gidNumber: 5002
givenName: adurand
homeDirectory: /home/vmail/
mail: alain.durand@duchmol.net
mailbox: duchmol.net/alain.durand/
sn: durand
uid: alain.durand
uidNumber: 5002
quota: 500
userPassword:{SSHA} e1NTSEF9d09wOEVobFJSeUEyNDk0cEJ3NUR3T1ZXNmhFQ0IraVgK
Peuplez votre base LDAP avec la commande suivante
ldapadd -D "cn=admin,dc=duchmol,dc=net" -W -h localhost -f addcontact.ldif
Si vous avez fait une erreur et que vous voulez repartir sur une base propre, vous pouvez utiliser cette commande.
ldapdelete -D "cn=admin,dc=duchmol,dc=net" -W -h localhost -v -r "dc=duchmol,dc=net"

2.3.c Configuration de phpldapadmin

Modifiez les paramètres du fichiers de configuration /etc/phpldapadmin/config.php pour l'adapter à notre configuration.
$servers->setValue('server','base',array('dc=duchmol,dc=net'));
$servers->setValue('login','bind_id','cn=admin,dc=duchmol,dc=net');
Créez le lien symbolique pour avoir accès à partir d'apache
 ln -s /usr/share/phpldapadmin/ /var/www/ldap
Connectez vous avec votre navigateur à l'url http://172.16.209.52/phpldapadmin/
Stacks Image 7264
Cliquez sur connexion, le champ DN est normalement pré enregistré. Saisissez votre mot de passe administrateur et cliquez sur S'authentifier
Stacks Image 7277
Vous devez visualiser les comptes qui seront utilisés pour Centreon
Initialisez les mots de passe des comptes comme indiqué sur l'organigramme précédent. Passons à la configuration de POSTFIX.

2.4 POSTFIX

Installons les paquets correspondants à POSTFIX.
apt-get install postfix postfix-ldap postfix-pcre
Stacks Image 7306
Sélectionnez Site Internet
Stacks Image 7319
Saisissez le nom du serveur server3.duchmol.net

2.4.a Configuration

Nous allons créer un utilisateur système pour gérer les utilisateurs
groupadd -g 6000 vmail
useradd -u 6000 -g 6000 -d /home/vmail -s /bin/false -m vmail
Il faut aussi créer les boîtes mail des utilisateurs
mkdir –p /home/vmail/duchmol.net/
cd /home/vmail/duchmol.net/
maildirmake eric.coquard
maildirmake -f Sent eric.coquard
maildirmake -f Queue eric.coquard
maildirmake -f junkmail eric.coquard
maildirmake -f virus eric.coquard
maildirmake -f Drafts eric.coquard
maildirmake -f Trash eric.coquard
maildirmake jean.dupont
maildirmake -f Sent jean.dupont
maildirmake -f Queue jean.dupont
maildirmake -f junkmail jean.dupont
maildirmake -f virus jean.dupont
maildirmake -f Drafts jean.dupont
maildirmake -f Trash jean.dupont
maildirmake alain.durand
maildirmake -f Sent alain.durand
maildirmake -f Queue alain.durand
maildirmake -f junkmail alain.durand
maildirmake -f virus alain.durand
maildirmake -f Drafts alain.durand
maildirmake -f Trash alain.durand
chown -R vmail:vmail /home/vmail
Rajoutons les lignes suivantes dans le fichier /etc/postfix/main.cf
virtual_mailbox_domains = ldap:/etc/postfix/ldap-domains.cf
virtual_mailbox_base = /home/vmail
virtual_mailbox_maps = ldap:/etc/postfix/ldap-accounts.cf
virtual_minimum_uid = 100
virtual_gid_maps = static:6000
virtual_uid_maps = static:6000
virtual_alias_maps = ldap:/etc/postfix/ldap-aliases.cf
unknown_local_recipient_reject_code = 450
N'oubliez pas d'autorisez le réseau dans la configuration POSTFIX.
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 172.16.209.0/24
Il nous faut ensuite créer les 3 fichiers pour la connectivité LDAP : ldap-domains.cf, ldap-accounts.cf, ldap-aliases.cf. N'oubliez pas de remplacer la chaine [mot de passe] par votre mot de passe préféré.
cat > /etc/postfix/ldap-domains.cf << EOF
server_host = localhost
server_port = 389
search_base = dc=duchmol,dc=net
query_filter = (&(objectClass=CourierDomainAlias)(virtualdomain=%s))
result_attribute = virtualdomain
bind = yes
bind_dn = cn=admin,dc=duchmol,dc=net
bind_pw = [mot de passe]
version = 3
EOF
cat > /etc/postfix/ldap-accounts.cf << EOF
server_host = localhost
server_port = 389
search_base = dc=duchmol,dc=net
query_filter = (& (objectClass=CourierMailAccount)(mail=%s))
result_attribute = mailbox
bind = yes
bind_dn = cn=admin,dc=duchmol,dc=net
bind_pw = [mot de passe]
version = 3
EOF
cat >  /etc/postfix/ldap-aliases.cf << EOF
server_host = localhost
search_base = dc=duchmol,dc=net
query_filter = (&(objectClass=CourierMailAlias) (mail=%s))
result_attribute = maildrop
bind = yes
bind_dn = cn=admin,dc=duchmol,dc=net
bind_pw = [mot de passe]
version = 3
EOF

2.4.b vérification du fonctionnement

Vérifions le paramétrage et relançons le serveur.
postfix check
service postfix stop
newaliases
service postfix start

2.5 Courier

Passons à la configuration du serveur IMAP. Pour cela, éditons le fichier /etc/courier/authdaemonrc. Modifions la ligne suivante :
authmodulelist="authldap"
Pour l'authentification LDAP, éditons le fichier /etc/courier/authldaprc. Modifiez les lignes suivantes.
LDAP_URI                ldap://ldap.duchmol.net
LDAP_BASEDN             dc=duchmol, dc=net
LDAP_BINDDN             cn=admin, dc=duchmol, dc=net
LDAP_BINDPW             [mot de passe]
LDAP_DOMAIN     	duchmol.net
LDAP_GLOB_UID           vmail
LDAP_GLOB_GID           vmail
#LDAP_CLEARPW           clearPassword
LDAP_CRYPTPW            userPassword
Redémarrer le service courier
service courier-authdaemon restart
vérification courier
afin de vérifier le bon fonctionnement de COURIER, vous pouvez utiliser cette commande. Elle vous retournera les informations de la personne concernée.
authtest jean.dupont@duchmol.net
Authentication succeeded.

Authenticated: jean.dupont@duchmol.net (uid 6000, gid 6000)
Home Directory: /home/vmail/
Maildir: duchmol.net/jean.dupont/
Quota: (none)
Encrypted Password: {SSHA}7/SIWphkpXrxbgjEDAi060muWemJ7RFX
Cleartext Password: (none)
Options: (none)

2.6 Webmail

Installons maintenant un webmail, nous utiliserons SquirrelMail, pour sa simplicité d'utilisation.
apt-get install squirrelmail

2.6.a Configuration Apache 2.2

Effectuez un lien symbolique pour fonctionner avec le serveur Web.
ln -s /usr/share/squirrelmail/ /var/www/webmail

2.6.b Configuration Apache 2.4

Copiez le fichier de configuration de squirrelmail.
cp /etc/squirrelmail/apache.conf /etc/apache2/sites-available/squirrelmail.conf
Activez le fichier de configuration et rechargez apache.
a2ensite squirrelmail.conf
service apache2 reload

2.6.c Configuration de SquirrelMail

Configurez SquirrelMail avec COURIER
squirrelmail-configure
Stacks Image 6626
Sélectionnez D
Stacks Image 6643
Sélectionnez courier
Stacks Image 6662
Appuyez sur une touche pour continuer
Stacks Image 6679
Sauvegardez la configuration
Stacks Image 6696
Appuyer sur une touche pour continuer
Stacks Image 6713
Sélectionnez Q pour quitter
vérification SquirrelMail
Pour vérifier la configuration via le navigateur Web, saisissez l'url suivante
http://172.16.209.52/webmail/src/configtest.php

Vous obtiendrez la page suivante.
Voila_Capture 2014-03-31_06-17-28_PM
Connectez-vous a votre webmail avec un compte.
Stacks Image 6759
Authentification Webmail
Stacks Image 6776
Le Webmail fonctionne avec une supervision Centreon

2.6.d Support de la langue française

Vous avez la possibilité de modifier la langue par défaut. Utilisez l'utilitaire de configuration de SquirrelMail.
squirrelmail-configure
Stacks Image 6825
Sélectionnez 10 pour le menu Languages
Stacks Image 6847
Sélectionnez 1 pour changer la langue par défaut
Stacks Image 6863
Saisissez fr_FR
Stacks Image 6882
Sauvegardez en sélectionnant la lettre S puis quittez le programme
Pour obtenir la langue française, vous devez vérifiez vos jeux de paramètres régionaux. Vous devez sélectionnez au moins celui qui est mentionné sur la configuration de SquirrelMail (iso-8859-1). En effet, par défaut, l'installation de Debian vous configure le jeu de paramètre régional fr_FR.UTF 8. Vous n'aurez jamais l'interface de SquirrelMail en français avec ce jeu de paramètre régional. Il faut rajouter le jeu fr_FR ISO-8859-1. Lancez la commande suivante.
dpkg-reconfigure locales
Stacks Image 6917
Sélectionnez le jeu fr_FR ISO-8859-1
Stacks Image 6936
Mettre le jeu fr_FR.UTF-8 actif par défaut
Generating locales (this might take a while)...
  fr_FR.ISO-8859-1... done
  fr_FR.UTF-8... done
Generation complete.
Vous devriez obtenir ce message ci-dessus. Relancez la page de vérification de configuration avec l’url suivante.
http://172.16.209.52/webmail/src/configtest.php
Vérifiez le changement de la langue dans votre interface web de SquirrelMail.
Stacks Image 6974
SquirrelMail est en français
 

3 Serveur Weblamp

Réaliser un serveur Lamp est un jeu d'enfant avec Debian. Installer les paquets suivants.
apt-get install libapache2-mod-php5 php5 php5-common php5-curl php5-dev php5-gd php5-idn php-pear php5-imagick php5-imap php5-json php5-mcrypt php5-memcache php5-mhash php5-ming php5-mysql php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl php-apc mysql-server phpmyadmin apache2-suexec-custom libapache2-mod-suphp vsftpd
 

4 Serveur Supervision

Pour l'installation de votre serveur de supervision, il vous reste à consulter les pages suivantes :
- Installation du moteur de supervision
- Installation du broker
- Installation de l'interface Web.
Je vous invite à consulter mes autres pages
- pour la configuration de base de notre supervision,
- pour l'authentification LDAP,
- pour la gestion des notifications.
- pour l'installation des widgets
comments powered by Disqus
 Vous êtes ici: