我正在寻找一个简单的build议,应该基本上(最低限度)做一个默认的Debian 8 Jessie的exim4-daemon-heavy安装实际上接收任何邮件。
说到安装软件包后的基本操作,我的意思是设置MXlogging并通过dpkg-reconfigure exim4-config进行初始configuration:
这显然产生了这样的/etc/exim4/update-exim4.conf.conf文件:
dc_eximconfig_configtype='internet' dc_other_hostnames='' dc_local_interfaces='' dc_readhost='' dc_relay_domains='' dc_minimaldns='false' dc_relay_nets='' dc_smarthost='' CFILEMODE='644' dc_use_split_config='true' dc_hide_mailname='' dc_mailname_in_oh='true' dc_localdelivery='maildir_home'
最后一个动作是将/etc/mailname设置为example.org 。
上述所有内容都足以让Exim发送电子邮件,但是如果有人试图向你发送一个,你会得到这个恼人的relay not permitted错误:
H=example.net [192.0.2.1] F=<[email protected]> rejected RCPT <[email protected]>: relay not permitted
这种行为是非常典型的,上次我设置了Exim(Debian 7 Wheezy's),我花了很多时间设置这个,最后它工作。 我不想rsync老configuration,我只是想知道什么设置使得Exim接收电子邮件 。
对于那些感兴趣的Exim版本:
me@jessie:~$ exim -bV Exim version 4.84 #2 built 17-Feb-2015 17:45:46 Copyright (c) University of Cambridge, 1995 - 2014 (c) The Exim Maintainers and contributors in ACKNOWLEDGMENTS file, 2007 - 2014 Berkeley DB: Berkeley DB 5.3.28: (September 9, 2013) Support for: crypteq iconv() IPv6 PAM Perl Expand_dlfunc GnuTLS move_frozen_messages Content_Scanning DKIM Old_Demime PRDR OCSP Lookups (built-in): lsearch wildlsearch nwildlsearch iplsearch cdb dbm dbmjz dbmnz dnsdb dsearch ldap ldapdn ldapm mysql nis nis0 passwd pgsql sqlite Authenticators: cram_md5 cyrus_sasl dovecot plaintext spa Routers: accept dnslookup ipliteral iplookup manualroute queryprogram redirect Transports: appendfile/maildir/mailstore/mbx autoreply lmtp pipe smtp Fixed never_users: 0 Size of off_t: 8 Configuration file is /var/lib/exim4/config.autogenerated
那么,我已经做了一个彻底的diff ,发现这些设置,这使得Exim接收电子邮件:
/etc/exim4/conf.d/main/01_exim4-config_listmacrosdefs :
注释掉或删除此块(第64-66行):
.ifdef MAIN_LOCAL_INTERFACES local_interfaces = MAIN_LOCAL_INTERFACES .endif
并把它放在这里(注意地址和端口之间的点,这不是一个错字):
local_interfaces = 0.0.0.0.25
/etc/exim4/conf.d/main/02_exim4-config_options :
注释掉或删除此块(第90-92行):
.ifdef MAIN_HARDCODE_PRIMARY_HOSTNAME primary_hostname = MAIN_HARDCODE_PRIMARY_HOSTNAME .endif
并把它放在这里(当然,你真正的主机名):
primary_hostname = example.org
我不确定哪个设置可以解决问题,也许两个。 奇怪的是,当我试图恢复行为,并放弃我的编辑,Exim没有停止收到邮件。 可能它从这些configuration中学到了一些有用的东西(已经设置了variables)。