我正在使用amazon Ec2
实例centos 6.4
。我试过了,但出现了错误
echo "hello" | sendmail [email protected]
sendmail: Cannot open mail:25
我怎样才能修复这个错误
更多信息
$ ls -l /usr/sbin/sendmail
139512 lrwxrwxrwx 1 root root 21 Jul 1 15:13 /usr/sbin/sendmail -> /etc/alternatives/mta
$ man mta
No manual entry for mta
答案1
假设你的防火墙、配置等都正常不应该使用 EC2与电子邮件相关的任何内容。
几家大型电子邮件提供商将大量 EC2 网络块或多或少永久列入黑名单(或受到严厉处罚)。
除此之外,亚马逊也屏蔽了其中的大部分内容。
你可以填写一份特殊的表格来请求取消这些限制但这不会将您从其他电子邮件运营商的黑名单中删除。
这将是一个最好使用 SNS但你肯定想要的是 Amazon SES(简单电子邮件服务)尽管它还处于测试阶段。
答案2
该端口被防火墙、AWS 安全组或两者阻止,但可能只是另一个绑定到 25 的正在运行的进程。
也许另一个 MTA 正在运行,并且使用端口 25?例如 Exim、Postfix、Qmail。尝试netstat -tulpn | grep :25
另外,确保没有端口过滤妨碍:
- 检查哪些 IPTables 不应该有出站端口阻止,至少启用 25
- 检查应用于 EC2 实例的安全组,出站流量通常对所有端口到所有地址都是开放的,至少启用 25
请注意,为了实现完整功能,需要启用 udp 端口 53 和 tcp 端口 53。