Page 1 sur 1

Envoyer des emails avec un raspberry PI

Message non luPosté: Sam 2 Fév 2013 13:26
de kelav
Pour envoyer des emails depuis le raspberry PI à l'aide du serveur mail de votre FAI.
Il faut savoir que linux est capable d'envoyer des emails aux utilisateurs locaux de la machine, ici on va lui dire de faire sortir ces emails vers l'extérieur.

Attention si quelqu'un prend le contrôle de votre raspberry PI il pourra spammer en votre nom!

Installer sendmail
apt-get install sendmail mailutils

Paramétrer sendmail
Modifier /etc/mail/sendmail.mc
Avant dnl # Default Mailer setup

Code: Tout sélectionner
define(`SMART_HOST',`smtp.VOTREFAI.fr')
GENERICS_DOMAIN(localhost.localdomain localhost)dnl
MASQUERADE_AS(`VOTREFAI.fr')dnl
FEATURE(masquerade_envelope)dnl


Remarque: Pour Masquerade_as vous pouvez mettre n'importe quel nom de domaine du moment qu'il existe (Idéalement un nom de domaine vous appartenant)

Ici on dit à sendmail:
-envoie les emails par le serveur mail du FAI
-Tout les utilisateurs locaux peuvent envoyer des emails en tant que ...
-NOMUTILISATEUR.VOTREFAI.fr
-Masqué les adresses locales (par ex root@raspberry en root@VOTREFAI.fr)

Redémarrer Sendmail
service sendmail restart

Tester la configuration
Code: Tout sélectionner
mail -s test adressemail

Vous devriez recevoir un email avec comme sujet test à l'adresse email renseigné

Reste plus qu'à faire une vieille blague à un pote pour se faire plaisir
Code: Tout sélectionner
mail -r stevejobs@apple.com -s "I'M BACK FROM THE DEAD TO EAT YOUR SOUL" -- adresse email


(Après avoir taper cette commande, rien ne se passe, c'est normal il attend que vous tapiez le corps du message, pour envoyer l'email faites:)
. (entrée)

Re: Envoyer des emails avec un raspberry PI

Message non luPosté: Mar 11 Fév 2014 20:59
de Blocos27
Salut,

Pour faire suite à ce post, voici une solution à base de script python, qui permet d'envoyer un mail en format Texte ou HTML, en utilisant la library smtplib :

Code: Tout sélectionner
#! /usr/bin/python

import smtplib

from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText

# me == my email address
# you == recipient's email address
me = "sender@mail.com"
you = "receiver@mail.com"

# Create message container - the correct MIME type is multipart/alternative.
msg = MIMEMultipart('alternative')
msg['Subject'] = "NAME OF SUBJECT"
msg['From'] = me
msg['To'] = you

# Create the body of the message (a plain-text and an HTML version).
text = " LE TEXTE POUR AFFICHER EN PLAIN-TEXT\n"
html = """\
<html>
  <head></head>
  <body>
    <p>Allo!<br>
<BR>
        ECRIVEZ <br>
<BR>
        CE QUE VOUS VOULEZ.
<BR>
        FIN DU MAIL HTML!
    </p>
  </body>
</html>
"""

# Record the MIME types of both parts - text/plain and text/html.
part1 = MIMEText(text, 'plain')
part2 = MIMEText(html, 'html')

# Attach parts into message container.
# According to RFC 2046, the last part of a multipart message, in this case
# the HTML message, is best and preferred.
msg.attach(part1)
msg.attach(part2)

# Send the message via local SMTP server.
s = smtplib.SMTP('smtp.votre-fai.fr')
#s.set_debuglevel(True)  # show communication with the server
# sendmail function takes 3 arguments: sender's address, recipient's address
# and message to send - here it is sent as one string.
s.sendmail(me, you, msg.as_string())
s.quit()



A+
Blocos