CentOS 5.x | 发邮件
嗨,大家好,
有没有一种简单的方法可以从 /var/spool/mail/ 检索单个邮件?我有一个非常简单的脚本的想法,并想检查每个单独的消息。
场景是:
1) 新邮件到达收件箱。2) 脚本检查特定字符串。3) 如果找到字符串,脚本检索各种标题信息和电子邮件信息到地址。
我意识到 milter 可能是要走的路,但我希望找到一种方法来使用 shell 脚本来做到这一点,因为我想练习它。问题是我似乎找不到解析或以其他方式隔离单个消息的方法。当我检查 /var/spool/mail/ 时,我看到一个包含多条消息的大文件,并且消息之间没有唯一的分隔符。
我几乎完成了为我的域配置我的域名服务器。一切正常,网站响应……但我的 MX 记录似乎不起作用,我尝试了很多东西。我创建了一个带有子域 pop 和 smtp 的 cname 一个带有 webhost4life.com 的 MX 记录有一个主机名(但我不知道它是否应该是那个主机)我确实尝试过 mail.webhost4life.com 但似乎没有任何工作。如果您比较 intoDNS.com datahex.ca 和 myhaccpplan.com(MX 正在运行),也许您可以帮助我弄清楚我在这里做错了什么。
我正在 zoneedit.com 上配置我的名称服务器。
谢谢。
有谁知道它的一个实用程序可以让我使用旧邮件日志通过 sendmail 发送的电子邮件总数?
有人建议使用 mailstats 实用程序,但是该程序似乎提供所有邮件日志文件条目的统计信息。尽管这很有用,但在本例中并没有什么帮助,因为 sendmail 发送的单个邮件消息可以在任意位置记录 5 个不同的日志条目。
总体而言,我从一台机器上的 Web 应用程序通过另一台机器上的 sendmail 发送邮件,最终目的地是 mx.google.com 上的 pop 帐户。后者的 sendmail 机器有 2 个 ip 号,因为它兼作数据库服务器。当我收到消息后查看标题时,IP号引用的是错误的IP号。数字不是随机的;它是数据库服务器(即同一台物理机)的 ip 号。
这是症状。我的 Eudora 电子邮件客户端报告此标题: Received from good.mydomain.com (bad.mydomain.com. [xxx10]) by mx.google.com with ESMTPS id ...
短语“good.mydomain.com”是正确的,似乎源自 /etc/mail/sendmail.mc 中的 confDOMAIN_NAME 行。'bad.mydomain.com' 是 xxx10 的 rdns。我希望它是 xxx66,其中 RDNS 到 good.mydomain.com 已经设置并正常工作。这使用公共 DNS,没有特殊的 etc/hosts 条目。
我在 /etc/mail/sendmail.mc 中有这一行,它似乎将事物的接收端绑定到所需的 .66 号: DAEMON_OPTIONS(`Port=smtp,Addr=xxxx66, Name=MTA')dnl
我认为我的 xxx10 ip 号码在网卡上以某种方式“首先”,我真的不想改变它。我只想让 Sendmail 坚持 0.66 号以便中继到 mx.google.com。
不用担心开放中继,防火墙已经设置,只接受来自我的网络服务器机器的连接。
我知道我必须在每次更改宏后运行 make,而且我也必须重新启动 sendmail 服务。
感谢您考虑我的问题。
CentOS 5.8
我希望能够根据主题行跟踪电子邮件。SendMail 中的默认日志 9 似乎不包含该信息。
我的问题是:
由于脚本错误,我正在运行 centos 并且邮件队列中有大量可笑的电子邮件。有什么方法可以删除在 sendmail 的邮件队列中具有特定主题行的邮件。
我是 AWS 的新手。我们正在将 Hostgator 的 VPS 上托管的 Joomla 网站迁移到运行 Red Hat 的 AWS EC2。它需要邮件服务来发送和接收。
我可以安装 postfix 和 sendmail,但不清楚 SMTP 如何在 AWS EC2 上工作,因此发送的电子邮件是合法的,它究竟连接到什么?它是否需要 SMTP 邮件的 3rd-party 服务,还是由 AWS 在某个地方提供?
我们有一个用于支持和帮助票的 Rails 应用程序。
当客户提交请求时,它会向客户发送确认电子邮件。当我们回复他们的请求时,它还会发送一封电子邮件。它不接收邮件。
在上周,我们 25% 以上的客户停止收到他们的回复。他们认为我们没有回复他们的票(实际上是)。
我用我的@yahoo.com 帐户做了一个测试,并在 mail.log 文件中找到了这个:
Jul 9 16:11:45 bighelp postfix/smtp[9051]: BF673324365: host b.mx.mail.yahoo.com[66.196.97.250] said: 451 Message temporarily deferred - [140] (in reply to end of DATA command)
Jul 9 16:11:45 bighelp postfix/smtp[9051]: BF673324365: to=<erik.dungan@yahoo.com>, relay=d.mx.mail.yahoo.com[68.142.202.247]:25, delay=0.73, delays=0.02/0.02/0.64/0.05, dsn=4.0.$
Run Code Online (Sandbox Code Playgroud)
其他非雅虎地址也遇到了这种情况。
Rails 应用程序在 Ubuntu 上运行,我们通过以下方式发送:
ActionMailer::Base.delivery_method = :sendmail
Run Code Online (Sandbox Code Playgroud)
我确保服务器不是开放中继。
我还能做些什么来确保我们的大部分电子邮件都能通过?
我想让 Postfix 无法接收邮件。我只是希望能够使用 Postfix 发送邮件,而不是相反。那可能吗?如果是这样,谁能告诉我该怎么做?谢谢。
我有一个 sendmail 问题,而且我不是一个 sendmail 专家——我可以使用一些帮助。
我的问题是我有一个系统或多或少是一个“设备”——它不打算有一个管理员。因此,它需要能够通过发送电子邮件来“打电话回家”。由于我们已经配置了它,这工作正常——使用 sendmail,它通过查找 MX 记录找到适当的中继,一切正常。
但是,现在出于安全考虑,我们希望将其限制为仅使用一个中继,例如relay.corp.example.com. 如果用户将其配置为使用,例如,fubar.example.com邮件发送应该失败或被推迟。
我认为通过使用包含的/etc/mail/server.switch文件配置 sendmail
hosts files
Run Code Online (Sandbox Code Playgroud)
没有dns,我会得到那种效果。这不起作用——相反,如果它收到的邮件发送到foo@example.com,它会尝试直接与 对话example.com,并忽略配置的服务器。
有任何想法吗?
更新
好的,我实验性地将两个方案联系起来,它们似乎都有效。希望我能将它们标记为正确。