- 论坛徽章:
- 0
|
本帖最后由 liyis永恒 于 2011-07-07 09:38 编辑
现在B 可以通过A往外发送邮件了。163 QQ 都可以。Yahoo有延迟。
但是C我参照B一样的配置,还是不行。
查看日志:- Jan 21 14:43:21 dalanzi sendmail[30450]: p0L6g9Mj030450: from=root, size=41, class=0, nrcpts=1, msgid=<201101210642.p0L6g9Mj030450@dalanzi.>, relay=root@localhost
- Jan 21 14:43:21dalanzi sendmail[30450]: p0L6g9Mj030450: to=XX@XX.com, delay=00:01:12, mailer=esmtp, pri=30041, dsn=4.4.3, stat=queued
- Jan 21 14:43:32 dalanzi sendmail[30292]: p0L6f8Js030292: from=root, size=65, class=0, nrcpts=2, msgid=<201101210641.p0L6f8Js030292@dalanzi.>, relay=root@localhost
- Jan 21 14:43:32 dalanzi sendmail[30292]: p0L6f8Js030292: to=liyis_liu@163.com, delay=00:02:24, mailer=esmtp, pri=60065, dsn=4.4.3, stat=queued
- Jan 21 14:43:32 dalanzi sendmail[30292]: p0L6f8Js030292: to=liyisliu@gmail.com, delay=00:02:24, mailer=esmtp, pri=60065, dsn=4.4.3, stat=queued
复制代码 dalanzi 即服务器C。
参照的配置文档为(服务器B已经成功)- 打开sendmail.mc文件并做如下修改
- 修改以下两行:
- define(`confPRIVACY_FLAGS', `authwarnings,novrfy,noexpn,restrictqrun,goaway')dnl
- define(`SMART_HOST',`[64.78.160.80]')dnl
- 添加以下四行:
- define(`confAUTH_OPTIONS', `A')dnl
- define(`confAUTH_MECHANISMS', `DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
-
-
- TRUST_AUTH_MECH(`DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
- FEATURE(`authinfo',`hash -o /etc/mail/authinfo.db')dn
- 3) 生成sendmail.cf文件
- m4 sendmail.mc > sendmail.cf
-
- 3. 修改认证文件,告诉sendmail用哪个邮箱用户和密码来完成SMTP认证。
- 1) 打开认证文件/etc/mail/authinfo并编辑下面一行:
- AuthInfo: "U:smtp" "P:kldfir8f" "M:LOGIN"
- U代表邮箱用户;P代表邮箱密码;M代表公司邮件服务器认证方式。
- 2) 保存完authinfo文件后,我们需要限制它的权限以便只有root用户可以查看。由于authinfo里包含了邮箱的密码,所以限制authinfo文件的权限是很有必要的。以下是修改authinfo文件权限的命令:
- chmod 660 /etc/mail/authinfo
- 3) 将authinfo文件转换成.db的文件,以便sendmail能够读取它。以下是转换命令:
- makemap hash /etc/mail/authinfo < /etc/mail/authinfo
复制代码 服务器A(邮件服务器)的一些配置:
cat access
# by default we allow relaying from localhost...
Connect:localhost.localdomain RELAY
Connect:localhost RELAY
Connect:127.0.0.1 RELAY
Connect:192.168.10 RELAY #三台机器内网段
Connect:210.22.70 RELAY # 服务器的外网段 |
|