用于防止从本地域名发送电子邮件的Eximconfiguration

与cPanel / WHM的CentOS 6。 黑客以某种方式不断进入我们的cPanel邮件帐户,并从我们的服务器发送垃圾邮件。 他们或者欺骗了垃圾邮件地址,或者只是用“回复”来让受害者看到垃圾邮件发送者select的域名,例如lottery.microsoft.com或类似的东西。 我决定locking服务器,并要求托pipe公司防止任何传出或接收非本地域名的邮件。

他们对/etc/exim.conf进行了一些修改,在文件中添加了一些看起来可能是C代码的东西。 我不知道configuration文件可能在其中有编程结构。 任何人都可以解释下面几行的含义吗?

他们添加的代码应该防止通过电子邮件发送到或从非本地域。 但现在我想改变它允许发送电子邮件到非本地,但继续阻止电子邮件发送。 我也想阻止外发电子邮件的“答复”是非本地的。

我假设#是注释行。 这些variables从哪里来? 什么是allow_failno_more ? if语句是否可用,还是用#来评论?

 #ifdef DCconfig_local # configtype=local # # Stand-alone system, so generate an error for mail to a non-local domain nonlocal: debug_print = "R: nonlocal for $local_part@$domain" driver = redirect domains = !example.com qualify_domain = example.com # domains = ! +local_domains allow_fail data = :fail: Mailing to remote domains not supported no_more #.endif 

eximconfiguration文件有一个允许复杂处理的语法。 这是用于您包含的configuration代码段的语言。 语言是Exim的文档loggingconfiguration。

邮件可能是由软件以外的其他人发送的。 如果是通过exim发送的,则传输应该logging在/var/log/exim/mainlog或者该时期的/var/log/exim/mainlog日志中。

如果configurationvariables设置正确,默认的eximconfiguration通常是相当安全的。 通常情况下,它configuration了一些启动DC的macros定义。 在你的情况下,我希望DCconfig_internet启用。 修复您的收件人处理,您应该能够恢复您的提供商所做的更改。 要恢复它,只需启用本节顶部和底部的预处理器指令即可。

中继限制通常在收件人ACL中处理。 检查configuration文件中的一行acl_smtp_rcpt 。 然后search赋值右侧的值。 这将是用于检查收件人的ACL。 通读这个检查acceptdeny块,直到你得到像message = relay not permitted 。 该块应该像这样读取:

 require message = relay not permitted domains = +local_domains : +relay_to_domains 

如果允许中继,则在到达此区块之前,电子邮件已被接受,或者此区块允许使用外部区域。 应该有这样的定义:

 hostlist relay_from_hosts = <; 127.0.0.1 ; ::1 domainlist local_domains = example.com domainlist relay_to_domains = 

如果local_domains或relay_to_domains包含通配符('*'),则可能是开放中继。

回答你的具体问题:

  • #是注释分隔符。
  • #ifdef#.endif被禁用预处理器指令。 在启用时读取.ifdef.endif ,并像c预处理器指令一样工作。
  • allow_fail是一个configuration命令,允许路由器在没有popup当前消息的情况下失败。
  • no_more是一个configuration指令,如果此路由器成功,它将停止路由。

ifdef是真的还是假的,是不可能的。

指令的含义是下一个:

  • 如果收件人的域名不是example.com那么路由器就会被激活

  • 如果未提供发件人域,则使用qualify_domain example.com

  • 允许:fail:作为redirect数据

  • redirect消息:fail:答复发件人: Mailing to remote domains not supported

  • 停止消息处理