SELinux 正在阻止从 Amavis 回自身的连接:无法进出?

SELinux 正在阻止从 Amavis 回自身的连接:无法进出?

在这里运行新的 CentOS8 安装,MTA 是连接了 Amavis 的 Postfix。我想让 Amavis 在(内部)DKIM 签名后将来自 ORIGINATING 的消息(从端口 587/Postfix 通过 10026/Amavis 传入的提交)注入到 Amavis(端口 10024) 。但是端口 10024 已被分配用于侦听来自 25/Postfix 的传入 smtp 连接,因此我无法将其添加为 SELinux 配置中的发送端口。

消息流:

  • 25/smtp -> 后缀 -> smtp-amavis/10024
  • 10024 -> 阿马维斯:扫描 -> 10025
  • 10025 -> 后缀 -> 投递
  • 587/提交 -> Postfix -> smtp-amavis/10026
  • 10026 -> Amavis 起源:扫描和 DKIM 签名 -> smtp-amavis/10024

我遇到的问题是 SELinux 不允许我将来自最后一个流的消息反馈到端口 10024 上的 smtp-amavis(Amavis 到 Amavis),因为该端口已被分配用于接收:

[root@services amavisd]# semanage port -l | grep 1002
amavisd_recv_port_t            tcp      10026, 10024
amavisd_send_port_t            tcp      10027, 10025
spamd_port_t                   tcp      783, 10026, 10027

有趣的是,当我分别添加到 amavisd_recv_port_t 和 amavisd_send_port_t 时,SELinux 并没有抱怨端口 10026、10027 已被分配给 spamd:

[root@services amavisd]# semanage port -lC
SELinux Port Type              Proto    Port Number
amavisd_recv_port_t            tcp      10026
amavisd_send_port_t            tcp      10027

我怎样才能解决这个问题?因为 SELinux 也不允许我添加 10024 作为发送端口:

[root@services amavisd]# semanage port -a -t amavisd_send_port_t -p tcp 10024
ValueError: Port tcp/10024 already defined

或者我完全走错了路,并且提交的消息根本不应该通过端口 10024 反馈到 Amavis(这使得这是一个 Amavis 而不是 SELinux 问题)?对于最初的 Amavis 配置,将提交的消息转发到端口 10027,以便由 OpenDKIM 进行(外部)DKIM 签名,如下所示:

# forward to a smtpd service providing DKIM signing service
#forward_method => 'smtp:[127.0.0.1]:10027',
forward_method => 'smtp:[127.0.0.1]:10024',

所以最后一个流程原来是:

  • 10026 -> Amavis 发起:扫描 -> OpenDKIM@10027:签名 -> 交付

但是 OpenDKIM 还不能用于 CentOS8(过去是通过 EPEL 存储库),Amavis 现在支持我正在尝试使用的内部 DKIM 签名服务。

所以我认为有两种出路:

  • 配置 SELinux,以便它可以将 DKIM 签名的消息从提交流反馈回基本 smtp 流(假设这种有点循环的设置有效)
  • 保留原始的 Amavis 配置,这意味着端口 10027 后面必须有一个服务来传递传出(即提交)消息

该走哪条路,又该怎么做?

答案1

结果我发现了最明显的解决方案(遵循错误的在线配方):将 Amavis ORIGINATING 流反馈回端口 10025,以便由 Postfix 交付(从而在 Amavis 单独处理后汇集 25/smtp 和 587/submission 流)。这也规避了 SELinux 问题,因为不再需要将来自 Amavis 的消息反馈回自身。

所以整个方案现在看起来像这样:

  • 25/smtp -> 后缀 -> smtp-amavis/10024
  • 10024 -> 阿马维斯:扫描 -> 10025
  • 10025 -> 后缀 -> 投递
  • 587/提交 -> Postfix -> smtp-amavis/10026
  • 10026 -> Amavis 起源:扫描和 DKIM 签名 -> 10025

相关内容