GNU/Linux >> Tutoriels Linux >  >> Linux

RT:Request Tracker – Erreur :rt-mailgate – Erreur de serveur non définie – 500 Impossible de se connecter ou de vérifier le certificat [Résolu]

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.

1. Vérifier le certificat SSL utilisé par l'instance RT :

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.

2. Vérifier la confiance du certificat SSL que l'instance RT utilise ?

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.


Linux
  1. Erreur PHP-intl :Impossible de détecter le préfixe ICU ou aucun échec. Veuillez vérifier le préfixe d'installation ICU [Résolu]

  2. Appel à la fonction indéfinie simplexml_load_file() – Erreur PHP [Résolu]

  3. erreur :'Impossible de se connecter au serveur MySQL local via le socket '/var/run/mysqld/mysqld.sock' (2)' -- manquant /var/run/mysqld/mysqld.sock

  4. Erreur 500 lors du téléchargement du projet Laravel sur le serveur

  5. Impossible de se connecter à un serveur RDS TSG externe depuis la maison

Erreur de serveur FTP RHEL7 :ftp :connexion :aucune route vers la solution hôte

phpMyAdmin "500 erreur de serveur interne"

Qu'est-ce qu'une erreur de serveur interne 500 ?

500 Erreur de serveur

Pouvez-vous dire si une page existe même si elle lance un 404 ?

Puis-je me connecter à une machine Windows à partir du shell Linux ?