问题标签 [procmail]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
1099 浏览

email - 你的 .procmailrc 里有什么

您在 .procmailrc 文件中是否有任何方便的常规项目?

0 投票
1 回答
1068 浏览

unix - procmail 锁定文件实用程序和 NFS

是否有人将 procmail 附带的 lockfile 实用程序与 NFS 挂载目录一起使用?

lockfile 手册页指出“Lockfile 是 NFS 抗性和 8 位干净的”。

0 投票
1 回答
1184 浏览

debian - 向通过 exim4 发送的邮件添加标头

我有一个运行 Exim4-daemon-heavy 的 Debian Etch 系统。

该系统对互联网开放,但其目的是只接收来自垃圾邮件过滤服务的合法邮件,该服务作为其前面的代理运行。(不过,我不能只限制对这些 IP 的访问,因为我确实有一些授权用户通过我的服务器在端口 25 上进行中继。我知道我应该使用 587 - 但目前我不是。)

这个工作的一般方式是:

[Internet] -> [SMTP 代理] -> [我的服务器]

不幸的是,我让垃圾邮件发送者直接向邮件服务器发送邮件,而忽略了 MX 记录。所以看起来我明显的解决方案是:

  1. 在 SMTP 代理上为每条已处理的邮件添加一个标头。
  2. 除非邮件来自授权的中继器,否则在我的服务器上为每条传入消息添加一个标头。(即完成 SMTP AUTH 的人。)

这样我就可以使用 procmail 来处理直接发送的垃圾邮件,这些邮件是通过忽略我的 MX 记录的发件人发送的。

我很确定 Exim4 可能会被强制添加诸如“X-Submitter: $ip”之类的标头 - 以记录提交消息的远程 IP,但我不确定应该如何完成。

0 投票
5 回答
1511 浏览

procmail - Procmail 问题

几周以来我一直在努力解决这个问题......

我的目标是在我的收件箱中搜索以下消息:

我使用三个文件为我执行此操作。第一个,我的 $HOME 中的 .forward 文件

这两个在我的 ~/.procmail 目录中

最后是规则文件:general.rc

应该发生的是,所有这三个文件共同复制和移动主题中包含 hello 模式的邮件。为了安全起见,它还会寻找某个人的地址。然后,当这些模式匹配时,它将坚持找到的内容并创建指定的路径;如果它还不存在。

但它没有这样做。我在emacs、vi、..中编辑完这些文件然后保存后,它会自动工作吗?还是我需要编译它?

如果我这样做,.procmailrc 可能需要(如果不是全部)'Shell=/bin/sh'

不是我没试过...


不,我开发不佳的设计是处理传入的邮件..

我已经通过向自己发送电子邮件对其进行了测试。

我认为,我的 General.RC 文件不是编码写入的。因为,在我给自己发送电子邮件后,它应该直接复制并将其移动到指定的目录。


难怪我犯了这些错误,我已经编辑了这三个文件一百万次。

我的 LOG 文件中没有显示任何内容...

我已经修复了其他所有问题,并且我知道我的 /usr/bin/procmail 存在,因为我使用 whereis 来查看它的路径。

但我的测试仍然失败。我不断给自己发送电子邮件并检查我的邮件文件夹,看看我的“你好”文件中的字节是否增加了..

我怎样才能让日志工作?general.rc 错了吗?

0 投票
2 回答
2241 浏览

email - Procmail 转发脚本,用于将电子邮件从一个域转发到另一个域

我正在尝试编写一个 procmail 转发脚本,它将把 mydomain.com 收到的所有邮件转发到 mydomain.NET。更清楚地说,如果邮件是:jack@mydomain.com,它应该转发到:jack@mydomain.net。像这样它应该转发所有相应的电子邮件:我该怎么做?

0 投票
1 回答
1354 浏览

email - 如何在我的生产机器上接收与域有关的所有电子邮件?

我有一个奇怪的要求,任何网站用户(不是 linux 系统用户)都会获得一个电子邮件 ID,比如 jack@mywebsite.com、sarah@mywebsite.com,他们将在仪表板中内置一个收件箱功能。任何外部用户(可以是地球上的任何人/不完全是我的网站用户)都可以发送电子邮件至此 jack@mywebsite.com,并且 jack 在她的收件箱(内置在她的仪表板中)接收电子邮件。要做到这一点,我认为,以下是先决条件:

  1. 我需要将 MX 记录指向 mywebsite.com 的生产机器
  2. 我需要在我的 prod 机器上运行一个 smtp 服务器(可以是 Postfix)

除了这些,我还需要使用 MTA 设置任何类型的邮件帐户吗?我不想将这些网站用户创建为实际的系统用户(我喜欢做“useradd -s /sbin/nologin username”)我怎样才能完成这整个行为?

0 投票
2 回答
16280 浏览

python - 希望 procmail 运行自定义 python 脚本,每次出现新邮件时

我对 procmail 有一个非常常见的要求,但我无法以某种方式获得结果。我有包含以下内容的 procmailrc 文件:

其中我的自定义python脚本(privilege_emails_forward.py)将扫描当前收到的电子邮件并对邮件内容进行一些操作。但是我无法让脚本在第一时间执行(更不用说扫描邮件内容了)。

  • 这是在新邮件到达后立即调用外部程序(python)的正确方法吗?
  • 我的 python 程序(privilege_emails_forward.py)如何接收邮件作为输入?我的意思是 sys.argv 或 stdin????
0 投票
1 回答
2118 浏览

procmail - 带有正文搜索的 .procmailrc 中的“或”规则

根据http://lipas.uwasa.fi/~ts/info/proctips.html#orrules,您可以在 .procmailrc 中制定基本的“或”规则,例如:

通常,您可以使用条件检查身体,例如

但是,这会覆盖默认的标题/正文搜索区域,所以我不能做类似的事情

有什么方法可以将“或”规则作为具有分别搜索正文和标题的子条件的条件?

0 投票
1 回答
1415 浏览

email - 将 IMAP 邮件移至 Gmail 并保留正确的时间

我正在尝试使用 gmail 来管理来自我只有 imap 的电子邮件帐户的邮件。我的策略是使用 ( getmail从服务器检索邮件并将其传递给 procmail 进行转发。

这几乎可以工作。它成功检索邮件并将其转发到我的 gmail 帐户。它不做的事情保持适当的“发送”时间。也就是说,我 3 个月前收到的一封电子邮件显示为我在转发时收到了它。

所以问题是,我怎样才能转发这些邮件并尊重它们的原始发送时间?

0 投票
2 回答
1769 浏览

procmail - 如何使用 Procmail 向发件人和所有收件人发送自动回复?

我想创建一个 procmail 配方或 Perl 或 shell 脚本,它将向原始发件人以及在原始电子邮件中复制的任何人(收件人:或抄送:)发送自动回复。

例子:

bob@example.com 给 john@example.com 和 paul@example.com 写一封电子邮件(在收件人:字段中)。副本通过 cc: 发送至 rob@example.com 和 alice@example.com。

我希望脚本向原始发件人 (bob@example.com) 和发送电子邮件副本的其他所有人 (john@example.com、paul@example.com、rob@example. com 和 alice@example.com)。

谢谢