Como integrar o postfix e mimedefang

2

Como uso o MIMEDefang com o Postfix para filtrar e-mails? Eu não quero escrever um manipulador de SMTPD e todas as informações que posso encontrar sobre o MIMEDefang estão relacionadas a como usá-lo com o Sendmail.

    
por ethrbunny 30.09.2013 / 16:01

2 respostas

1

Construa ou instale mimedefang (usei o yum como isso foi feito em um sistema CentOS 6.4). Isso também instalará o sendmail, mas não se assuste - é um requisito para o software. Se você está construindo nota que você precisará desta dependência.

Para escrever um milter usando este processo, você precisa procurar e modificar o arquivo chamado mimedefang-filter . Existem várias amostras disponíveis e, dependendo se você fez ou não uma construção própria ou usou um RPM, pode haver uma ou mais disponíveis em seu sistema. Coloque este arquivo em / etc / mail e verifique se ele é executável.

Crie uma pasta chamada / var / spool / MIMEDefang .

Encontre o código de controle de serviço para mimedefang e coloque-o em /etc/init.d . Torne isso executável. Abra este código com um editor e procure a seção da seguinte forma:

# Tricky stuff below... "echo -E" won't work, hence the two-step.
daemon $PROGDIR/$prog-multiplexor -p /var/spool/MIMEDefang/$prog-multiplexor.pid \
    $([ -n "$FILTER" ] && echo "-f $FILTER") \
    $([ -n "$SYSLOG_FACILITY" ] && echo "-S $SYSLOG_FACILITY") \
    $([ -n "$SUBFILTER" ] && echo "-F $SUBFILTER") \

... more lines follow with the same formatting...

    $([ "$MX_STATS_SYSLOG" = "yes" ] && echo "-T") \
    $([ "$MD_ALLOW_GROUP_ACCESS" = "yes" ] && echo "-G") \
    $([ -n "$MX_NOTIFIER" ] && echo "-O $MX_NOTIFIER") \
    echo "-U defang" \    <--------****** ADD THIS LINE ****
    -s $MX_SOCKET

Encontre a próxima seção que começa assim:

daemon $PROGDIR/$prog -P /var/spool/MIMEDefang/$prog.pid \
    -m $MX_SOCKET \
    $([ -n "$LOOPBACK_RESERVED_CONNECTIONS" ] && echo "-R $LOOPBACK_RESERVED_CONNECTIONS") \
    $([ -n "$MX_USER" ] && echo "-U $MX_USER") \

... follow it down....

    $([ "$ALLOW_NEW_CONNECTIONS_TO_QUEUE" = "yes" ] && echo "-q") \
    echo "-U defang" \   <----------*** ADD THIS LINE ****
    -p $SOCKET

Siga esta seção do código até a direita antes da linha "return $ RETVAL". Adicione esta linha:

chmod oug+rw /var/spool/MIMEDefang/*.sock

Se você não o fizer, o postfix não poderá se comunicar com o processo mimedefang .

Saia, salve e adicione isso aos seus serviços usando o chkconfig ou o que for que o faça feliz.

Último passo: abra /etc/postfix/main.cf e adicione estas linhas:

smtpd_milters = unix:/var/spool/MIMEDefang/mimedefang.sock
milter_default_action = accept

Agora - pare o postfix, inicie o mimedefang e reinicie o postfix. Verifique se há diversão em seus registros e continue sua empresa.

    
por 30.09.2013 / 16:01
3

Vou jogar isso aqui desde que fiz isso ontem:

Você não precisa fazer nada sozinho. Tudo o que você precisa é de postfix , libmilter e mimedefang dos RPMs para os quais estão disponíveis no EPEL, portanto eles devem estar disponíveis em outras distribuições que realmente armazenam versões atuais de pacotes em vez de as versões de 4 a 6 anos que os EL repos fazem. Mas eu divago.

No Centos 6.5, simplesmente:

yum install mimedefang

qual vai arcar e obter sendmail-milter [aka libmilter ] como parte das dependências. [SpamAssassin também]

Depois disso, eu recomendo alterar as configurações de soquete do MIMEdefang para usar um soquete inet em vez de um soquete unix. Isso é principalmente para evitar problemas de permissões, já que não posso encontrar uma combinação de usuário e permissões que funcionem tanto para o Postfix quanto para o MD.

em /etc/sysconfig/mimedefang uncomment e edite a linha SOCKET para:

SOCKET=inet:10997

Faça a porta como quiser, 10997 é minha escolha aleatória.

Agora:

service mimedefang start
chkconfig mimedefang on

E agora você pode simplesmente adicionar a configuração milter a main.cf ou como smtpd -o in master.cf da seguinte forma:

smtpd_milters = inet:10997
    
por 23.01.2014 / 01:14

Tags