l3u Advocate
Joined: 26 Jan 2005 Posts: 2545 Location: Konradsreuth (Germany)
|
Posted: Sat Oct 19, 2013 11:11 am Post subject: |
|
|
Ich habe kürzlich einen kleinen lokalen SMTP-Server in Python geschrieben, der alle E-Mails, die reinkommen, unter Verwendung eines externen Postfachs verschickt. Ist das evtl. das, was du suchst? Ich hab den Code grad nicht da, aber im Prinzip ist es http://pymotw.com/2/smtpd/ und dann, in der Funktion, die die eingehende E-Mail verarbeitet, das, was unter http://docs.python.org/3.3/library/smtplib.html beschrieben ist. Also quasi:
Code: | #!/usr/bin/python3
from smtplib import SMTP
import smtpd
import asyncore
smtp = SMTP()
class CustomSMTPServer(smtpd.SMTPServer):
def process_message(self, peer, mailfrom, rcpttos, data):
smtp.connect('mail.gmx.net', 587)
smtp.ehlo()
smtp.starttls()
smtp.ehlo()
smtp.login('user', 'pass')
smtp.sendmail(mailfrom, rcpttos, data)
smtp.quit()
return()
server = CustomSMTPServer(('hier die lokale IP, nicht 127.0.0.1', 1025), None)
asyncore.loop() |
Den daemon starte ich per init-Script, das legt dann auch automatisch ein PID-File an, startet das Programm und sorgt dafür, dass es nur ein Mal läuft (vgl. http://big-elephants.com/2013-01/writing-your-own-init-scripts/ ).
Prinzipiell würd ich halt „einfach“ Postfix aufsetzen. So, wie sich das für einen Server gehört ;-) |
|