YannStatic
  • Etiquettes
  • Liens
  • Aide

Envoi de message en ligne de commande en utilisant msmtp

  • messagerie
  •  23 févr. 2024 28 févr. 2024
Afficher/cacher Sommaire

Msmtp

Les principaux points forts de ‘msmtp’ sont les suivants :

  • L’envoi d’emails via MUA, typiquement Emacs ou Mutt. Assurez-vous simplement d’indiquer au MUA sur votre machine de ne pas appeler /usr/sbin/sendmail, mais d’appeler le msmtp.
  • Redirection des courriels vers un SMTP (le serveur facilite l’envoi)
  • Profils - vous pouvez configurer ‘msmtp’ avec différents SMTP et configurations, ce qui le rend idéal pour les clients mobiles.
  • Pipelining de commandes
  • Prise en charge du proxy SOCKS et des IDN (noms de domaine internationalisés)

Installation

Pour installer ‘msmtp’ et le paquetage associé.

sudo apt-get install msmtp msmtp-mta

Configuration

Créez le fichier de configuration

nano ~/.msmtprc

Configurez ensuite ‘msmtprc’, votre fichier devrait ressembler à ce qui suit

defaults
auth           on
tls            on
tls_trust_file /etc/ssl/certs/ca-certificates.crt
logfile        ~/.msmtp.log
account        monmail
host           live.smtp.mailtrap.io
port           587
from           your-email@example.com
user           useremail              // ou useremail@your-email@example.com
password       UserEmailPassword  
account default : monmail

Shell

Envoi en ligne de commande

echo -e "Subject: msmtp en ligne de commande\r\nMIME-Version: 1.0\nContent-Type: text/html; charset=utf-8\r\n\r\nLe contenu du message..." |msmtp --from=expediteur@origi.loc -t destinataire@desti.loc

PHP

<?php
$lien = 'https://site.mondomain.tld/phplogin/activate.php?email=' . "test@domain.tld" . '&code=' . '4567';
$message = '<p>Please click the following link to activate your account: <a href="' . $lien . '">' . $lien . '</a></p>';

$from    = 'postmaster@mondomain.tld';
$noreply = 'noreply@mondomain.tld';
$subject = 'Account Activation Required';
$headers = 'From: ' . $from . "\r\n" . 'Reply-To: ' . $noreply . "\r\n" . 'X-Mailer: PHP/' . phpversion() . "\r\n" . 'MIME-Version: 1.0' . "\r\n" . 'Content-Type: text/html; charset=UTF-8' . "\r\n";

// Chemin vers fichier texte
$file ="/tmp/message.txt";
// Ouverture en mode écriture
$fileopen=(fopen("$file",'w'));
// Ecriture dans le fichier texte
fwrite($fileopen,"To: yack@cinay.eu"."\n");
//fwrite($fileopen,"From: postmaster@mondomain.tld"."\n");
fwrite($fileopen,$headers);
fwrite($fileopen,"Subject: ".$subject."\n"."\n"."\n");
fwrite($fileopen,$message."\n");
// On ferme le fichier proprement
fclose($fileopen);
// Exécuter bash
exec('/usr/bin/msmtp -t < /tmp/message.txt');
?>

PRÉCÉDENTBase de données Sqlite3
SUIVANTLenovo KVM - Serveur virtuel Debian 12 debsrv01 (image nocloud)
Recherche