11 mars 2006

SSH avec authentification par clef privée/publique

Je veux me connecter à un serveur SSH (debian ip=10.0.0.7) appelé debianvdr à partir d'un powerbook macosx appelé PBJH et ce sans entrer de mot de passe. Il y a un compte hanoteau sur les deux machines.
Prérequis la connexion ssh avec mot de passe fonctionne.
Sur le client (PBJH) il faut entrer les commandes suivantes:

PBJH:~ hanoteau$ ssh-keygen -t dsa
Generating public/private dsa key pair.
Enter file in which to save the key (/Users/hanoteau/.ssh/id_dsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /Users/hanoteau/.ssh/id_dsa.
Your public key has been saved in /Users/hanoteau/.ssh/id_dsa.pub.
The key fingerprint is:
XX:XX:XX................................. hanoteau@PBJH.local
PBJH:~ hanoteau$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/hanoteau/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /Users/hanoteau/.ssh/id_rsa.
Your public key has been saved in /Users/hanoteau/.ssh/id_rsa.pub.
The key fingerprint is:
XX:XX:XX:................................. hanoteau@PBJH.local
PBJH:~ hanoteau$ cd .ssh
PBJH:~/.ssh hanoteau$ ls
id_dsa id_dsa.pub id_rsa id_rsa.pub known_hosts
PBJH:~/.ssh hanoteau$ scp *.pub 10.0.0.7:/home/hanoteau
Password:
id_dsa.pub 100% 609 459.6KB/s 00:00
id_rsa.pub 100% 229 213.5KB/s 00:00
PBJH:~/.ssh hanoteau$

Ensuite sur le serveur (ip 10.0.0.7):

hanoteau@debianvdr:~$ cd /home/hanoteau
hanoteau@debianvdr:~$ mkdir .ssh
hanoteau@debianvdr:~$ cp *.pub .ssh/
hanoteau@debianvdr:~$ cd .ssh
hanoteau@debianvdr:~/.ssh$ ls
id_dsa.pub id_rsa.pub
hanoteau@debianvdr:~/.ssh$ cat id_dsa.pub >> authorized_keys
hanoteau@debianvdr:~/.ssh$ cat id_rsa.pub >> authorized_keys

Désormais on se connecte sans mot de passe depuis le compte hanoteau de PBJH sur le compte hanoteau de debianvdr avec ssh:

PBJH:~ hanoteau$ ssh 10.0.0.7
Linux debianvdr 2.6.15-1-686 #2 Thu Feb 23 05:41:01 CET 2006 i686 GNU/Linux

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
You have new mail.

Last login: Sat Mar 11 17:11:00 2006 from pbjh.lan
hanoteau@debianvdr:~$

07 mars 2006

Installation ntop à partir du cvs sur ubuntu 5.10

sudo apt-get install cvs
user# mkdir cvsntop
user# cd cvsntop
us# export CVSROOT=:pserver:anonymous@cvs.ntop.org:/export/home/ntop
user# cvs login
Logging in to :pserver:anonymous@cvs.ntop.org:2401/export/home/ntop
CVS password:
user# cvs checkout ntop
cvs checkout: Updating ntop
U ntop/AS-list.txt.gz
U ntop/AUTHORS
....

Quelques dizaines de minutes plus tard on peut commencer le vrai travail d'installation:

If you want to program with C/C++ please do the following:

sudo apt-get install build-essential

nous voilà avec un compilateur gcc avec support c++

(apt-get install gcc cpp marche moins bien)

ensuite apt-get install libpcap-dev libgdbm-dev libgd-dev libglib2.0-dev libgdome2-dev libssl-dev libxml-dev libsp-gxmlcpp-dev libgdome2-xslt-dev libwww-dev libgtk1.2-dev libsctp-dev libxml++2.6-dev

./configure --enable-i18n

make

make install

NOTE: ntop can show traffic by AS (Autonomous System) Number

Because this feature consumes a number of MB of memory,
the datafile is not installed by default.

Which, if there is no file - from this or a previous
install - effectively disables the ASN feature.

To install the AS data, type:

# make install-data-as


************************************************************
************************************************************

WARNING: This install created several directories for the ntop
files and databases:

/usr/local/share/ntop
/usr/local/var/ntop
/usr/local/lib/ntop
/usr/local/bin/ntop

This directory MUST be owned by the user
which you are going to use to run ntop.

The command you must issue is something like:

chown -R ntop.ntop /usr/local/share/ntop
chown -R ntop.ntop /usr/local/var/ntop
chown -R ntop.ntop /usr/local/lib/ntop
chown -R ntop.ntop /usr/local/bin/ntop


man chown to check the syntax for YOUR system

la première fois démarrer ntop via
/usr/local/bin/ntop -u ntop
même si on a pas d'invite taper un mot de passe administrateur pour ntop
le retaper quand demandé

pour les fois suivantes démarrer ntop via:


/usr/local/bin/ntop -u ntop -d

firefox

http://localhost:3000/

06 mars 2006

Installation client ocsinventory sur une ubuntu 5.10

Pour installer le tar.gz présent sur le site il faut:

tar zxvf XXX.tar.gz

sudo apt-get install libxml-simple-perl libwww-perl libnet-ip-perl

cd le répertoire adéquat

./ocsinventory-installer.pl

répondre aux questions

03 mars 2006

Intégration OCS dans GLPI sur une sarge

On a suivi les deux autres billets pour installer glpi ocsinventory-ng

sur le site de glpi récupérer glpi-ocs dans la rubrique ressources/plugins

tar zxvf glpi-ocs-v1.0-RC4.tar.gz -C /var/www/apache2-default/glpi/plugins/

ceci devrait être automatique dans les prochaines versions de glpi (1.0 stable par exemple)

Installation ocsinventory-ng sur debian sarge 3.1

apache (et pas apache2 qui est pas directement compatible à la date du 1 mars 2006) et mysql-server-4.1 sont installés

Installation du serveur web d'administration de OCSinventory-ng

Télécharger le tar.gz d'ocsinventory-ng

tar -xvzf ~/OCSNG_LINUX_SERVER_1.0-RC2-FINAL.tar.gz

sudo mkdir /var/www/ocsreports

cd ~/OCSNG_LINUX_SERVER_1.0-RC2/ocsreports

su

cp -R * /var/www/ocsreports/

cd /var/www/

chown -R root:root ocsreports/

chmod gou+rx ocsreports ocsreports/css ocsreports/files ocsreports/image/ ocsreports/languages

chown root:www-data ocsreports

chmod gu+w ocsreports

Installation du serveur de communication de ocsinventoryng

su

apt-get install libxml-simple-perl libcompress-zlib-perl libdbi-perl libdbd-mysql-perl libapache-dbi-perl

chown -R root:root ~/OCSNG_LINUX_SERVER_1.0-RC2/ocsinventory-NG

chmod gou+rx OCSNG_LINUX_SERVER_1.0-RC2/ocsinventory-NG

mv OCSNG_LINUX_SERVER_1.0-RC2/ocsinventory-NG /usr/local

apt-get install libapache-mod-perl libapache-mod-php4

version installée de mod_perl par sarge au 1 mars 2006 est 1.999.21-1
si la version est égale ou supérieure à 1.999.22 alors il y a une manip supplémentaire voir manuel...

cd /usr/local/ocsinventory-NG/

vi Ocsinventory_startup.pl
corriger la ligne approchante comme suit:

use lib "/usr/local/ocsinventory-NG";# <= Change this if Ocsinventory.pm is in an other place

vi /usr/local/ocsinventory-NG/apache_config

Corriger la ligne approchante comme ceci:

PerlRequire /usr/local/ocsinventory-NG/Ocsinventory_startup.pl

vi /etc/apache/httpd.conf

ajouter ceci dans le fichier httpd.conf:

#Include fichier de config pour ocsinventory-ng
Include /etc/apache/ocsinventory-ng.conf


cp /usr/local/ocsinventory-NG/apache_config /etc/apache/ocsinventory-ng.conf

mkdir /var/log/ocsinventory-NG

chown -R www-data:www-data /var/log/ocsinventory-NG

/etc/init.d/apache restart

Application du patch

mkdir patchocs

cp OCSNG_PATCH_SERVER_RC2-1.tar.gz patchocs/

cd patchocs

tar -zxvf OCSNG_PATCH_SERVER_RC2-1.tar.gz OCSNG_PATCH_SERVER_RC2-1/
OCSNG_PATCH_SERVER_RC2-1/ocsinventory-NG/ OCSNG_PATCH_SERVER_RC2-1/ocsinventory-NG/Ocsinventory.pm OCSNG_PATCH_SERVER_RC2-1/Ocsinventory.pm_4_mp_since_1.999_22/ OCSNG_PATCH_SERVER_RC2-1/Ocsinventory.pm_4_mp_since_1.999_22/Ocsinventory.pm OCSNG_PATCH_SERVER_RC2-1/ocsreports/ OCSNG_PATCH_SERVER_RC2-1/ocsreports/preferences.php OCSNG_PATCH_SERVER_RC2-1/README cd OCSNG_PATCH_SERVER_RC2-1/ocsinventory-NG

cp Ocsinventory.pm /usr/local/ocsinventory-NG/
cd OCSNG_PATCH_SERVER_RC2-1/ocsreports

cp preferences.php /var/www/ocsreports/

Configuration finale:

firefox

http://localhost/ocsreports

on demande mysql hostname: localhost mysql login: root mysql password: ****** (simple)

entrer une phrase à afficher au lancement d'un agent

si tout ok

http://localhost/ocsreports login/password = admin/admin
pour activer le changement:


/etc/init.d/apache reload

02 mars 2006

Installer glpi sur une Sarge

Installer GLPI sur une Debian 3.1 (Sarge)


GLPI - Gestionnaire libre de parc informatique
Librement adapté du texte de Aurel du mardi 23 août 2005 lui-même inspiré de la documention réalisée par JMD)-

Je pars du postulat que vous avez une Debian fonctionnelle sur votre machine. La version de la Debian concernée est la Sarge dite stable.

Installation Apache, PHP et MySQL
Premièrement, installons le serveur WEB Apache (www.apache.org). Comme GLPI est programmé en PHP il est nécessaire d'installer le module permettant à apache d'interpréter du PHP.

En « root » taper (nous considérerons que toutes les lignes de commandes seront saisies en root) :
Debian:~# apt-get install apache2 php4 libapache2-mod-php4

Une série de questions vous seront posées auxquelles vous devrez répondre par l'affirmative (« O ») si vous voulez poursuivre l'installation.

Glpi fonctionne également avec une base de données MySQL (www.mysql.com), c'est pourquoi nous avons besoin d'installer « mysql-server » et les librairies PHP qui vont avec.
Debian:~# apt-get install mysql-server php4-mysql

Avant toute chose, démarrer vos deux serveurs Apache et MySQL :
Debian:~# /etc/init.d/apache2 restart Debian:~# /etc/init.d/mysql restart

Nous avons désormais les logiciels nécessaires pour faire fonctionner GLPI mais il reste encore quelques étapes avant de pouvoir l'utiliser.
Nous devons affecter un mot de passe à l'utilisateur root du serveur MySQL (pour des raisons évidentes de sécurité).
Debian:~# mysqladmin -u root password 'password'
Remplacer le deuxième 'password' par un mot de passe de votre choix. Attention vous allez créer un mot de passe pour le compte « root » (Administrateur) de la base de donnés MySQL. Maintenant nous allons créer la base de données « glpidb » qui sera utilisée par GLPI.
Debian:~# mysql -u root -p
enter password : *******
mysql> create database glpidb;
Nous allons également créer l'utilisateur « glpiuser » (avec son mot de passe) et lui donner les privilèges nécessaires pour qu'il puisse tout faire dans cette base :
mysql> grant all privileges on glpidb.* to glpiuser@localhost identified by
'mot_de_passe_du_glpiuser';

Si vous voulez rendre GLPI accessible dans votre entreprise aux usagers, il faudra en lieu et place de localhost mettre soit une adresse IP soit un nom connu par votre domaine ex : glpi.monentreprise.com.

Si vous souhaitez vous simplifier la vie dans l'administration de vos bases de données, vous pouvez installer phpmyadmin. Il s'agit d'un outil développé en PHP qui s'utilise à l'aide d'un navigateur. Un apt-get phpmyadmin fera encore des miracles (je ne détaille pas ici son installation car ce n'est pas l'objectif principal de cette documentation).

Téléchargement et installation de GLPI

Il faut désormais récupérer la dernière version de GLPI sur le site http://glpi.indepnet.org rubrique "télécharger".

Vous devez ensuite décompresser l'archive dans le répertoire /var/www/apache2-default qu'Apache a crée pour vous (vous pouvez supprimer cette redirection pointant automatiquement dans le répertoire apache2-default en supprimant quelques lignes dans le fichier « apache2.conf » :
Debian:~# tar -xvzf glpi-X.X.X.tar.gz -C /var/www/apache2-default
Si vous allez faire un tour dans le répertoire /var/www/apache2-default vous pourrez observer que
GLPI a créé un répertoire GLPI.
Maintenant, il est nécessaire d'accorder des permissions à certains répertoires pour GLPI puisse
travailler en toute tranquillité :
Debian:~# cd /var/www/apache2-default Debian:~# chown -R www-data glpi
En tapant cette commande Apache (www-data) devient propriétaire des fichiers, répertoires et sous-répertoires.

Configuration de GLPI

Désormais tout se déroule en ligne. Il vous suffit d'aller « visiter » votre dossier
« http://votre_serveur/glpi » par le Web.
Lors de la première connexion à cette adresse, une procédure d'installation pas-à-pas démarre.
L'interface est intuitive, il suffit d'entrer les informations demandées. Une fois que c'est terminé, le
système vous demande l'identification que vous avez indiquée et vous pouvez commencer à utiliser
GLPI.
En cas de grosse erreur (du genre : vous avez oublié votre propre accès à GLPI...), pour « relancer »
cette procédure d'installation, il suffit d'effacer le fichier suivant :
glpi/config/config_db.php
La connexion suivante dans le dossier « http://votre_serveur/glpi » relancera alors la procédure de configuration (en réalité, c'est l'absence de fichier « config_db.php » qui provoque le lancement de cette procédure).
Attention, si vous avez ce message à l'installation « Vous devez compiler votre PHP avec l'extension MySQL », cela voudra dire que vous devrez faire une modification dans le fichier « /etc/php4/apache2/php.ini ».
En dessous de la rubrique « ;Dynamic Extensions ; », décommenter la ligne ci-dessous en enlevant le « ; » en début de ligne.
extension=mysql.so
Maintenant n'oubliez pas de redémarrer votre serveur Apache2 pour qu'il prenne en compte votre modification.