如何在Postfix中configurationpolicyd-spf来拒绝没有SPFlogging的域?
该文档没有指定这个条件,并且需要拒绝出站中继上的欺骗/未经授权的电子邮件。
Stackoverflow上的类似问题build议使用DMARC和SPF。 但是对于Postfix而言,这并不是一个理想的情况,因为OpenDMARC还处于testing阶段,而且我不熟悉它的Postfix实现,或者是否可以configuration为在没有DMARClogging的情况下拒绝电子邮件。
像policyd-spf这样的SPF策略服务器不能select拒绝没有SPFlogging的域。 解决scheme是使用自定义策略服务器。
如果您使用python policyd-spf,您可以编辑可执行文件(debian中的/ usr / bin / policyd-spf):
符合〜515代替:
if configData.get('Mail_From_reject') != 'No_Check': res = spf.check2(ip, sender, helo, querytime=configData.get('Lookup_Time')) mfrom_result = [res[0], res[1]] mfrom_result.append('mailfrom') mfrom_result[0] = mfrom_result[0].lower() mfrom_result[0] = mfrom_result[0].capitalize() mfrom_resultpolicy, local = _get_resultcodes(configData, 'mfrom')
通过:
if configData.get('Mail_From_reject') != 'No_Check': res = spf.check2(ip, sender, helo, querytime=configData.get('Lookup_Time')) mfrom_result = [res[0], res[1]] # Selenith's add : reject if no spf record if mfrom_result[0]=='none': mfrom_result[0] = 'fail' mfrom_result[1] = 'no SPF record' mfrom_result.append('mailfrom') mfrom_result[0] = mfrom_result[0].lower() mfrom_result[0] = mfrom_result[0].capitalize() mfrom_resultpolicy, local = _get_resultcodes(configData, 'mfrom')