Script super leve para receber e-mails recebidos e encaminhar para script

2

Eu preciso de um script daemon muito simples que receba todos os emails para um nome de domínio e apenas os encaminhe para um script. Eu sei que há software como o exim, o qmail ou outros para fazer isso, mas eu não quero instalar um software grande que tenha desempenho no host.

Eu tenho o registro MX do domínio apontando para o host; agora eu preciso de um daemon ouvindo na porta 25 e respondendo corretamente às comunicações padrão de correio (HELO e essas coisas), e então entregando o email para um script.

Como posso fazer isso?

Editar : o domínio.com APENAS será recebido, não preciso desse domínio para ter contas POP ou enviar e-mails; o domínio apenas receberá e-mails endereçados a *@domain.com , e gostaria que todos fossem redirecionados para um script.

Eu gostaria em C ou Perl, se possível

    
por user6686 17.04.2011 / 23:45

1 resposta

2

A biblioteca padrão do Python inclui o módulo smtpd que implementa o protocolo do servidor smtp. Você deve ser capaz de fazer o que quiser com algumas linhas de python.

Aqui está um código de amostra para começar:

import smtpd
import asyncore

class CustomSMTPServer(smtpd.SMTPServer):

    def process_message(self, peer, mailfrom, rcpttos, data):
        print 'Receiving message from:', peer
        print 'Message addressed from:', mailfrom
        print 'Message addressed to  :', rcpttos
        print 'Message length        :', len(data)
        return

server = CustomSMTPServer(('127.0.0.1', 25), None)

asyncore.loop()
    
por 18.04.2011 / 08:51