标签: procmail

如何停止 Fetchmail 将邮件标记为已读

fetchmail检查我的IMAP收件箱,它下载任何未读邮件并删除邮件“未读”标志在邮件服务器上。

有没有办法fetchmail下载新邮件而不将它们标记为已读?

我习惯于procmail自动处理新邮件消息并根据邮件规则运行脚本,因此我希望下载消息,但如果“新消息”标志保留在我尚未在电子邮件客户端中阅读的消息上,我会更喜欢它。

这是我的.fetchmailrc文件:

poll mail.domain.com protocol IMAP
    user "user@domain.com"
    password 'password'
    folder 'INBOX'
    keep
    ssl
    mda "/usr/bin/procmail -f %F"
Run Code Online (Sandbox Code Playgroud)

fetchmail procmail

9
推荐指数
2
解决办法
7668
查看次数

接收 Pop/IMAP 电子邮件,然后以加密形式转发到 gmail

基本上,我有一个可以作为 POP3 或 IMAP 访问的电子邮件帐户。我想接收所有收到的电子邮件,对其进行加密,然后将加密版本转发到我的 gmail 帐户(这样我就可以在我的手机/gmail 帐户上看到主题/通知;并可能使用密码解密该邮件——尽管这最后步骤不需要最初实施)。

我可能可以编写一个 python 脚本来做到这一点,但使用适当的 linux 工具似乎是一条更好的路线。我已经将 postfix(在卫星配置中)设置为发送外发邮件。

在 linux 机器上读取 POP3/IMAP 并让它使用我的公钥 gpg 加密电子邮件的正文和附件(不是主题标题)并将其转发到我的 gmail 帐户的最简单方法是什么?

(作为记录;它违反工作政策(部分是为了遵守美国 HIPAA 法律)让我将未加密版本的电子邮件发送到我的手机;因为有人可能有意(或无意)将受保护的数据通过电子邮件发送到我的手机。 Work 认为 GPG 是安全的。)

encryption email gpg procmail

8
推荐指数
1
解决办法
4125
查看次数

如何将我的 procmail 过滤器应用到我的 maildir 收件箱?

昨晚我订阅了一个邮件列表,今天早上发现我的 procmail 过滤器不适用于许多邮件列表消息。现在,我的收件箱中散布着大量不太重要的邮件列表消息,其中散布着我更重要的工作电子邮件。

是否可以再次通过我的 procmail 过滤器重新运行收件箱中的所有电子邮件?

注意:我使用的是maildir格式

email procmail maildir

8
推荐指数
1
解决办法
5438
查看次数

如何在不给自己发送电子邮件的情况下测试 procmail 规则?

我收到大量来自某个国家/地区的垃圾邮件。它们在源中都有相同的模式。我想编写一个 procmail 规则来自动将所有这些电子邮件移至我的垃圾邮件文件夹。

垃圾邮件的来源可能如下所示(我添加“[已编辑]”以保护我的隐私):

Return-Path: <>
X-Original-To: [REDACTED]
Delivered-To: [REDACTED]
Received: from [REDACTED] ([REDACTED] [REDACTED])
    by [REDACTED] (Postfix) with ESMTPS id 2AC8E731E799DC
    for <[REDACTED]>; Sat,  9 Jul 2022 20:16:41 +0000 (UTC)
Received: from [REDACTED].org ([REDACTED].ru [REDACTED])
    by [REDACTED] (Postfix) with ESMTP id 6F1865ECD8
    for <[REDACTED]>; Sat,  9 Jul 2022 20:16:40 +0000 (UTC)
[...]
Run Code Online (Sandbox Code Playgroud)

我想要做的是查看“已接收”标头,并将来自 .ru TLD 的所有内容都扔进垃圾邮件中。

我的尝试是这样的:

:0 H
* ^Received:*\.ru
.Spam/
Run Code Online (Sandbox Code Playgroud)

但是,我是编写 procmail 规则的新手。我怎样才能测试我的新规则以便知道它是正确的?

procmail

8
推荐指数
1
解决办法
1782
查看次数

使用 Munpack 提取特定文件类型的附件 (Debian/Squeeze)

Munpack在 Debian/Linux 上配置为从收到的电子邮件中提取附件。

(对于其他上下文,Getmail获取电子邮件并将其通过管道传输到ProcmailProcmail然后将其通过管道传输到Munpack。)

| munpack -q -C directory/
Run Code Online (Sandbox Code Playgroud)

出于某种原因,当我收到带有 (a) 内嵌附件(通常images)和 (b) 文档附件(通常.csv)的电子邮件时,.csv文件完全毁了。

(请注意,当只有一个附件(通常是.xls文件)时不会出现此问题。

有没有办法将 Munpack 配置为:

1. Save **ONLY** attachments with the `.csv` extension in the email.

2. Make sure that the **.csv** files are saved as is.
Run Code Online (Sandbox Code Playgroud)

email procmail

6
推荐指数
1
解决办法
6859
查看次数

限制谁可以发送到电子邮件地址

我想这样做,只有某些发件人:地址可以发送到运行 Postfix 的 Ubuntu 系统上的电子邮件地址(邮件列表)。

理解手册中的 Postfix 需要很多知识,所以我希望得到一个我可以使用的完整配方。目前这是我所拥有的:

/etc/postfix/main.cf:
smtpd_recipient_restrictions =
  check_recipient_access hash:/etc/postfix/protected_destinations
smtpd_restriction_classes = insiders_only
insiders_only = check_sender_access hash:/etc/postfix/insiders, reject

/etc/postfix/protected_destinations:
protected.list@example.com insiders_only

/etc/postfix/insiders:
allowed.user@example.com OK
another.allowed.user@example.com OK
Run Code Online (Sandbox Code Playgroud)

这给出:

fatal: parameter "smtpd_recipient_restrictions": specify at least one working instance of: check_relay_domains, reject_unauth_destination, reject, defer or defer_if_permit
Run Code Online (Sandbox Code Playgroud)

我愿意接受任何建议。它不必是 Postfix。它可以是 procmail 或任何其他标准解决方案。

注意:收件人是一个邮件列表,因此在系统帐户上没有用户帐户。因此,任何解决方案都必须在没有帐户的情况下工作。

当前邮件列表实现

/etc/postfix/virtual:
protected.list@example.com user1@example.com, user2.example.com, ...
Run Code Online (Sandbox Code Playgroud)

postfix procmail

6
推荐指数
1
解决办法
3533
查看次数

如何创建检查标题和正文的 Procmail 过滤器

我正在尝试基于所有 From、Subject 和正文中的字符串创建 Procmail 规则:

:0 B:
* ^From:.*root@example.com.*
* ^Subject:.*fixed string in the subject line.*
* .*fixed string in the body.*
/dev/null
Run Code Online (Sandbox Code Playgroud)

我正在尝试删除一个长期存在问题的邮件源,其唯一安全的选择是检查所有这三个。

我在这里做错了什么?想必这跟B国旗有关系吧?

email procmail

6
推荐指数
1
解决办法
6122
查看次数

procmail 配方是否有交流发电机“或”运算符?

鉴于以下 procmail 配方:

:0:
* ^Subject:.*viagra.*
* ^From:.*viagra.*
/dev/null
Run Code Online (Sandbox Code Playgroud)

Procmail 只会删除来自伟哥且主题中包含伟哥的电子邮件。如果任一匹配项为真,是否可以应用过滤器?

解决方案最好不要使用正则表达式(regex1|regex2)操作,但如果这是唯一的解决方案,那么请说出来。

regular-expression procmail

5
推荐指数
1
解决办法
2565
查看次数

Procmail:拒绝“/etc/procmailrcs/default.rc”的特殊权限

我正在尝试设置 postfix、dovecot 和 procmail 以与虚拟用户一起工作。最后,我希望拥有虚拟用户以及添加规则以对传入规则进行排序的可能性。最后,我需要 procmail(对吧?)。

当我向我的服务器发送电子邮件时,我没有在我的 Maildir 中收到它,并在 mail.log 中看到:

Jun 17 21:01:03 cs postfix/smtpd[24811]: connect from dub0-omc2-s13.dub0.hotmail.com[157.55.1.152]
Jun 17 21:01:03 cs postfix/smtpd[24811]: D8C9F44D88: client=dub0-omc2-s13.dub0.hotmail.com[157.55.1.152]
Jun 17 21:01:03 cs postfix/cleanup[24816]: D8C9F44D88: message-id=<DUB115-W85D8D79486AEC1D4346693C0830@phx.gbl>
Jun 17 21:01:04 cs postfix/qmgr[24806]: D8C9F44D88: from=<my-test-email>, size=1617, nrcpt=1 (queue active)
Jun 17 21:01:04 cs procmail[24818]: Denying special privileges for "/etc/procmailrcs/default.rc"
Jun 17 21:01:04 cs postfix/smtpd[24811]: disconnect from dub0-omc2-s13.dub0.hotmail.com[157.55.1.152]
Jun 17 21:01:04 cs postfix/pipe[24817]: D8C9F44D88: to=<my-virtual-email>, relay=virtualprocmail, delay=0.18, delays=0.15/0/0/0.02, dsn=2.0.0, status=sent (delivered via virtualprocmail service)
Jun 17 …
Run Code Online (Sandbox Code Playgroud)

ubuntu permissions email postfix procmail

5
推荐指数
1
解决办法
1644
查看次数

如何从脚本中的“邮件”中获取最旧的未读邮件?

在我现在尝试完成编写的脚本中,我需要从当前用户的邮箱中获取最旧的未读邮件(具体来说,我需要此项目的主题行)。

提取最旧的消息后,我还需要将其转发给其他用户以进行存档。

如何在 bash 或 Python 中提取该信息?

使用将主题行提取到文件中然后转发邮件,只需要脚本处理文件会更好吗?如果是这样,我该怎么做呢?

bash python procmail mail-command

5
推荐指数
1
解决办法
1285
查看次数