mail (mailx) est une commande sous linux qui permet d’envoyer les emails depuis la ligne de commande. Dans un article précèdent nous avons vu comment installer un serveur de messagerie avec postfix, dans cet article nous allons voir comment envoyer les email depuis un serveur de messagerie sous Centos ou Ubuntu.
Ainsi pour appliquer ce tutoriel vous devez d’abord avoir en local un serveur smtp.
Fonctionnement de mail:
Le chemin emprunté par mailx pour envoyer un email peut être représenté comme ci-dessous :
Installation de mailx :
Pour installer mailx sous centos7/8 ou Redhat :
[root@postfix ~]# dnf install mailx Puppet Labs PC1 Repository el 7 - x86_64 973 kB/s | 12 MB 00:12 CentOS-7 - Base 729 kB/s | 10 MB 00:14 CentOS-7 - Updates 1.0 MB/s | 10 MB 00:10 CentOS-7 - Extras 550 kB/s | 292 kB 00:00 Dependencies resolved. Package Arch Version Repository Size Installing: mailx x86_64 12.5-19.el7 base 245 k Transaction Summary Install 1 Package Total download size: 245 k Installed size: 466 k Is this ok [y/N]: y Downloading Packages: mailx-12.5-19.el7.x86_64.rpm 149 kB/s | 245 kB 00:01 Total 136 kB/s | 245 kB 00:01 Running transaction check Transaction check succeeded. Running transaction test Transaction test succeeded. Running transaction Preparing : 1/1 Installing : mailx-12.5-19.el7.x86_64 1/1 Verifying : mailx-12.5-19.el7.x86_64 1/1 Installed: mailx-12.5-19.el7.x86_64
Pour installer mailx sur Ubuntu/debian :
[root@postfix ~]# apt-get install bsd-mailx
Envoyer un simple email :
Taper la commande suivante pour envoyer un email à l’adresse « mail@example.com » :
[root@postfix ~]# mail -s "sujet du mail" mail@example.com
Ecrivez ensuite votre mail, Lorsque vous avez terminé de taper le message, appuyer sur Ctrl+D et mailx affichera le mot EOT :
[root@postfix ~]# mail -s "sujet du mail" mail@example.com Bonjour Votre message. Cordialement EOT
Mail depuis un fichier :
Vous pouvez envoyer un email contenant dans un fichier :
[root@postfix ~]# mail -s "Sujet du mail" mail@example.com < /chemin/vers/fichier
Envoyer un mail à plusieurs destinataire :
[root@postfix ~]# echo "Corps du mail" | mail -s "sujet du mail" mail1@example.com,mail2@example.com
CC et BB :
Les options -a et -b peuvent être utilisés pour ajouter les adresse CC et BB respectivement :
[root@postfix ~]# echo "le corps du mail" | mail -s "Objet du mail" -c utilisateur1@example.com utilisateur2@example.com
Spécifier le nom et l’adresses source :
Utiliser l’option -r suivie du nom et l’adresse source, il faut mettre l’adresse entre <> :
[root@postfix ~]# echo "le corps du mail" | mail -s "l'objet du mail" -r "pierre<pierre@gmail.com>" utilisateur@example.com
Mettre une pièce jointe :
La pièce jointe peut être ajouté avec l’option -a :
[root@postfix ~]# echo "le corps du mail" | mail -s "l'objet du mail" -r "pierre<pierre@gmail.com>" -a /chemin/vers/fichier utilisateur@example.com
Apache : Apprendre à créer des virtual Hosts
Le fonctionnement du routeur
Iptables : 12 commandes à connaître
How to check the lock status of a user account in Linux
Fail2Ban : How to protect Linux services