OTRS ou Open-source Ticket Request System est un logiciel de billetterie open source utilisé pour le service client, le service d'assistance et la gestion des services informatiques. Le logiciel est écrit en Perl et javascript. Il s'agit d'une solution de billetterie pour les entreprises et les organisations qui doivent gérer des tickets, des plaintes, des demandes d'assistance ou d'autres types de rapports. OTRS prend en charge plusieurs systèmes de base de données, notamment MySQL, PostgreSQL, Oracle et SQL Server. Il s'agit d'un logiciel multiplateforme pouvant être installé sur Windows et Linux.
Dans ce tutoriel, je vais vous montrer comment installer et configurer OTRS sur Ubuntu 16.04. J'utiliserai PostgreSQL comme base de données pour OTRS et le serveur Web Apache comme serveur Web.
Prérequis
- Ubuntu 16.04.
- Min 2 Go de mémoire.
- Privilèges racine.
Étape 1 - Installer Apache et PostgreSQL
Dans cette première étape, nous allons installer le serveur Web Apache et PostgreSQL. Nous utiliserons les dernières versions du référentiel Ubuntu.
Connectez-vous à votre serveur Ubuntu avec SSH :
ssh [email protected]
Mettre à jour le référentiel Ubuntu.
sudo apt-get update
Installez Apache2 et un PostgreSQL avec l'apt :
sudo apt-get install -y apache2 libapache2-mod-perl2 postgresql
Assurez-vous ensuite qu'Apache et PostgreSQL sont en cours d'exécution en vérifiant le port du serveur.
netstat -plntu
Vous verrez que le port 80 est utilisé par apache et le port 5432 utilisé par la base de données postgresql.
Étape 2 - Installer les modules Perl
OTRS est basé sur Perl, nous devons donc installer certains modules Perl requis par OTRS.
Installez les modules perl pour OTRS avec cette commande apt :
sudo apt-get install -y libapache2-mod-perl2 libdbd-pg-perl libnet-dns-perl libnet-ldap-perl libio-socket-ssl-perl libpdf-api2-perl libsoap-lite-perl libgd-text-perl libgd-graph-perl libapache-dbi-perl libarchive-zip-perl libcrypt-eksblowfish-perl libcrypt-ssleay-perl libencode-hanextra-perl libjson-xs-perl libmail-imapclient-perl libtemplate-perl libtemplate-perl libtext-csv-xs-perl libxml-libxml-perl libxml-libxslt-perl libpdf-api2-simple-perl libyaml-libyaml-perl
Lorsque l'installation est terminée, nous devons activer le module Perl pour apache, puis redémarrer le service apache.
a2enmod perl
systemctl restart apache2
Ensuite, vérifiez que le module apache est chargé avec la commande ci-dessous :
apachectl -M | sort
Et vous verrez perl_module sous la section "Modules chargés".
Étape 3 - Créer un nouvel utilisateur pour OTRS
OTRS est une application Web qui s'exécute sous le serveur Web apache. Pour une meilleure sécurité, nous devons l'exécuter sous un utilisateur normal, pas l'utilisateur root.
Créez un nouvel utilisateur nommé 'otrs' avec la commande useradd ci-dessous :
useradd -r -d /opt/otrs -c 'OTRS User' otrs
-r :faites de l'utilisateur un compte système.
-d /opt/otrs :définit le répertoire personnel du nouvel utilisateur sur '/opt/otrs'.
-c :commentaire.
Ensuite, ajoutez l'utilisateur otrs au groupe "www-data", car apache s'exécute sous l'utilisateur et le groupe "www-data".
usermod -a -G www-data otrs
Vérifiez que l'utilisateur otrs est disponible dans le fichier '/etc/passwd'.
grep -rin otrs /etc/passwd
Un nouvel utilisateur pour OTRS est créé.
Étape 4 - Créer et configurer la base de données
Dans cette section, nous allons créer une nouvelle base de données PostgreSQL pour le système OTRS et apporter quelques petites modifications à la configuration de la base de données PostgreSQL.
Connectez-vous à postgres user et accéder au shell PostgreSQL.
su - postgres
psql
Créez un nouveau rôle nommé 'otrs ' avec le mot de passe 'myotrspw ' et l'option nosuperuser.
create user otrs password 'myotrspw' nosuperuser;
Créez ensuite une nouvelle base de données nommée 'otrs ' sous 'otrs ' privilèges utilisateur :
create database otrs owner otrs;
\q
Ensuite, modifiez le fichier de configuration PostgreSQL pour l'authentification de rôle otrs.
vim /etc/postgresql/9.5/main/pg_hba.conf
Collez la cConfiguration ci-dessous après la ligne 84 :
local otrs otrs password
host otrs otrs 127.0.0.1/32 password
Enregistrez le fichier et quittez vim.
Revenez aux privilèges root avec "exit" et redémarrez PostgreSQL :
exit
systemctl restart postgresql
PostgreSQL est prêt pour l'installation d'OTRS.
Étape 5 - Télécharger et configurer OTRS
Dans ce didacticiel, nous utiliserons la dernière version d'OTRS disponible sur le site Web d'OTRS.
Allez dans le répertoire '/opt' et téléchargez OTRS 5.0 avec la commande wget :
cd /opt/
wget http://ftp.otrs.org/pub/otrs/otrs-5.0.16.tar.gz
Extrayez le fichier otrs, renommez le répertoire et changez le propriétaire de tous les fichiers et répertoires otrs pour l'utilisateur "otrs".
tar -xzvf otrs-5.0.16.tar.gz
mv otrs-5.0.16 otrs
chown -R otrs:otrs otrs
Ensuite, nous devons vérifier le système et nous assurer qu'il est prêt pour l'installation d'OTRS.
Vérifiez les packages système pour l'installation d'OTRS avec la commande de script otrs ci-dessous :
/opt/otrs/bin/otrs.CheckModules.pl
Assurez-vous que tous les résultats sont corrects, cela signifie que notre serveur est prêt pour OTRS.
OTRS est téléchargé et notre serveur est prêt pour l'installation d'OTRS.
Ensuite, allez dans le répertoire otrs et copiez le fichier de configuration.
cd /opt/otrs/
cp Kernel/Config.pm.dist Kernel/Config.pm
Editez le fichier 'Config.pm' avec vim :
vim Kernel/Config.pm
Modifiez le mot de passe de la base de données ligne 42 :
$Self->{DatabasePw} = 'myotrspw';
Commentez la ligne 45 du support de la base de données MySQL :
# $Self->{DatabaseDSN} = "DBI:mysql:database=$Self->{Database};host=$Self->{DatabaseHost};";
Décommentez la ligne 49 de prise en charge de la base de données PostgreSQL :
$Self->{DatabaseDSN} = "DBI:Pg:dbname=$Self->{Database};";
Enregistrez le fichier et quittez vim.
Modifiez ensuite le fichier de démarrage apache pour activer la prise en charge de PostgreSQL.
vim scripts/apache2-perl-startup.pl
Décommentez les lignes 60 et 61 :
# enable this if you use postgresql
use DBD::Pg ();
use Kernel::System::DB::postgresql;
Enregistrez le fichier et quittez l'éditeur.
Enfin, vérifiez s'il manque des dépendances et des modules.
perl -cw /opt/otrs/bin/cgi-bin/index.pl
perl -cw /opt/otrs/bin/cgi-bin/customer.pl
perl -cw /opt/otrs/bin/otrs.Console.pl
Vous devriez voir que le résultat est 'OK ' comme indiqué dans la capture d'écran ci-dessous :
Étape 6 - Importer l'exemple de base de données
Dans ce tutoriel, nous utiliserons l'exemple de base de données, il est disponible dans le répertoire du script. Il nous suffit donc d'importer tous les exemples de bases de données et les schémas dans la base de données existante créée à l'étape 4.
Connectez-vous à l'utilisateur postgres et accédez au répertoire otrs.
su - postgres
cd /opt/otrs/
Insérez la base de données et le schéma de table avec la commande psql en tant qu'utilisateur otrs.
psql -U otrs -W -f scripts/database/otrs-schema.postgresql.sql otrs
psql -U otrs -W -f scripts/database/otrs-initial_insert.postgresql.sql otrs
psql -U otrs -W -f scripts/database/otrs-schema-post.postgresql.sql otrs
Tapez le mot de passe de la base de données 'myotrspw ' à la demande.
Étape 7 - Démarrer OTRS
La base de données et OTRS sont configurés, nous pouvons maintenant démarrer OTRS.
Définissez l'autorisation du fichier et du répertoire otrs sur l'utilisateur et le groupe www-data.
/opt/otrs/bin/otrs.SetPermissions.pl --otrs-user=www-data --web-group=www-data
Activez ensuite la configuration otrs apache en créant un nouveau lien symbolique du fichier vers le répertoire de l'hôte virtuel apache.
ln -s /opt/otrs/scripts/apache2-httpd.include.conf /etc/apache2/sites-available/otrs.conf
Activez l'hôte virtuel otrs et redémarrez apache.
a2ensite otrs
systemctl restart apache2
Assurez-vous qu'apache n'a pas d'erreur.
Étape 8 - Configurer OTRS Cronjob
OTRS est installé et fonctionne maintenant sous le serveur Web apache, mais nous devons encore configurer le Cronjob OTRS.
Connectez-vous à l'utilisateur 'otrs', puis accédez au répertoire 'var/cron' en tant qu'utilisateur otrs.
su - otrs
cd var/cron/
pwd
Copiez tous les scripts cronjob .dist avec la commande ci-dessous :
for foo in *.dist; do cp $foo `basename $foo .dist`; done
Revenez au privilège root avec exit, puis démarrez le script cron en tant qu'utilisateur otrs.
exit
/opt/otrs/bin/Cron.sh start otrs
Ensuite, créez manuellement un nouveau cronjob pour PostMaster qui récupère les e-mails. Je vais le configurer pour qu'il récupère les e-mails toutes les 2 minutes.
su - otrs
crontab -e
Collez la configuration ci-dessous :
*/2 * * * * $HOME/bin/otrs.PostMasterMailbox.pl >> /dev/null
Enregistrez et quittez.
Maintenant, arrêtez le démon otrs et redémarrez-le.
bin/otrs.Daemon.pl stop
bin/otrs.Daemon.pl start
L'installation et la configuration d'OTRS sont terminées.
Étape 9 - Tester OTRS
Ouvrez votre navigateur Web et saisissez l'adresse IP de votre serveur :
http://192.168.33.14/otrs/
Connectez-vous avec l'utilisateur par défaut '[email protected] ' et le mot de passe 'root '.
Vous verrez un avertissement concernant l'utilisation du compte root par défaut. Cliquez sur ce message d'avertissement pour créer un nouvel utilisateur racine administrateur.
Sous la page d'administration après la connexion avec un autre utilisateur racine administrateur, et il n'y a plus de message d'erreur.
Si vous souhaitez vous connecter en tant que client, vous pouvez utiliser 'customer.pl'.
http://192.168.33.14/otrs/customer.pl
Vous verrez la page de connexion client. Saisissez un nom d'utilisateur et un mot de passe client.
Ci-dessous la page client pour créer un nouveau ticket.
Étape 10 - Dépannage
Si vous avez toujours une erreur telle que "Le démon OTRS ne fonctionne pas", vous pouvez activer le débogage dans le démon OTRS comme ceci.
su - otrs
cd /opt/otrs/
Arrêtez le démon OTRS :
bin/otrs.Daemon.pl stop
Et démarrez le démon OTRS avec l'option --debug.
bin/otrs.Daemon.pl start --debug