Installation de glpi 0.70.2

Published on Monday, March 3rd, 2008

Installez les paquets nécessaire pour faire tourner glpi:

gestion2:~# apt-get install apache2 mysql-server-5.0 php5 php5-mysql php5-ldap

Le package php5-ldap n’est pas nécessaire si vous n’utilisez pas le ldap pour vous authentifier sur glpi.

Décompressez l’archive récupérée sur le site de glpi:

gestion2:/var/www# tar -xvzf glpi-0.70.2.tar.gz

Donner les droits nécessaires à l’utilisateur apache pour qu’il puisse lire les fichiers glpi:

gestion2:/var/www# chown -R www-data. /var/www/glpi/files/
gestion2:/var/www# chown -R www-data. /var/www/glpi/config/

Configurez le site glpi

gestion2:/var/www# cp /etc/apache2/sites-available/default /etc/apache2/sites-available/glpi

Modifiez les premières lignes du fichier /etc/apache2/sites-available/glpi:

NameVirtualHost *:80
<virtualhost:80>
ServerAdmin webmaster@localhost
ServerName glpi.gestion2.404blog.net
ServerAlias glpi.gestion2
DocumentRoot /var/www/glpi

Commentez la redirection:

#RedirectMatch ^/$ /apache2-default/

Autorisez le site glpi et rechargez apache:

gestion2:/var/www# a2ensite glpi; /etc/init.d/apache2 force-reload
Site glpi installed; run /etc/init.d/apache2 reload to enable.

Créez la base de donnée glpi et donnez les droits nécessaires à l’utilisateur glpi:

mysql> create database glpi;
Query OK, 1 row affected (0.00 sec)

mysql> GRANT ALL PRIVILEGES ON glpi.* TO 'glpi'@'localhost' IDENTIFIED BY 'glpi' WITH GRANT OPTION;

Augmentez la taille de la mémoire allouée dans le fichier /etc/php5/apache2/php.ini:

memory_limit = 32M ; Maximum amount of memory a script may consume (16MB)

N’oubliez pas de recharger apache une dernière fois:

gestion2:/var/www# /etc/init.d/apache2 force-reload

Il ne vous restes plus qu’à faire pointer votre browser vers http://glpi.gestion2 et suivre les instructions.
En cas de fausse manipulation il suffit de supprimer le fichier /var/www/glpi/config/config_db.php et de refaire pointer votre browser sur votre site glpi.


Création d’un certificat

Published on Wednesday, February 27th, 2008

Nous utiliserons également le script fourni par le package openssl, /usr/lib/ssl/misc/CA.pl

On se rend dans le répertoire ou nous avons créé la CA et nous lançons le script pour créer une requête de certificat:

testssl:~# cd certs/
testssl:~/certs#usr/lib/ssl/misc/CA.pl -newreq

Une fois que nous avons répondu aux différentes questions nous retrouvons la clef dans le fichier newkey.pem et la requête dans newreq.pem.

Il ne reste plus qu’à faire signer la requête de certificat par la CA:

testssl:~/certs#usr/lib/ssl/misc/CA.pl -sign

Nous retrouverons notre certificat signé dans le fichier newcert.pem.

Si vous utilisez un site web en https avec le certificat créé ci-dessus, à chaque redémarrage d’apache la pass phrase du site en question vous sera demandée.
Pour ne plus devoir entrer de pass phrase à chaque redémarrage il suffit de décrypter la clef avec la commande suivante et de remplacer la clef d’origne par cette clef décryptée:

testssl:~/certs#openssl rsa -in newkey.pem -out decrypted_key.pem


Création d’une CA

Published on Wednesday, February 27th, 2008

La création d’une CA va nous permettre de signer directement nos certificats.

Nous utiliserons le script fourni par le package openssl, /usr/lib/ssl/misc/CA.pl

Nous allons tout d’abord créer un répertoire dans lequel nous sotckerons notre CA ainsi que nos certificats:

testssl:~# mkdir certs; cd certs

Création de la CA qui sera stockée par défaut dans certs/demoCA. Pour changer ce comportement il suffit de modifier le script CA.pl, attention d’être cohérent avec /etc/ssl/openssl.cnf qui sera utilisé pour signer les certificats:

testssl:~/certs# /usr/lib/ssl/misc/CA.pl -newca

Le script demandera de rentrer certaines informations qui peuvent être renseignées par défaut dans /etc/ssl/openssl.cnf.

Le certificat créé se trouve maintenant dans certs/demoCA/cacert.pem

Par défaut la CA sera valable 3 ans pour modifier la durée de validité de la CA on peut soit le renseigner directement dans le script CA.pl ou utiliser la commande suivante qui fera passer la validité de 3 à 10 ans:

openssl x509 -in demoCA/cacert.pem -days 3650 -out demoCA/cacert.pem -signkey demoCA/private/cakey.pem


Installation d’une machine virtuelle Windows Xp avec xen-tools

Published on Friday, February 15th, 2008

Pour pouvoir installer une machine virtuelle Windows il faut avoir un processeur HVM.
Si vous disposez d’un processeur Intel la commande suivante permet de voir si il supporte la VT (virtualization technologie), si c’est le cas vous devriez retrouver le flag vmx dans le cpuinfo:

cat /proc/cpuinfo |grep vmx

Installation du paquage nécessaire en plus de tous les autres installés précédemment:

testvt:~# apt-get install xen-ioemu-3.0.3-1

Création de la partition sur laquelle on installera Windows:

testvt:~# dd if=/dev/zero of=xp.img bs=1M count=6000

Création du fichier de configuration de la machine virtuelle dans /etc/xen/:

kernel = "/usr/lib/xen-default/boot/hvmloader"
builder='hvm'
memory = '512'
name = 'xp'
disk = [ 'file:/root/xp.img,ioemu:hda,w','file:/root/xp.iso,ioemu:hdc:cdrom,r' ]
vif = [ 'type=ioemu, bridge=xenbr1' ]
device_model = '/usr/lib/xen-default/bin/qemu-dm'
memmap = '/usr/lib/xen/boot/mem-map.sxp'
boot='d'
sdl=0
vnc=1

Une fois que la machine est installée il faut remplacer boot=’d’ par boot=’c’ pour ne plus booter sur l’iso de windows.

Rajouter la ligne suivante dans le fichier /etc/xen/xend-config.sxp pour accéder via vnc à l’installation de la machine:

(vnc-listen '0.0.0.0')

Il suffit maintenant de lancer la machine virtuelle:

xm create xp.cfg

On accède à l’installation via vncviewer:

vncviewer testvt


Installation d’un bureau gnome sur une machine virtuelle debian

Published on Thursday, February 14th, 2008

testvt:/etc/xen#xm console vmzakedoem

Installation des différents paquets sur la machine virtuelle:

vmzakedoem:~# apt-get install gnome-desktop-environment xserver-xorg xutils

Attention après l’installation de ces paquets udev est automatiquement installé. Il faut donc recopier l’adresse mac indiquées dans
/etc/udev/rules.d/z25_persistent-net.rules dans le fichier /etc/xen/vmzakedoem.cfg du dom0. Cette manipulation empêchera udev d’incrémenter automatiquement l’interface réseau (eth0, eth1, eth3, …)

testvt:/etc/xen# grep vif /etc/xen/vmzakedoem.cfg
vif = [ 'mac=xx:xx:xx:xx:xx' ]

Pour accéder au bureau gnome de la machine virtuelle via xdmcp il faut rajouter les lignes suivantes dans le fichier /etc/gdm/gdm.conf de la machine virtuelle:

[security]
DisallowTCP=false
[xdmcp]
Enable=true

Pour accéder à la machine distante j’installe le paquet suivant:

vincent@zakedoem:/tmp$ sudo apt-get install xserver-xephyr

La machine virtuelle est accessible via:

vincent@zakedoem:/tmp$ gdmflexiserver -n


Installation d’une machine virtuelle debian avec xen-tools

Published on Wednesday, February 13th, 2008

Les machines virtuelles seront installées sur du lvm

Création d’une nouvelle partition de type LVM Linux (8e):

testvt:~# fdisk /dev/sda
testvt:~# partprobe

Création du physical volume:

testvt:~# pvcreate /dev/sda4

Création du volume group:

testvt:~# vgcreate volgroup0 /dev/sda4

Les logical volumes contenant l’installation des machines virtuelles seront créés automatiquement par xen-create-image.

Il faut maintenant éditer le fichier xentools.conf qui est lu lors de la création de machines virtuelles:

testvt:~# vi /etc/xen-tools/xen-tools.conf

Dans ce fichier on peut lui renseigner le taille de la swap, de la mémoire réservée par dom0 pour le nouveau domU créé ,de la partition principale, …

size = 4Gb # Disk image size.
memory = 512Mb # Memory size
swap = 512Mb # Swap size
# noswap = 1 # Don't use swap at all for the new system.
fs = ext3 # use the EXT3 filesystem for the disk image.
dist = etch # Default distribution to install.

Le Kernel et le ram disque utilisés par défaut:

# Default kernel and ramdisk to use for the virtual servers
kernel = /boot/vmlinuz-2.6.18-6-xen-686
initrd = /boot/initrd.img-2.6.18-6-xen-686

Le mirroir par défaut qui sera utilisé par debootstrap:

mirror = http://ftp.belnet.be/debian

Toutes les informations présentes dans le fichier xen-tools.conf ne devront plus être renseignées sur la ligne de commande, mais elles peuvent toujours être écrasées en les passant directement en arguments à xen-create-image.

On peut maintenant créer notre machine virtuelle debian:

testvt:~# xen-create-image --lvm /dev/volgroup0 --host vmzakedoem --debootstrap

Il est toujours possible de faire quelques modifications dans le fichier /etc/xen/vmzakedoem.cfg généré par xen-create-image.

Pour démarrer la machine virtuelle il suffit de lancer:

xm create -c vmzakedoem.cfg


Installation de l’hyperviseur Xen

Published on Tuesday, February 12th, 2008

Installation des différents paquets:

testvt:~# apt-get install linux-image-2.6-xen-686 xen-hypervisor-3.0.3-1-i386-pae xen-tools bridge-utils libc6-xen sysfsutils

Il faut ensuite redémarrer la machine pour booter sur le nouveau kernel installé:

testvt:~# init 6

Un fois que l’on tourne sur le nouveau kernel il faut configurer le dom0 pour qu’il utilise correctement les “network bridge”, pour cela
les lignes suivantes doivent être décommentées dans /etc/xen/xend-config.sxp:

(network-script network-bridge)
(vif-script vif-bridge)

Les modifications seront prises en compte après le redémarrage de Xen:

testvt:~# /etc/init.d/xend restart

Si on lance la commande ifconfig on peut voir les différentes interfaces virtuelles crées par le script /etc/xen/script/network-bridge ( peth1, vif 0.1, xenbr1 ) nécessaire pour dom0.


Nagios-nrpe-server

Published on Monday, November 12th, 2007

L’addon nrpe va nous permettre d’exécuter des plugins nagios sur une machine distante (ex: check_disk, check_apt, ….).

Côté client:

Installation de l’addon nrpe:

vincent@zakedoem:~$ sudo apt-get install nagios-nrpe-server

Installation des plugins nagios:

vincent@zakedoem:~$ sudo apt-get install nagios-plugins-basic

Edition du fichier /etc/nagios/nrpe.cfg:

vincent@zakedoem:~$ sudo vi /etc/nagios/nrpe.cfg

Dans l’exemple suivant nous exécutons les plugins check_apt et check_disk (warning à 20%, critical à 10%) sur la machine cliente:

command[check_disk1]=/usr/lib/nagios/plugins/check_disk -w 20 -c 10 -p /dev/sda9
command[check_apt]=/usr/lib/nagios/plugins/check_apt

Il ne reste plus qu’à redémarrer le service:

vincent@zakedoem:~$ sudo /etc/init.d/nagios-nrpe-server restart

Côté serveur:

Installer le plugin check_nrpe:

nagios:~# apt-get install nagios-nrpe-plugin

Editer le fichier des services /etc/nagios2/conf.d/services_nagios2.cfg et rajouter le check_apt et le check_disk:

# check disk space
define service {
hostgroup_name zakedoem
service_description espace libre sur /home
check_command check_nrpe!check_disk1
use generic-service
notification_interval 0 ; set > 0 if you want to be renotified
}

# check updates
define service {
host_name zakedoem
service_description apt security
check_command check_nrpe_1arg!check_apt
use generic-service
notification_interval 0 ; set > 0 if you want to be renotified
}

Comme check_apt ne requiert aucun argument on utilise la commande check_nrpe_1arg.

Il ne reste plus qu’à redémarrer nagios:

nagios:~# pkill nagios; /etc/init.d/nagios2 restart
Restarting nagios2 monitoring daemon: nagios2.


Nagios installation

Published on Saturday, October 20th, 2007

Voici comment installer et configurer nagios sur une debian:

Installation d’apache 2:

vincent@zakedoem:~$ sudo apt-get install apache2

Installation de nagios 2:

vincent@zakedoem:~$ sudo apt-get install nagios2

Ajout de l’utilisateur ayant accès à l’interface web de nagios:

vincent@zakedoem:~$ sudo htpasswd -c /etc/nagios2/htpasswd.users nagiosadmin
Password:

L’interface web de nagios est désormais accessible via http://127.0.0.1/nagios2/

Il faut que les utilisateurs nagios et www-data aient accès à /var/lib/nagios2/rw/nagios.cmd, fichier utilisé par nagios pour les commandes externes:

vincent@zakedoem:~$sudo chown nagios:www-data /var/lib/nagios2/
vincent@zakedoem:~$sudo chown nagios:www-data /var/lib/nagios2/rw/

Ajouter les droits au propriétaire et au groupe propriétaire sur /var/lib/nagios2/rw pour que l’on puisse accéder au fichier nagios.cmd depuis l’inreface:

vincent@zakedoem:~$ sudo chmod u+rwx /var/lib/nagios2/rw/
vincent@zakedoem:~$ sudo chmod g+rwx /var/lib/nagios2/rw/
vincent@zakedoem:~$ sudo chmod g+s /var/lib/nagios2/
vincent@zakedoem:~$ sudo chmod g+s /var/lib/nagios2/rw/

Dernière petite modification avant de pouvoir rajouter une machine distante à monitorer, il faut permettre à nagios de faire des “check” sur des commandes externes.
Il faut donc mettre check_external_commands=1 dans le fichier /etc/nagios2/nagios.cfg

Maintenant que nous avons quelque chose de fonctionnel il n’y a plus qu’à rajouter les différentes machines et les services à monitorer dans les fichiers de configuration.
On peut ajouter les machines à monitorer dans un fichier que nous allons créer dans /etc/nagios2/conf.d/

vincent@zakedoem:~$ sudo vi host-linux_nagios2.cfg

Voici ce que l’on retrouve dans le fichier host-linux:

vincent@zakedoem:~$ sudo cat /etc/nagios2/conf.d/host-linux_nagios2.cfg
define host{
host_name test
alias machine de vincent
address 192.168.23.8
use generic-host
}

On peut maintenant redémarrer nagios et se rendre dans l’interface web pour voir l’état de la machine test:

pkill nagios2; /etc/init.d/nagios2 start


Apt

Published on Thursday, September 13th, 2007

Apt (advanced packaging tool) est un front-end pour dpkg qui permet de faciliter l’installation de software.
Voici quelques exemples d’utilisation d’apt:

Installation d’un paquet:
vincent@zakedoem:~$ sudo apt-get install nagios-nrpe-server

Recherche d’un paquet:

vincent@zakedoem:~$ sudo apt-cache search nagios

Pour faciliter l’installation de paquets la complétion avec apt-get install peut s’avérer très utile:

vincent@zakedoem:~$ . /etc/bash_completion

Désinstallation d’un paquet:

vincent@zakedoem:~$ sudo apt-get remove nagios-nrpe-server

Désintallation d’un paquet en supprimant tous les fichiers de configuration:

vincent@zakedoem:~$ sudo apt-get remove --purge nagios-nrpe-server

Apt-file va nous permettre de retrouver à quel paquet appartient un fichier:

vincent@zakedoem:~$ sudo apt-get install apt-file

Après avoir installé apt-get file il faut lancer un update:

vincent@zakedoem:~$ sudo apt-file update

Recherche du paquet auquel appartient check_apt:

vincent@zakedoem:~$ sudo apt-file search check_apt
nagios-plugins-basic: usr/lib/nagios/plugins/check_apt

Lister les infos sur un paquet:

vincent@zakedoem:~$ sudo apt-cache show nagios2

Lister tous les fichiers fournis par un paquet:

vincent@zakedoem:~$ sudo apt-file list nagios-plugins-basic

Lister toutes les dépendances d’un paquet:

vincent@zakedoem:~$ apt-rdepends nagios-nrpe-server