J'ai installé Request Tracker (RT) dans mon bureau et cela fonctionnait bien jusqu'à aujourd'hui. Soudainement, il a cessé d'accepter les demandes de tickets via Mail et il n'y a eu aucun e-mail rebondi ou une erreur affichée à l'utilisateur/demandeur. Voici comment j'ai débogué le problème - la première chose que j'ai faite a été de vérifier si la demande de courrier atteignait la machine RT (depuis le serveur de messagerie) et que cela fonctionnait bien. Mais alors, le ticket n'était tout simplement pas créé et heureusement, le /var/log/maillog avait le message d'erreur ci-dessous et il a été capturé lors de la création du ticket avec rt-mailgate script perl.
Jun 10 17:03:50 support sendmail[1953]: t5ABXovT001952: to="|/opt/rt3/bin/rt-mailgate --queue default --action correspond --url http://rt.techglimpse.com/", ctladdr=<[email protected]> (8/0), delay=00:00:00, xdelay=00:00:00, mailer=prog, pri=34931, dsn=4.0.0, stat=Deferred: prog mailer (/usr/sbin/smrsh) exited with EX_TEMPFAIL
Pour obtenir une erreur détaillée, j'ai utilisé –debug option pour rt-mailgate script comme indiqué ci-dessous :
/opt/rt3/bin/rt-mailgate --queue default --action correspond --url https://rt.techglimpse.com:443/ --debug < test
Remarque :"test" est un exemple de fichier contenant un exemple de texte/message.
et voici l'erreur obtenue :
500 Can't connect to rt.techglimpse.com:443 (certificate verify failed) /opt/rt3/bin/rt-mailgate: undefined server error
Avec ce message d'erreur, l'inférence est que le certificat SSL utilisé pour l'instance RT a déclenché cette erreur. Il y a deux choses à vérifier concernant le certificat SSL.
openssl verify /etc/httpd/conf/ssl.crt/rt.techglimpse.com.crt
La commande ci-dessus a renvoyé le statut "OK". Étonnamment, lorsque RT est accessible via https via un navigateur Web, cela n'a posé aucun problème (mais cela ne fonctionnait pas dans la ligne de commande). Pour me faire comprendre que les fonctions de quelques modules perl ne sont pas cassées, je viens de mettre à jour les modules perl ci-dessous via cpan :
LWP::UserAgent, Crypt::SSLeay, LWP::Protocol::https HTTP::Cookies
Mais le problème d'origine n'était toujours pas résolu. Après avoir cherché sur Google pendant une heure, je suis tombé sur un correctif pour rt-mailgate, pour corriger la vérification SSL sur POSIX – soit en définissant la variable d'environnement PERL_LWP_SSL_VERIFY_HOSTNAMES ou dites au user-agent d'ignorer la vérification des noms d'hôte et du SSL à l'aide des options comme indiqué ci-dessous. Pour ce faire, recherchez simplement la ligne ci-dessous dans /opt/rt3/bin/rt-mailgate
my $ua = new LWP::UserAgent;
Ajoutez la ligne ci-dessous qui indique à l'agent utilisateur votre chemin ROOT CA :
$ua->ssl_opts( verify_hostnames => 0 );
Attention : Prenez simplement note ici, car la procédure ci-dessus ouvrira une vulnérabilité. Cela fonctionnera, car l'utilisation du certificat est ignorée, mais le serveur pourrait être vulnérable à l'attaque MITM.
Dans mon cas, j'ai utilisé un certificat auto-signé et (je n'avais créé aucun certificat ROOT CA ou peut-être que je ne suis pas en mesure d'en suivre un) qui n'était pas fiable ! Si vous souhaitez toujours utiliser des certificats auto-signés, vous pouvez suivre Création de votre propre autorité de certification SSL (et vidage des certificats auto-signés) pour créer une autorité de certification racine et des certificats auto-signés. Copiez ROOT CA à l'emplacement /etc/pki/CA/certs . Si cet emplacement n'est pas présent, vous devez installer ca-certificates-2010.63-3.el6_1.5.noarch Paquet RPM.
Enfin, j'ai pu exécuter rt-mailgate avec succès. Si votre autorité de certification racine ne se trouve pas à l'emplacement standard, vous pouvez les spécifier dans rt-mailgate comme suggéré par le blog de brain. Trouvez la ligne ci-dessous dans /opt/rt3/bin/rt-mailgate
my $ua = new LWP::UserAgent;
Ajoutez la ligne ci-dessous qui indique à l'agent utilisateur votre chemin ROOT CA.
$ua->ssl_opts( SSL_ca_file => '/path/to/root.crt' );
Remarque : N'oubliez pas de définir le chemin correct de l'autorité de certification racine dans la ligne ci-dessus.
C'est ça! J'espère que mon expérience pourra aider quelqu'un.