j2c.org  » Informatique » Linux » Request Tracker 3.6

A quoi sert cette page ?

Il s'agit d'installer sur un PC vièrge de toute configuration Request Tracker.

La configuration Apache sera complêtement revue, il faudra installer des modules perls ...

Mais qu'est ce donc Request-Tracker... RT est un outil de gestion de requettes (traduction littérale).
Il peut être utilisé dans un contexte de demande de changement (évolution), ou rapports d'anomalies...
Chaque anomalise ou demande de changement est identifiées par un ticket avec des champs personnalisables contenant des informations permettant de préciser l'environnement

RT permet 3 modes de soumission de tickets :

RT est totalement personnalisable : il est codé en Perl Objet, basé sur le moteur template MASON, et une couche d'abstraction logiciel pour la connexion avec la base de donnée

RT offre une fonctionnalité de notification, afin de prévenir les personnes en rapport avec le Ticket d'une éventuelle évolution de ce dernier.

Plus d'info sur bestpractical.com

Prérequis

Il nous faut..

Remarque : Les locales de ma machine sont en Anglais pour des raisons historiques.

Installation via aptitude

Je part du principe que votre système de mail est opérationel ici.

A partir de Debian ETCH, il est recommandé d'utiliser aptitude en lieu et place de apt-get.

Mettre sa distribution à jour

aptitude update
aptitude dist-upgrade

On install la version 3.6 de RT

aptitude install apache2 libapache2-mod-perl2 request-tracker3.6 rt3.6-apache2 rt3.6-clients mysql-server-5.0 php5 phpmyadmin postfix

Il fraudra répondre yes 2 fois..
la première fois pour dire à Aptitude qu'on est d'accord d'installer des paquage qui peuvent présenter un risque pour le serveur
la deuxième fois pour indiquer à Aptitude qu'on est d'accord pour installer tous les paquages + dépedances.

Ne pas installer RTFM (RT FaQ Manager) via debian, mais à la main, car Debian install RT3.4 comme dépendance.

php5 et phpmyadmin.. pour une manipulation plus aisée de la base de donnée.

postfix remplacera exim4 installé de base sur Debian.

Pendant tout le cycle d'installation une interface ncurse (du texte avec des fenêtres sur fond bleu) proposera de configurer Postfix. Si vous aviez déjà postfix de configuré.. vous n'aurez pas cette fenêtre.

Le programme d'install s'arrête là.. et postfix est opérationnel

On peut modifier le fichier de config de postfix

Modifier l'interface d'écoute, et au besoin de relay SMTP à utiliser pour l'envoi de mail

#inet_interfaces = loopback-only
inet_interfaces = all
relayhost= [smtp.yourFAI.com]

Les crochets permettent de ne pas réaliser la résolution de nom

Et là on s'apperçoi que le nom de l'admin à changé ? Pas de problème la personne resonsable du serveur change : il suffit de modifier /etc/aliases

root:jcrochet

en

root:autre@adresse.com

Puis lancer la commande :

postalias /etc/aliases

Cette configuration marche, mais elle n'est pas forcément adaptée à vos besoins : il faudra l'adapter.

Apache2.2 est normalement autorisé à démarrer au lancement de la machine, si ce n'est pas le cas :
il faut autoriser le démarrage : dans le fichier /etc/default/apache2

# 0 = start on boot; 1 = don't start on boot
NO_START=0

Préparation

Pour être sûr de son coup, étudier en détail les docs livrées avec le packet !

dpkg -L request-tracker3.6 | grep doc

Il faudra peut-être ungziper des fichiers.. en particulier /usr/share/doc/request-tracker3.6/NOTES.debian

Editer le fichier /etc/request-tracker3.6/RT_SiteConfig.pm, ne pas éditer RT_Config.pm, mais s'en inspirer...

# RT_SiteConfig.pm
#
# These are the bits you absolutely *must* edit.
#
# To find out how, please read
# /usr/share/doc/request-tracker3.6/NOTES.Debian

# THE BASICS:


Set($rtname, 'testrt.test.com');
Set($Organization, 'TEST');

Set($CorrespondAddress , 'rt@test.com');
Set($CommentAddress , 'rt-comment@test.com');

Set($Timezone , 'Europe/Paris'); # obviously choose what suits you

# THE DATABASE:

Set($DatabaseType, 'mysql'); # e.g. Pg or mysql
# These are the settings we used above when creating the RT database,
# you MUST set these to what you chose in the section above.


Set($DatabaseUser , 'rtuser');
Set($DatabasePassword , 'wibble');
Set($DatabaseName , 'rtdb');

# THE WEBSERVER:

Set($WebPath , "/rt");
Set($WebBaseURL , "http://testrt.test.com");

1;

Remarque : Le "1;" est important à  la fin du fichier de configuration

Une configuration alternative :

Set($WebPath , "");

Permet d'accèder à RT directement à la racine du site web.. nous reviendrons sur cette particularité de configuration à d'autres endroits dans cette documentation.

La base de donnée

MySQL a été fraichement installé, il faut mettre un mot de passe root (qui peut être différent du mot de passe root systême)

mysqladmin password <un_mot_de_passe>

Si on veut modifier ce mot de passe, il faudra tapper la commande :

mysqladmin -p password <un_mot_de_passe>

Et rentrer le mot de passe courant

On accède à MySQL via la commande

mysql -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 21
Server version: 5.0.32-Debian_7etch1-log Debian etch distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>

On peut lancer la commande suivante pour créer l'utilisateur (déjà  configuré dan ns le fichier de config.. on pourra adapter le mot de passe pour plus de sécurité) :

GRANT ALL PRIVILEGES ON rtdb.* TO rtuser@localhost IDENTIFIED BY 'wibble';
quit;

On peut créer et initialiser la base de donnée avec des données RT.
NB : le mot de passe demandé est celui de la base rt (ie : wibble)

/usr/sbin/rt-setup-database-3.6 --action init --dba rtuser --prompt-for-dba-password
In order to create or update your RT database,this script needs to connect to your mysql
instance on localhost as rtuser.
Please specify that user's database password below. If the user has no database
password, just press return.

Password:
Now creating a database for RT.
Creating mysql database rtdb.
Now populating database schema.
Creating database schema.
readline() on closed filehandle SCHEMA_LOCAL at /usr/sbin/rt-setup-database-3.6 line 223.
Done setting up database schema.
Now inserting database ACLs
Done setting up database ACLs.
Now inserting RT core system objects
Checking for existing system user...not found. This appears to be a new installation.
Creating system user...done.
Now inserting RT data
Creating Superuser ACL...done.
Creating groups...3.4.5.6.7.8.9.done.
Creating users...10.12.done.
Creating queues...1.2.done.
Creating ACL...2.3.done.
Creating ScripActions...1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.done.
Creating ScripConditions...1.2.3.4.5.6.7.8.9.10.done.
Creating templates...1.2.3.4.5.6.7.8.9.10.11.12.done.
Creating scrips...1.2.3.4.5.6.7.8.9.10.11.12.13.14.done.
Creating predefined searches...1.2.3.done.
Done setting up database content.

Configuration d'Apache

Je suis parti sur une solution Apache 2.2 + Modperl 2.. je vais donc récupérer le fichier recommandé pour Apache /etc/request-tracker3.6/

On doit d'abord activer les modules apache2 suivant.. mod_rewrite mod_actions..

a2enmod rewrite
Module rewrite installed; run /etc/init.d/apache2 force-reload to enable.

a2enmod actions
Module actions installed; run /etc/init.d/apache2 force-reload to enable.

/etc/init.d/apache2 force-reload

Ou :

apache2ctl restart

Nous avons 3 solutions pour configurer RT

Serveur Dédié à RT, config RT dans le virtual host Default

Il faut aussi modifier le fichier de configuration du serveur pour démarrer RT en même temps que apache /etc/apache2/sites-enabled/000-Default

Alias /rt /usr/share/request-tracker3.6/html
Include "/etc/request-tracker3.6/apache2-modperl2.conf"

Serveur Dédié à RT, config RT dans la config mère de Apache

Une alternative de configuration (en cas d'utilisation dédié à RT)

echo "Alias /rt /usr/share/request-tracker3.6/html" >> /etc/apache2/conf.d/rt
echo "Include /etc/request-tracker3.6/apache2-modperl2.conf" >> /etc/apache2/conf.d/rt

Serveur Non dédié à une seule tâche, config RT dans le virtual host RT

cp /etc/apache2/sites-available/default /etc/apache2/sites-available/rt

Editer le fichier avec votre éditeur favori /etc/apache2/sites-available/rt

# NameVirtualHost *
<VirtualHost *>
  ServerAdmin root@test.com
  ServerName rt.test.com
  ServerAlias rt

  DocumentRoot /var/www

  <Directory />
    Options FollowSymLinks
    AllowOverride None
  </Directory>

  <Directory /var/www>
    Options FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    allow from all
  </Directory>

  ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/

  <Directory "/usr/lib/cgi-bin">
    AllowOverride None
    Options ExecCGI -MultiViews +SymLinksIfOwnerMatch
    Order allow,deny
    Allow from all
  </Directory>

  ErrorLog /var/log/apache2/error-rt.log

  # Possible values include: debug, info, notice, warn, error, crit,
  # alert, emerg.
  LogLevel warn

  CustomLog /var/log/apache2/access-rt.log combined
  ServerSignature Off

  Include "/etc/request-tracker3.6/apache2-modperl2.conf"
</VirtualHost>

Dans le cas où rt devra être accessible directement sous la racine, il faut modifier quelques lignes

DocumentRoot /usr/share/request-traquer3.6/html

Modifier aussi les droits relatifs à /var/www pour qu'ils portent sur le nouveau DocumentRoot

<Directory /usr/share/request-traquer3.6/html>

Il faudra aussi modifier /etc/request-tracker3.6/apache2-modperl2.conf, en commentant certaines lignes

Mettre en commentaire :

#RewriteRule ^/rt$ /rt/

Et modifier la ligne suivante :

#RewriteRule ^/rt/(.*)$ /usr/share/request-tracker3.6/html/$1
RewriteRule ^/(.*)$ /usr/share/request-tracker3.6/html/$1

Il ne reste plus que le serveur de mail à configurer...

Configuration de Postfix

Installez postfix..

Modifier /etc/aliases

rt: "|/usr/bin/rt-mailgate --queue General --action correspond --url http://rt.test.com/rt"
comment: "|/usr/bin/rt-mailgate --queue General --action comment --url http://rt.test.com/rt"

Le pipe "|" est important au début de la commande

Rafraichir la config de postfix concernant les alias :

postalias /etc/aliases

Le reste de la configuration

Se fait en ligne sur http://rt.test.com/rt

Login : root,
mot de passe : password qu'il est conseillé de remplacer tout de suite

http://rt.bestpractical.com/view/ItsFinallyInstalledNowWhat(en anglais)

Je rajouterais à la liste des amélioration de la doc.. un quick start dans quelques temps

Remerciements

Merci à Johan, et François, certains de mes lecteurs de m'avoir fait des commentaires constructifs afin de faire évoluer cette documentation.

En savoir plus sur RT

Voici des documents qui m'ont servis lors de la mise en place de RT

ATTENTION : RT n'est pas installé sur ce serveur, inutile d'essayer de vous y connecter
Toute tentative de piratage donnera lieu à des poursuites..

 

Il y a 1 commentaire.

pencil Afficher le commentaire - pencil Ajouter un commentaire

.: Dernière mise à jour le 13/03/2009.

Conception et design Jérôme CROCHET © 2000 - 2010 · j2c.org · Tous droits réservés.

Votre IP : 38.107.191.96 () · Page générée en 0,0963 s.

Toute diffusion, même partielle de ce document, doit être soumise à une autorisation écrite préalable de son auteur.

Attention : Toutes les tentatives d'attaque envers ce serveur sont enregistrées, une plainte pourra être déposée.

miam