Si vous voulez dire que vous envoyez des e-mails par le biais d'un serveur SMTP tiers (fourni par votre FAI, par exemple), vous pouvez alors installer ssmtp
Il s'agit d'un remplacement direct de Postfix/Sendmail, mais il est spécialisé dans la tâche précise d'envoyer du courrier via un SMTP distant, et est donc beaucoup plus facile à configurer. Vous pouvez ensuite envoyer du courrier électronique avec le mailx
par exemple :
echo "Mail." | mailx -s "Subject" recipient@somewhere.org
EDIT : Le courrier électronique est une affaire très compliquée... Quelques éléments à garder à l'esprit :
Notez que la commande ci-dessus ne spécifie pas d'adresse d'expéditeur ( c'est-à-dire l'adresse que le destinataire verra dans le champ "De" de son client de messagerie). Par défaut, l'adresse de l'expéditeur est votre nom de connexion sur votre machine locale, suivi de @
suivi du nom d'hôte complet de la machine locale. Par exemple, sur ma machine, le nom de connexion est firas
et le nom d'hôte est nomo
:
firas@nomo ~ % whoami
firas
firas@nomo ~ % hostname -f
nomo
Ainsi, lorsque j'envoie un courriel avec la commande ci-dessus, l'adresse de l'expéditeur sera firas@nomo
comme on peut le voir dans mail.log
:
firas@nomo ~ % tail -n 3 /var/log/mail.log
Jun 9 20:37:46 nomo sSMTP[2203]: Creating SSL connection to host
Jun 9 20:37:48 nomo sSMTP[2203]: SSL connection using RSA_AES_128_CBC_SHA1
Jun 9 20:37:50 nomo sSMTP[2203]: Sent mail for firas@nomo (221 2.0.0 esmtp3.es.uci.edu closing connection) uid=1000 username=firas outbytes=364
La grande majorité des serveurs refuseront de relayer cet e-mail (par mesure anti-spam), car le nom de domaine nomo
n'est pas un domaine valide. Heureusement, il existe une option dans ssmtp.conf
qui permet de spécifier un domaine arbitraire, lequel sSMTP
sera utilisé lors de l'envoi du courrier. Il s'agit de l'adresse rewritedomain
donc si je l'ai dans mon ssmtp.conf
:
rewriteDomain=fkraiem.org
alors l'adresse de l'expéditeur sera firas@fkraiem.org
.
Normalement, ce qui précède devrait suffire (c'est-à-dire que tant que votre adresse d'expéditeur a un domaine valide, le serveur devrait relayer votre courrier). Cependant, certains fournisseurs de courrier électronique sont très zélés et ne vous autorisent à utiliser que l'adresse électronique que vous avez enregistrée chez eux. Cela signifie qu'en plus de changer le nom de domaine comme indiqué ci-dessus, vous devrez peut-être soit changer votre nom de connexion sur la machine locale, soit enregistrer une nouvelle adresse auprès de votre fournisseur (s'il le permet), afin que l'adresse finale corresponde à votre adresse enregistrée.
Une autre façon de spécifier une adresse d'expéditeur arbitraire est de définir l'option fromlineoverride
option de ssmtp.conf
a YES
et ensuite utiliser le -a
option de mailx
:
echo "Mail." | mailx -s "Subject" -a 'From: firas@fkraiem.org' firas@fkraiem.org
Cette méthode n'est cependant pas standard, et peut ne pas fonctionner sur des systèmes d'exploitation autres qu'Ubuntu (et d'autres systèmes basés sur GNU). On peut également utiliser d'autres clients plus sophistiqués, tels que mutt
.