lignes de commandes.4

vos mails en console

logo imprimer

 

 

 

  • POSTFIX, mutt, fetchmail, procmail et msntp
     
  • je vais vous conter comment j’ai configuré ma messagerie en lignes de commandes, car c’est rien de le dire comme c’est chiant à configurer.
  • j’ai commencé avec l’aide de ce tuto.
    https://debian-facile.org/doc:reseau:mutt
  • et l’aide précieuse de Enikar sur le chan IRC de Debian-Facile.Ce qui m’a évité d’y passer des lustres à me casser la tête’

 

  • Postfix est un serveur de messagerie configurable, Il se charge de la livraison -et de l’envoie de courriers électroniques
    il permet d’éviter bon nombre de spams
    La configuration que j’ai ici ne sert que pour les messages système ..
  • Fetchmail:c’est lui qui récupère les mails sur le serveurs distants.
  • Procmail : fait le tri et renvoie vers les bal (les boites aux lettres).
  • mutt ne sert qu’à gérer les mails locaux, et il se sert d’un programme externe (msmtp ici) pour lire et envoyer les autres mails.
  • msmtp gère vos comptes mails différents, configure vos adresses, vos noms de courrier et vos passwords

 

 

  • Je n’ai pas installé postfix, étant donné que exim est installé par défaut sur ma debian stretch.
  • Si vous installez postfix, faites un :
     
     

     

  • la configuration se fait sous cette forme, une dizaine de questions seront posées.
  • ci dessous la première et la dernière .
     

     

     

Nous pouvons passer à la création et à la configuration des fichiers muttrc, fetchmailrc, procmailrc et msmtprc...
 

  • Le mot de pass n’est pas obligatoire dans les lignes de configuration du fichier, dans ce cas, il vous seront demandés à la récupération du courrier avec fetchmail.

     

    # Configuration created Sun Aug  6 10:48:50 2017 by fetchmailconf 1.57

    set postmaster "root"
    set nobouncemail
    set no spambounce
    set softbounce
    set properties ""

    #pour orange

    poll pop.orange.fr with proto POP3  service 110 and options no dns user m.g13 password xxxxxxxx options keep stripcr mda 'procmail -f %T';

    #pour gandi 1

    poll mail.gandi.net with proto imap  service 143 and options no dns user momo@chezlagrenouille.fr password xxxxxxxx  options keep stripcr mda 'procmail -f %T';

 

  • Explication de l’option dans .fetchmailrc
     
    1) le keep permet de conserver les mails sur le serveur (par défaut fechtmail les efface) équivaut à automatiser l’option -k de fetchmail qui demande à fetchmail de laisser le courrier sur le serveur après l’avoir téléchargé, en cas de problème, votre courrier ne sera pas perdu
    2) le stripcr ça permet de supprimer les retours chariots en fin de ligne… donc on se retrouve qu’avec des nouvelles lignes comme dans un texte au format unix.
    3) le -d %T permet de demander à procmail de passer en « mode delivery » le %T est remplacé par le nom de user.

 
 

 
mon fichier .procmailrc (faut probablement virer ce qui ne sert pas, et configurer votre propre fichier avec les "from To et subject" qui vont bien)

 

#VERBOSE=yes
VERBOSE=no
SHELL=/bin/sh
MAILDIR=$HOME/Mail
DEFAULT=$MAILDIR/inbox
LOGFILE=$MAILDIR/procmail.log
LOGABSTRACT=no
LOCKFILE=$MAILDIR/.lockmail
   
############################
###  Spam à la poubelle. ###
############################
:0
* ^Subject:.*(credit|pub|cadeau|cash|money|debt|sex|sale|loan|spam)
$MAILDIR/Spam
   
##############################
### Plus de messages HTML. ###
##############################
   # :0
   # * ^Content-Type:.*html
   # $MAILDIR/Junk
   
##################################################
### Met les messages dans leurs bonnes boîtes. ###
#################################################

##############compte gandi############
# *chezlagrenouille
:0
* ^To:.*momo@chezlagrenouille.fr
$MAILDIR/chezlagrenouille

###########compte orange##############
# *mg13
:0
* ^To:.*m.g13@orange.fr
$MAILDIR/mg13
       
#########funambule##$$$$$$$$$$$$$$$
# *funambule
:0
* ^To:.*proutprout@funambule.org
$MAILDIR/funambule
############################
#########Escal-Spip#########
############################
# *spip_escal
:0
* ^Subject:.*(Escal|escal|Re: [Escal]| spip|Spip|Re: [Spip])
$MAILDIR/spip_escal
############################
### Toulibre ###
#############################
:0
* ^Subject:.*(Toulibre|Re: [Toulibre])
$MAILDIR/Toulibre
#####################################
### Messages des services système ###i
#####################################
:0
* ^From:.*(Cron|Anacron)
$MAILDIR/Cron

###################
### Boite perso ###
###################
:0
* ^From:.*(Gutts)
$MAILDIR/Gutts
   
####################
### Informatique ###
####################
*informatique
:0
* ^Subject:.*(debian|Debian-facile|Debian|html|openclassrooms|DebConf|pic|Root-Me <no-reply@root-me.org>)
$MAILDIR/informatique

###################
####politique######
###################
# *social
:0
* ^Subject:.*([LA CHAPELLE]|[LaFabrique]|diffusion-externe]| Communiqué CGA|Ballast|cira|Cira )
$MAILDIR/social

#############################################
# Dernière règle : tout ce qui n'est        #
# pas trier va dans la boîte par défaut.    #
#############################################
:0
* .*
$DEFAULT

 

 
 

 

 # Plus d'information dans "man muttrc"

#
# 1. Configuration générale
#
set crypt_use_gpgme=no

set my_address_one="m.g13@orange.fr"
set my_address_two="momo@chezlagrenouille.fr"
set from=$my_address_one

#rajouter pour envoi smtp

# Le nom complet d'expéditeur (par défaut, le champ nom complet de
# /etc/passwd)
set realname="momo"
 
# Pour l'envoi de mail
set sendmail="/usr/bin/msmtp"

# Mutt doit générer un en-tête from. Contraitement à ce que raconte
# le manuel, c'est désactivé par défaut !
set use_from='yes'
macro compose <esc>1 "<esc>f^U$realname <$my_address_one>"
macro compose <esc>2 "<esc>f^U$realname <$my_address_two>"

# Note bien que le nom des variables utilisateurs doit toujours
# commencer par my_
send2-hook "~e $my_address_one" "set from='$my_address_one'"
send2-hook "~e $my_address_two" "set from='$my_address_two'"
 
alternates ^m.g13@orange.fr$ ^momo@chezlagrenouille.fr$

set hostname=localhost

# Pour compléter les adresses incomplètes avec ce domaine?
set use_domain

# Le fichier contenant la signature
set signature=~/.signature

# Le fichier contenant les alias
#set alias_file=~/.aliases
#source ~/.aliases

# 2. Configuration des mailboxes

# Le répertoire qui contient les mailboxes
set folder=~/Mail

# On utilise le format "maildir" pour les mailbox
#set mbox_type=Maildir
 
mailboxes `find ~/Mail -type d -name 'cur' -printf '%h ' -prune -o -type d -name 'new' -prune -o -type d -name 'tmp' -prune -o -type f -printf '%p '`

# Mailbox contenant les mails envoyés (chemin relatif)
set record=~/Mail/sent

# Mailbox contenant les mails ajournés (chemin relatif)
set postponed=~/Mail/postponed

# 3. Options

# Editeur de texte pour la rédaction des messages
set editor="nano"

# Jolis titres dans son terminal
set xterm_set_titles=yes
set xterm_title="Mutt with %?m?%m messages&no messages?%?n? [%n NEW]?"

# Ne pas afficher les headers...
ignore *
# sauf un certain nombre que l'on énumère ici
unignore From To Cc Subject Date Reply-To
unignore X-Mailer User-Agent
unignore X-Approved-By List-Id X-List
unignore Disposition-Notification-To Return-Receipt-To

# Ordre d'affichage des headers
hdr_order Date From To Cc Subject

# Utilise l'adresse figurant dans le champ Reply-To: quand on répond
set reply_to
   
# Locale à utiliser

set assumed_charset=utf-8,fr_FR@euro

# Format de la date à afficher avant les citations quand on répond
set date_format="%A %d %B %Y à %I:%M:%S%p"

# Les texte à afficher avant les citations quand on répond
set attribution="Le %d, %n a écrit :"

# Répond sans demander confirmation du destinataire et du sujet
# avant de passer à l'édition du message
set fast_reply

# Inclu le message original dans la réponse sans demander confirmation
set include=yes

# Ne pas aller au message suivant quand on a atteint la fin du
# message précédent et que l'on invoque la fonction "next page"
set pager_stop

# Afficher 6 lignes de la liste des messages en haut de l'écran
# quand on lit un mail
set pager_index_lines=6

# Méthode de tri par défaut = par thread
folder-hook . set sort=threads
# Les thread sont triés par date
folder-hook . set sort_aux=date
# La mailbox "sent" est triée par date
folder-hook "sent" set sort=date

 # Tenir compte du header "Mail-Followup-To"
set honor_followup_to

# Beep en cas d'erreur
set beep

# Beep quand un nouveau message est arrivé
set beep_new

# Ne pas demander confirmation avant d'effaçer un message en quittant
# une mailbox (sinon, mettre "ask-yes")
set delete=yes

# Editer les headers quand on compose le message
set edit_hdrs

# Ne se fie pas au champ "Subject" pour construire les threads
# mais uniquement aux champs "In-Reply-To" et "References"
set strict_threads

# Ne marque pas un nouveau message comme "vieux" quand on quitte la mailbox
# dans laquelle il se trouve
unset mark_old

# Pas de marker pour les lignes wrappées
unset markers

# Faire-suivre un message en l'attachant au format MIME
set mime_forward

# Format de sujet pour les messages que l'on fait suivre
set forward_format="[%a: %s]"

# Format de l'index des messages
set index_format="%4C %Z %{%b %d} %-15.15F (%4l) %s"

#rajout momo pour le trie en lecture
set sort=date-received

#
# 5. Binding des touches
#

# Generic
bind generic    \eOH        first-entry
bind generic    \eOF        last-entry
bind generic    <up>        previous-entry
bind generic    <down>      next-entry
bind generic    <pageup>    previous-page
bind generic    <pagedown>  next-page

#rajouté

#j et k pour naviguer à l'intérieur d'un message.
#k lire la ligne qui vient
bind pager k previous-line  
#j ligne précédente
bind pager j next-line



# Index
bind index      s           save-message
bind index      \t          next-unread
bind index      b           bounce-message

# Pager
bind pager      e           exit
bind pager      s           save-message
bind pager      \t          next-unread
bind pager      b           bounce-message
bind pager      \eOH        top
bind pager      \eOF        bottom
bind pager      n           search-next
bind pager      <up>        previous-line
bind pager      <down>      next-line

# Macros
macro index     G           c?\t
macro pager     G           c?\t
macro generic   <f2>        "!mailq"
macro pager     <f2>        "!mailq"
macro generic   <f3>        "!postqueue -f"
macro pager     <f3>        "!postqueue -f"
macro generic   <f4>        "!fetchmail"
macro pager     <f4>        "!fetchmail"
# Pour les utilisateurs de "isync", en remplacement des deux lignes
# précédentes
#macro generic   <f4>        "!isync -a"
#macro pager     <f4>        "!isync -a"


#
# 6. Les couleurs
#

# Couleur de la barre de sélection
color indicator   brightyellow    red
# Couleur des messages d'erreur
color error       brightred       default
# Couleur des indicateurs en haut et en bas de la fenêtre
color status      brightwhite     blue
# Couleur de l'arbre des threads
color tree        brightmagenta   default

# Couleur des headers
color header      white           default "^date:"
color header      brightgreen     default "^from:"
color header      brightwhite     default "^to:"
color header      brightblue      default "^cc:"
color header      brightyellow    default "^subject:"
color header      cyan            default "^resent-"
color header      cyan            default "^x-"
color header      cyan            default "^User-Agent"

# Couleur du texte cité
color quoted      green           default
# Couleur de la signature
color signature   brightred       default
# Couleur des URLs
color body        magenta         default "(ftp|http|gopher|wais|file)://[^ ()<>,]+"
# Couleur des adresses e-mail
color body        magenta         default "[-a-z_0-9.]+@[-a-z_0-9.]+"
# Couleur des smileys
color body        brightyellow    default "[:]+[-^o]?[])>}D]+"
color body        brightgreen     default "([:;]+[-^o]?[Pp]+)|([;][-^o]?[])>}D]+)"
color body        brightred       default "[:;]+[-^o]?[[(<{|/\\]+"

# Correcteur d'orthographe
set ispell="aspell -e -c"

 
 

 

defaults
logfile ~/Mail/msmtp.log
tls_trust_file /etc/ssl/certs/ca-certificates.crt


# un premier compte, le nom qui suit le mot account est libre
# c'est juste la désignation du compte pour msmtp. On ne mettra,
# toutefois, pas d'espaces dans ce nom !

account mo
# host définit le relais smtp à utiliser.
host smtp.orange.fr
# from est l'adresse email
from m.g13@orange.fr
# ici on ne demande pas d'authentification
auth off
# Donc pas besoin de user, ni de password !

# ici on désigne ce premier compte comme étant celui par défaut.
# C'est celui-ci que msmtp utilisera quand aucun compte été
# demandé en particulier. (cf la suite).

account default :mo

# on définit un second compte :

account lagregre
host mail.gandi.net
from momo@chezlagrenouille.fr
tls on
port 587
auth on
user momo@chezlagrenouille.fr
password xxxxxxxxx

 
 

  • Voila pour mes fichiers de conf
  • Pour plus d’infos, allez voir le tutoriel de DF écrit par Enikar
    https://debian-facile.org/utilisateurs:enicar:tutos:mutt-msmtp-multi-comptes
     
  • Il faut récuperer votre courrier avec fetchmail
  • tapez fetchmail -a la première fois si vous voulez récupérer tout votre courrier
  • mode verbeux avec -av
  •  
  • plus votre fichier dans /usr/share/doc
    file :///usr/share/doc/mutt/html/index.html
  • Ouvrez mutt en console : tapez
  • mutt
  • pour lire vos message, on peut utiliser
  • mutt -y
  • La navigation dan mutt demande quelques temps de pratique (voir plus)
     
  • Pour avoir un menu contenant les Bals (ou les boites aux lettres) sur le coté gauche de mutt, mettre dans votre .muttrc :

.

 

  • Pour naviguer dans cette barre :
     .
    ctrl p et ctrl n pour monter et descendre dans les Bals (boites)
    ctrl o pour l’ouvrir
     
  • Il existe d’autres façons de lancer fetchmail comme il existe d’autres façons de trier ses emails dans mutt.
  • La plus simple pour recuperer les messages
  • tapez  ! puis à l’invite du shell, tapez /usr/bin/fetchmail
  • mutt disparaît au profit de la console, tapez enter comme vous demande le message, et vous êtes de nouveau dans mutt.
  • Pour ceux qui veulent trier leus email : exemple tous ceux où se trouve le mot "CHAPELLE".
  • Voir avec Mairix, (apt-get install mairix), il faut le paramétrer, je n’ai pas encore testé.
     


 

  • Il est possible de rajouter d’autres comptes emails, relisez vos 4 fichiers de conf et faites le nécessaires, il y a peu de choses à changer...
     
  • Quelques options pour mutt
    .

^L pour effacer l’eran et réafficher
^E edit-type éditer le content-type de l’attachement
^F forget-passphrase effacer les phrases de passe de la mémoire
next-unread aller au message non lu suivant
display-message afficher un message
^N next-thread aller à la discussion suivante
^P previous-thread aller à la discussion précédente
^R read-thread marquer la discussion courante comme lue
^T untag-pattern démarquer les messages correspondant à un motif
^U undelete-thread récupérer tous les messages de la discussion
previous-new-then-unread aller au message nouveau ou non lu précédent
d delete-subthread effacer tous les messages dans la sous-discussion
Esc>n next-subthread aller à la sous-discussion suivante
p previous-subthread aller à la sous-discussion précédente
r read-subthread marquer la sous-discussion courante comme lue
display-message afficher un message
J next-entry aller à l’entrée suivante
K previous-entry aller à l’entrée précédente
P parent-message aller au message père dans la discussion
b bounce-message renvoyer un message à un autre utilisateur d delete-message effacer l’entrée courantee
e edit éditer le message brut
f forward-message faire suivre un message avec des commentaires
j next-undeleted aller au message non effacé suivant
k previous-undeleted aller au message non effacé précédent
l limit afficher seulement les messages correspondant à un motif
m mail composer un nouveau message
o sort-mailbox trier les messages
p print-message imprimer l’entrée courante
q quit sauver les modifications de la boîte aux lettres et quitter
r reply répondre à un messagec
 

  • Quand vous êtes dans la liste des messages d’une mailbox (et non quand vous êtes entrain d’afficher un message), vous avez en plus accès aux touches suivantes :
     
    o pour trier les messages de la mailbox : il propose alors le choix entre un tri par date, par expéditeur, par destinataire, par sujet, par discussion (tri normal), etc...
    w pour mettre un flag sur un message : il propose alors une liste des flags (cela permet notamment de remettre un message comme non-lu en remettant le flag N),
    l pour n’afficher que certains messages de la mailbox : tapez alors :
     f toto pour afficher les messages contenant toto dans le champ From,
     C titi pour afficher les messages contenant titi dans le champ To et/ou dans le champ Cc (taper t titi pour se limiter au champ To et c titi pour se limiter au champ Cc),
     s urgent pour afficher les messages contenant urgent dans le sujet,
     b bruit pour afficher les messages contenant le mot bruit dans le texte du message.
     
  • Si vous devez visualiser une image en pièce jointe.
  • Tapez v nouvelle fenêtre s’ouvre et cliquez sur la description de l’image, ouverte par défaut par imagemagick, ce qui doit être paramétrable si vous désirez un autre visionneur d’image.
     
CE QUE J’EN PENSE SUITE À UTILISATION.
SI L’ON VEUT TRIER BEAUCOUP DE BOITES, COMME JE L’AI FAIT DANS L’EXEMPLE, MUTT ET FETCHMAIL S’EMBROUILLE VITE LES PINCEAUX.
C’EST VALABLE POUR UNE, VOIR DEUX BOITES.
PERSONNELLEMENT, J’AI LAISSÉ TOMBER, AVEC REGRETS



Site réalisé sous SPIP
avec le squelette ESCAL-V3
Version : 3.87.39
Hébergeur : chezlagrenouille.fr