Page suivante Page précédente Table des matières

2. Compilation et Installation

2.1 Compilation du Gatekeeper

Pour construire le gatekeeper vous avez besoin d'au moins PWLib 1.5.0 et OpenH323 1.12.0 ou ultérieur. La version de développement du gatekeeper a généralement besoin de la version de OpenH323 la plus récente disponible. Ces librairies sont disponibles sur la Page de Téléchargement de OpenH323. Voir les instructions sur comment compiler le code de OpenH323.

Ordre de compilation:

  1. PWLib (version release + debug)
  2. OpenH323
  3. Application de test OpenH323 (pas nécessaire, juste pour s'assurer que tout marche)
  4. Le Gatekeeper

Sous Unix faire un configure et make debug ou make opt dans le répertoire du gatekeeper pour construire la version debug ou release, respectivement. Utiliser make both pour construire les deux versions. Il faut noter que vous devez utiliser GCC 3.3.x ou ultérieur. Les versions plus anciennes peuvent ne pas marcher. Une bonne habitude est de faire un make debugdepend ou make optdepend dans le répertoire du gatekeeper avant de commencer la compilation (make debug ou make opt) - ces commandes construisent les listes de dépendances appropriées, de telle sorte qu'après avoir mis à jour vos sources depuis CVS, tous les fichiers affectés seront recompilés. Sinon vous pourriez obtenir un Gatekeeper partiellement compilé avec les vieux en-têtes et partiellement avec les nouveaux en-têtes - une mauvaise chose.

Sous Windows, ouvrez et compilez simplement la solution fournie (gk.sln) pour Microsoft Visual Studio .NET 2003 ou le workspace (gk.dsw) pour Microsoft Visual Studio 6.0 SP6. Bien sur, vous devez déjà avoir compilé PWLib et OpenH323 et configuré les chemins appropriés pour les include/librairies. Si vous souhaitez le support MySQL ou PostgreSQL, installez/compilez les librairies clients appropriées et ajoutez HAS_MSQL=1 et/ou HAS_PGSQL=1 dans les macros du préprocesseur du projet gatekeeper. Vous devez aussi indiquer au compilateur ou trouver les fichiers include/librairies et indiquer à l'éditeur de liens de linker avec ces librairies clients.

Taper configure --help pour voir une liste détaillée de toutes les options de compilation. Vous pouvez les utiliser pour activer ou désactiver certaines fonctions du gatekeeper. Par exemple, si vous n'avez pas besoin de RADIUS, taper juste: configure --disable-radius.

Les versions recommandées de PWLib/OpenH323 sont celles de la version Pandora (1.7.5.2/1.14.4.2) ou plus récente. Les versions plus anciennes ne sont plus supportées et ne sont pas garanties de fonctionner avec le gatekeeper.

Pour construire le gatekeeper qui est lié statiquement avec les librairies système et OpenH323, il faut utiliser make optnoshared ou make debugnoshared.

Pour utiliser le gatekeeper sous une charge lourde, activer la fonction LARGE_FDSET (SEULEMENT POUR LA VERSION UNIX) est recommandé (configure --with-large-fdset=4096). Certains systèmes requièrent aussi l'utilisation de ulimit pour autoriser l'allocation de plus de 1024 sockets pour un seul processus. Il faut noter qu'à partir de la version 1.5.3 la librairie PWLib support aussi une fonction similaire, vous pouvez donc choisir entre les implémentations LARGE_FDSET GnuGk et PWLib. L'implémentation native GnuGk donne de meilleures performances. La valeur maximale LARGE_FDSET devrait êtra calculée en se basant sur l'utilisation maximum prévue de sockets. Un procédé empirique est:

MAX_NUMBER_OF_CONCURRENT_CALLS * 10 * 120%

Où:
10 = 2 sockets pour Q.931 + 2 sockets pour H.245 + 6 sockets pour RTP et autres
Ainsi pour 100 appels simultanés vous n'avez pas besoin de plus d'environ 1024 sockets dans le LARGE_FDSET.

2.2 L'utilitaire addpasswd

L'authentification de l'accès à la ligne d'état et le module SimplePasswordAuth ont besoin que des mots de passe cryptés soient stockés dans le fichier de configuration du gatekeeper. Et depuis la version 2.2.2, le gatekeeper supporte le cryptage de tous les mots de passe dans la configuration. L'utilitaire addpasswd est nécessaire pour générer et stocker les mots de passe cryptés. Cet utilitaire est fourni avec le gatekeeper et peut être compilé en utilisant:

$ make addpasswd

L'utilisation est la suivante:

$ addpasswd CONFIG SECTION KEYNAME PASSWORD

Exemple 1: l'utilisateur 'gkadmin' avec le mot de passe 'secret' doit être ajouté à la section de configuration [GkStatus::Auth] pour activer l'interface de la ligne d'état:

$ addpasswd gnugk.ini GkStatus::Auth gkadmin secret

Exemple 2: l'utilisateur 'joe' avec le mot de passe 'secret' doit être ajouté à la section de configuration [Password] pour activer l'authentification de terminal:

$ addpasswd gnugk.ini Password joe secret

Exemple 3: Un secret partagé crypté est ajouté à la section de configuration RadAuth:

$ addpasswd gnugk.ini RadAuth SharedSecret VerySecretPassword

IMPORTANT: La variable KeyFilled définit une initialisation par défaut pour les clés de cryptage de mot de passe. Il peut être omis dans le fichier de configuration (il est alors égal à 0), mais si il est précisé, à chaque fois qu'il change, les mots de passe cryptés doivent être regénérés (encore cryptés avec l'utilitaire addpasswd).

2.3 Installation du Gatekeeper

Il n'y a pas de procédure d'installation spéciale. Copiez juste l'exécutable dans le répertoire que vous voulez et créez le fichier de configuration. Il y a plusieurs exemples de configuration dans le répertoire etc/ de l'arborescence des sources. Se reporter à la section Fichier de Configuration pour de plus amples explications.

Par exemple, sur une plateforme Linux x86, l'exécutable optimisé gnugk est créé dans le sous-répertoire obj_linux_x86_r/. Vous pouvez le copier dans /usr/sbin/, créer une configuration dans /etc/gnugk.ini et le démarrer avec

$ /usr/sbin/gnugk -c /etc/gnugk.ini -o /var/log/gnugk.log -ttt
Se reporter à la section Options de la Ligne de Commande pour les détails.

2.4 Binaires Préconstruits

Si vous ne voulez pas compiler le gatekeeper à partir des sources, il y a plusieurs 'packages' préconstruits disponibles sur SourceForge. Toutes les versions ne sont pas disponibles - vérifier ce qui est disponible.

Packages tar (.tgz ou .tar.gz)

Télécharger le fichier tar et saisir la commande suivante en tant que root, en substituant le nom du fichier que vous avez téléchargé.

$ tar xvzf gnugk-x.x.x.tar

Packages Debian (.deb)

Debian inclut le gatekeeper en tant que package openh323gk. Vous pouvez l'installer en utilisation la commande suivante en tant que root:

$ apt-get install openh323gk


Page suivante Page précédente Table des matières