我正在尝试设置GNU 阿努比斯充当某种代理来对来自服务的电子邮件进行签名/加密。该服务当前配置为使用我们的 SMTP 服务器发送电子邮件。想法是将服务指向 Anubis,然后将 Anubis 指向 SMTP 服务器。然后 Anubis 会在将消息发送到 SMTP 服务器之前对其进行签名/加密。
我设置了 Anubis,并作为初始测试,将其设置为修改主题行。这工作得很好。当我将其更改为签署电子邮件时,我开始在 Anubis 调试输出中收到一条错误消息。
这是 Anubis 配置:
#
# The "CONTROL" section.
# User configuration file.
#
---BEGIN CONTROL---
bind localhost:2525
remote-mta SMTP_SERVER_INFO
ssl-oneway yes
---END---
#
# The Rule System (The RULE section)
# User configuration file only. Examples:
#
---BEGIN RULE---
gpg-passphrase "test1234"
# Process the (E)SMTP commands.
if command["mail from"] ".*<?root@localhost>?"
STOP
fi
# Process a message header lines.
if header[From] ".*noreply.*"
# modify [Subject] "[Anubis Proxy] &" # This action works
gpg-sign default # This action has an error
fi
---END---
以下是与 GPG 相关的调试输出部分:
Protocol: OpenPGP
Executable: /usr/bin/gpg2
Version: 2.0.22
Required Version: 1.4.0
Protocol: CMS
Executable: /usr/bin/gpgsm
Version: 2.0.22
Required Version: 1.9.6
Protocol: GPGCONF
Executable: /usr/bin/gpgconf
Version: 2.0.22
Required Version: 2.0.4
Protocol: Assuan
Executable: /tmp/gpg-7KgHae/S.gpg-agent
Version: 1.0
Required Version: 1.0
[2319] GPGME: General error.
我确信 gpg 设置正确,因为它gpg --sign --armor
允许我从命令行签署一条消息(输入密码后)。
我做错了什么导致它不能正常工作?
更新
我应该提到,我从源代码(版本 4.2)编译了 Anubis,并且结果显示./configure
已启用 GPGME 支持。