debian中打开exim4的发邮件功能
本文可自由转载,但请遵循“署名-非商业用途-保持一致”的创作共用协议。 永久链接:JoeCen's 小猫窝-----------------------------
debian的sarge和etch都使用exim4作为MTA。为了安全,系统默认安装好的exim4是bind在localhost,并且只能收发本地的邮件的。如果发送了外部的邮件,会在/var/log/exim4/maillog中看到类似的信息:
我们使用
命令可以看到当前exim4的一些版本信息和其它信息,如:
Copyright (c) University of Cambridge 2006
Berkeley DB: Sleepycat Software: Berkeley DB 4.3.29: (September 6, 2005)
Support for: crypteq iconv() IPv6 GnuTLS move_frozen_messages
Lookups: lsearch wildlsearch nwildlsearch iplsearch cdb dbm dbmnz dsearch nis nis0 passwd
Authenticators: cram_md5 plaintext
Routers: accept dnslookup ipliteral manualroute queryprogram redirect
Transports: appendfile/maildir/mailstore autoreply lmtp pipe smtp
Fixed never_users: 0
Size of off_t: 8
Configuration file is /var/lib/exim4/config.autogenerated
其中最后一行可以看到exim4默认的config file是
从该配置文件中,我们可以看到可以修改绑定的ip、可以收发什么地方的邮件之类的配置。不过,如果我们修改了该配置文件,再使用debian自带的/etc/init.d/exim4 脚本进行重启的话,会发现我们的改动不会生效,因为这个文件的内容又被改回来了。
我检查/etc/init.d/exim4脚本,发现有一个
该函数调用了
命令,在每次启动exim4的时候对配置文件进行检查,并更新
文件。update-exim4.conf命令的作用只是以
文件作为模板,自动生成exim4的默认配置文件。并且如果
文件存在的话,该命令会立即退出。
其实"update-exim4.conf"只是一个bash脚本,刚才说的该命令的用法都是可以直接看语法得出的.
而命令update-exim4.conf的配置文件是
名字比较奇怪。如果要对外发邮件,只需要将该配置文件中的选项
修改为
"dc_eximconfig_configtype=internet"
即可。另外
可以修改bind的ip。
最后的是exim4默认的发送邮件的主机名称为“demohost.”,如果更改这个名字只需要修改
文件即可。
不过要注意的是,不要使用不能解析的域名,否则会导致触发邮件发送方的spam过滤机制。比如我随便为我的exim4设置了一个mailname,然后发邮件到网易邮箱,163smtp服务的就会告诉我的exim4,触发了什么spam规则等:
(上述只是我在debian的使用过程中对exim4的一点点小心得,由于我并不太熟悉mail server和exim4,如有不妥之处请大家指正。)