[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Exim4 et paniclog



Bonjour Ludovic,

Je pense que tu as identifié le problème.

Je suppose que c'est le who comme tu l'indiques, qui est peut être
responsable.

Mon script fonctionne si je me connecte la première fois.
Si mon terminal reste ouvert, et, que j'ouvre un second terminal, il ne
fonctionne plus.

Si j'ai 2 terminal ouvert, avec le même utilisateur SSH, se peut t'il
que la valeur de who ne corresponde plus, et, fasse boguer mon script ?
Je vais immédiatement vérifier.

Première connexion
who
debian   pts/0        2020-04-10 19:48 (IP)

Deuxième connexion
mail: impossible d'expédier le message : Processus terminé avec un état
de sortie non nul
who
debian   pts/0        2020-04-10 19:48 (IP)
debian   pts/1        2020-04-10 19:49 (IP)



Le 08/04/2020 à 02:31, Ludovic a écrit :
> Bonjour G2PC,
>
>     plusieurs axes de recherche:
>
> 1) Il faut débuger ton script shell
>
> echo "Connexion au terminal du serveur le `date` `who`" | mail -s
> "Accès au Shell du Serveur `hostname` par `who` depuis `who | cut
> -d"(" -f2 | cut -d")" -f1`"mail@moderateur.com
>
> Visiblement ce script ne fonctionne pas toujours, plutôt qu'envoyer un
> mail tu peux rediriger vers un fichier, puis regarder son contenu. Tu
> peux aussi vérifier les variables d'environnement définies à ce moment
> (env >> <ton fichier destination>). Ton script shell alterne beaucoup
> de double quotes et de simple quote, c'est facile de se tromper... Tu
> peux avantageusement remplacer un `date` par $(date), ce sera moins
> source d'erreur.
>
> 2) La commande who te renvoit la **liste** de toutes les personnes
> connectées, à ta première connexion, elle pourrait renvoyer une seule
> ligne, et à la seconde renvoyer deux lignes. Avec who renvoyant
> plusieurs lignes, ton script n'est pas robuste...
>
> 3) Tu peux vérifier que ta configuration mail fonctionne correctement
> en faisant des tests d'envoi avec la commande mail et en surveillant
> les logs exim
>
> 4) Ton but semble être d'envoyer un mail pour toute connexion SSH,
> dans ce cas une bonne solution est d'utiliser /etc/ssh/sshrc, cf [1]
> et man sshd. C'est ce que j'utilise pour monitorer les connexions SSH
> externes.
>
> [1]
> http://blog.uggy.org/?post/2009/06/05/Execution-de-commande-lors-d-une-connexion-SSH
>
> Ludovic
>
> Le 03/04/2020 à 17:18, G2PC a écrit :
>>
>>
>>       Exim4 et paniclog
>>
>> # L'erreur suivante serait présente à chaque fois que exim4 démarre
>> et que le fichier paniclog ne serait pas vide sur un système Debian /
>> Ubuntu.
>> exim paniclog /var/log/exim4/paniclog has non-zero size error
>> # L'origine de ce message d'erreur est généré lorsque je me connecte
>> deux fois au serveur SSH, depuis deux consoles différentes.
>> #*Le premier mail suite à une connexion réussie m'est bien envoyé*,
>> avec ce script :Alerte mail lors du login root ou d'un utilisateur 
>> <https://wiki.visionduweb.fr/index.php?title=Le_fichier_.bashrc#Alerte_mail_lors_du_login_root_ou_d.27un_utilisateur>.
>>
>>
>> # ALERTE MAIL SUITE A UNE CONNEXION SSH :
>> *sudo nano /home/utilisateur/.bashrc echo "Connexion au terminal du
>> serveur le `date` `who`" | mail -s "Accès au Shell du Serveur
>> `hostname` par `who` depuis `who | cut -d"(" -f2 | cut -d")" -f1`"
>> mail@moderateur.com*
>>
>>
>> #*Lors d'une seconde connexion*  avec*un nouveau terminal*  et*le
>> même utilisateur*, j'obtiens un mail en*erreur renvoyée au compte
>> administrateur*  :
>> Mail failure - no recipient addresses
>> A message that you sent contained no recipient addresses, and
>> therefore no delivery could be attempted.
>> # En consultant le fichier paniclog on observe l'ajout des lignes
>> suivantes :
>> nano /var/log/exim4/paniclog
>> 1jJnQp-0006r4-KL 1jJnQp-0006r4-KL no recipients found in headers
>> 1jJnRH-0006rh-6j 1jJnRH-0006rh-6j no recipients found in headers
>> # La solution proposée est de supprimer ce fichier pour qu'il soit
>> recréé :
>> sudo rm /var/log/exim4/paniclog
>> # Ou encore de vider le fichier :
>> sudo bash
>> echo "" > /var/log/exim4/paniclog
>> # Redémarrer Exim4 :
>> /etc/init.d/exim4 restart
>>
>>
>> >>
>> *# Pour réellement résoudre le problème de ce message exim paniclog
>> /var/log/exim4/paniclog has non-zero size error il faudrait
>> comprendre pourquoi suite à une double connexion SSH, le second mail
>> n'est pas envoyé.*
>>
>> #*Lors d'une seconde connexion*  avec*un nouveau terminal*  et*le
>> même utilisateur*, j'obtiens un mail en*erreur renvoyée au compte
>> administrateur*.
>>
>> C'est cela qui génère le paniclog.
>> Une idée ?
>


Reply to: