2012-09-13 59 views
0

我想使用James作为中继来处理收到的电子邮件,并通过webservice将它们放入系统中。 它工作正常。 但我想处理由发送电子邮件到该服务器的程序的配置错误所产生的最终洪水......有没有办法配置此电子邮件的发件人或此电子邮件的目的地的临时“禁止”状态的管理?Apache james STMP泛滥

感谢

+0

请仅针对HTTP服务器使用apache标签。 –

+0

它不是专注于HTTP,而是在邮件服务器James上,我接受STMP连接,并且我想根据发送者和/或接收者将其限制到下降等级。 –

+0

对不起,我看到这是@leppie谁加了标签。你做得很好! –

回答

0

使用SMPT HOOK的是这里很有用,我只是写一个

public class SMTPFloodProtectionHook implements RcptHook { 
[...] 
@Override 
public HookResult doRcpt(SMTPSession session, MailAddress sender, MailAddress rcpt) { 
    if (checkFloodSender(sender) || checkFloodReceiver(rcpt)) 
     return HookResult.deny(); 
    return HookResult.ok(); 
} 

和修改smtpserver.conf

<!-- The configuration handler chain --> 
    <handlerchain> 

     <handler class="org.domain.atgov.incomingevent.email.SMTPFloodProtectionHook" /> 

它拒绝比使用mailet的更快。