问题标签 [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.
email - 你的 .procmailrc 里有什么
您在 .procmailrc 文件中是否有任何方便的常规项目?
unix - procmail 锁定文件实用程序和 NFS
是否有人将 procmail 附带的 lockfile 实用程序与 NFS 挂载目录一起使用?
lockfile 手册页指出“Lockfile 是 NFS 抗性和 8 位干净的”。
debian - 向通过 exim4 发送的邮件添加标头
我有一个运行 Exim4-daemon-heavy 的 Debian Etch 系统。
该系统对互联网开放,但其目的是只接收来自垃圾邮件过滤服务的合法邮件,该服务作为其前面的代理运行。(不过,我不能只限制对这些 IP 的访问,因为我确实有一些授权用户通过我的服务器在端口 25 上进行中继。我知道我应该使用 587 - 但目前我不是。)
这个工作的一般方式是:
[Internet] -> [SMTP 代理] -> [我的服务器]
不幸的是,我让垃圾邮件发送者直接向邮件服务器发送邮件,而忽略了 MX 记录。所以看起来我明显的解决方案是:
- 在 SMTP 代理上为每条已处理的邮件添加一个标头。
- 除非邮件来自授权的中继器,否则在我的服务器上为每条传入消息添加一个标头。(即完成 SMTP AUTH 的人。)
这样我就可以使用 procmail 来处理直接发送的垃圾邮件,这些邮件是通过忽略我的 MX 记录的发件人发送的。
我很确定 Exim4 可能会被强制添加诸如“X-Submitter: $ip”之类的标头 - 以记录提交消息的远程 IP,但我不确定应该如何完成。
procmail - Procmail 问题
几周以来我一直在努力解决这个问题......
我的目标是在我的收件箱中搜索以下消息:
我使用三个文件为我执行此操作。第一个,我的 $HOME 中的 .forward 文件
这两个在我的 ~/.procmail 目录中
最后是规则文件:general.rc
应该发生的是,所有这三个文件共同复制和移动主题中包含 hello 模式的邮件。为了安全起见,它还会寻找某个人的地址。然后,当这些模式匹配时,它将坚持找到的内容并创建指定的路径;如果它还不存在。
但它没有这样做。我在emacs、vi、..中编辑完这些文件然后保存后,它会自动工作吗?还是我需要编译它?
如果我这样做,.procmailrc 可能需要(如果不是全部)'Shell=/bin/sh'
不是我没试过...
不,我开发不佳的设计是处理传入的邮件..
我已经通过向自己发送电子邮件对其进行了测试。
我认为,我的 General.RC 文件不是编码写入的。因为,在我给自己发送电子邮件后,它应该直接复制并将其移动到指定的目录。
难怪我犯了这些错误,我已经编辑了这三个文件一百万次。
我的 LOG 文件中没有显示任何内容...
我已经修复了其他所有问题,并且我知道我的 /usr/bin/procmail 存在,因为我使用 whereis 来查看它的路径。
但我的测试仍然失败。我不断给自己发送电子邮件并检查我的邮件文件夹,看看我的“你好”文件中的字节是否增加了..
我怎样才能让日志工作?general.rc 错了吗?
email - Procmail 转发脚本,用于将电子邮件从一个域转发到另一个域
我正在尝试编写一个 procmail 转发脚本,它将把 mydomain.com 收到的所有邮件转发到 mydomain.NET。更清楚地说,如果邮件是:jack@mydomain.com,它应该转发到:jack@mydomain.net。像这样它应该转发所有相应的电子邮件:我该怎么做?
email - 如何在我的生产机器上接收与域有关的所有电子邮件?
我有一个奇怪的要求,任何网站用户(不是 linux 系统用户)都会获得一个电子邮件 ID,比如 jack@mywebsite.com、sarah@mywebsite.com,他们将在仪表板中内置一个收件箱功能。任何外部用户(可以是地球上的任何人/不完全是我的网站用户)都可以发送电子邮件至此 jack@mywebsite.com,并且 jack 在她的收件箱(内置在她的仪表板中)接收电子邮件。要做到这一点,我认为,以下是先决条件:
- 我需要将 MX 记录指向 mywebsite.com 的生产机器
- 我需要在我的 prod 机器上运行一个 smtp 服务器(可以是 Postfix)
除了这些,我还需要使用 MTA 设置任何类型的邮件帐户吗?我不想将这些网站用户创建为实际的系统用户(我喜欢做“useradd -s /sbin/nologin username”)我怎样才能完成这整个行为?
python - 希望 procmail 运行自定义 python 脚本,每次出现新邮件时
我对 procmail 有一个非常常见的要求,但我无法以某种方式获得结果。我有包含以下内容的 procmailrc 文件:
其中我的自定义python脚本(privilege_emails_forward.py)将扫描当前收到的电子邮件并对邮件内容进行一些操作。但是我无法让脚本在第一时间执行(更不用说扫描邮件内容了)。
- 这是在新邮件到达后立即调用外部程序(python)的正确方法吗?
- 我的 python 程序(privilege_emails_forward.py)如何接收邮件作为输入?我的意思是 sys.argv 或 stdin????
procmail - 带有正文搜索的 .procmailrc 中的“或”规则
根据http://lipas.uwasa.fi/~ts/info/proctips.html#orrules,您可以在 .procmailrc 中制定基本的“或”规则,例如:
通常,您可以使用条件检查身体,例如
但是,这会覆盖默认的标题/正文搜索区域,所以我不能做类似的事情
有什么方法可以将“或”规则作为具有分别搜索正文和标题的子条件的条件?
email - 将 IMAP 邮件移至 Gmail 并保留正确的时间
我正在尝试使用 gmail 来管理来自我只有 imap 的电子邮件帐户的邮件。我的策略是使用 ( getmail从服务器检索邮件并将其传递给 procmail 进行转发。
这几乎可以工作。它成功检索邮件并将其转发到我的 gmail 帐户。它不做的事情保持适当的“发送”时间。也就是说,我 3 个月前收到的一封电子邮件显示为我在转发时收到了它。
所以问题是,我怎样才能转发这些邮件并尊重它们的原始发送时间?
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)。
谢谢