我正在尝试从CentOS 6.4发送电子邮件,但不起作用。 我对服务器的知识是相当有限的,所以我希望有人能帮助我。 这是我做的:
首先,我尝试使用“邮件”命令发送电子邮件,但它不在操作系统中,所以我安装了它。
# yum install mailx
之后,我尝试使用“邮件”命令发送电子邮件,但没有发送任何内容。 我在网上查了一下,发现我需要像sendmail这样的电子邮件服务器,所以我安装了它。
# yum install sendmail sendmail-cf sendmail-doc sendmail-devel
之后,我configuration了一些教程。 首先,sendmail.mc文件。
# vi /etc/mail/sendmail.mc
注释下一行:
BEFORE # DAEMON_OPTIONS('Port=smtp, Name=MTA') dnl AFTER # dnl DAEMON_OPTIONS('Port=smtp, Name=MTA') dnl
检查下一行是否正确:
# FEATURE(`virtusertable', `hash -o /etc/mail/virtusertable.db')dnl # ... # FEATURE(use_cw_file)dnl # ... # FEATURE(`access_db', `hash -T<TMPF> -o /etc/mail/access.db')dnl
更新sendmail.cf
# m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
打开端口25,在iptables文件中添加适当的行
# vi /etc/sysconfig/iptables # -A INPUT -m state --state NEW -m tcp --dport 25 -j ACCEPT
重启iptables和sendmail
# service iptables restart # service sendmail restart
所以我认为这将是好的,但是当我尝试:
# mail '[email protected]' # Subject: test subject # test content #.
我检查了邮件日志:
# vi /var/log/maillog
这就是我发现的:
Aug 14 17:36:24 dev-admin-test sendmail[20682]: r7D8RItS019578: to=<[email protected]>, ctladdr=<[email protected]> (0/0), delay=1+00:09:06, xdelay=00:00:00, mailer=esmtp, pri=2460500, relay=alt4.gmail- smtp-in.l.google.com., dsn=4.0.0, stat=Deferred: Connection timed out with alt4.gmail-smtp-in.l.google.com.
我不明白为什么有一个连接超时。 我错过了什么吗? 任何人都可以帮我吗?
谢谢。
你确定你的传出SMTP连接没有被防火墙阻止吗?
这是一个常见的垃圾邮件预防措施。
当您在smtp.gmail.com上telnet端口25和587时,是否收到SMTP问候消息?
[你应该至less在587港口得到问候]
telnet smtp.gmail.com 587 telnet smtp.gmail.com 25
非常感谢答案。 似乎在我的地方正在使用的smtp服务器没有在configuration文件中configuration。 我得到了正确的信息,把它写在configuration文件,现在它工作正常。
谢谢!