小编Eri*_*ath的帖子

正确使用 SMTP“发件人”标头?

当有人发布新内容时,我们的 Web 应用程序会向人们发送电子邮件。发件人和收件人都已选择从我们的应用程序接收电子邮件。在准备这样的消息时,我们设置了以下 SMTP 标头:

发件人:author@example.com
收件人:收件人@example.com
发件人:webapp@mycompany.com

我们选择在 FROM 标头中使用作者的电子邮件地址,以尝试为收件人提供最佳体验;当他们在邮件客户端中看到消息时,作者很清楚。为了避免欺骗的出现,我们添加了 SENDER 标头(使用我们自己的公司电子邮件地址)以明确我们代表作者发送了邮件。阅读 RFC 822 和 2822 后,这似乎是发送方标头的预期用途。

大多数接收邮件的服务器似乎都能很好地处理这个问题;电子邮件消息正常传递(假设收件人邮箱存在,未超过配额等)。但是,当从域中的地址向同一域中的地址发送消息时,某些接收域会拒绝消息并给出如下响应:

571 不正确的 IP - psmtp(回复 RCPT TO 命令)

我认为这意味着接收服务器只看到 FROM 标头地址在它自己的域中,并且消息来自它认为没有授权为该域发送消息的服务器。换句话说,接收服务器忽略了 SENDER 标头。

我们有一个解决方法:webapp 保留了一个列表,这些域似乎忽略了 SENDER 标头,当 FROM 和 TO 标头都在这样的域中时,它会将 FROM 标头设置为我们自己的电子邮件地址。但是这个列表需要维护。

有没有更好的方法来实现所需的体验?我们希望成为网络的“好公民”,所有相关方——发送者和接收者——都希望参与并接收这些消息。一种替代方法是始终在 FROM 标题中使用我们公司的电子邮件地址,并将作者的姓名/地址放在主题前面,但这似乎有点笨拙。

smtp

21
推荐指数
2
解决办法
3万
查看次数

在 SELinux 中管理自定义端口的最佳方式

在 RHEL 6.2 上,我们在一台主机上使用 httpd 作为另一台主机上 Tomcat 的前端代理,我们还将 mod_status 配置为侦听非标准端口以向监控工具提供状态信息。因此,我们需要httpd 1)建立网络连接,2)监听非标准端口。

默认的目标策略(当前处于许可模式)仅允许 httpd 侦听已定义的端口列表 ( semanage port -l | grep http_port_t),而不允许 httpd 进行出站网络连接。 aureport -a当 httpd 尝试绑定到自定义状态端口以及尝试连接到其他主机上的 AJP 端口时,显示 AVC 拒绝。

我找到了两种解决方案,但一种似乎过于宽容,另一种过于脆弱(即可能在策略升级时中断)。

“广泛”解决方案

我曾经audit2allow生成一个本地策略源,然后checkmodule编译它,semodule_package生成一个策略包,并semanage开始执行它。然后我重新启动了 httpd,并确认没有生成 AVC 拒绝。audit2allow 生成的本地策略使用以下授权:

允许 httpd_t port_t:tcp_socket { name_bind name_connect };

它允许 httpd 绑定到任何端口(不仅仅是 http_port_t 中列出的端口),并连接到任何端口。这种方法的优点是它包含在本地策略中,并且不会在下一个yum update. 缺点是它授予了比必要更广泛的许可;httpd 可以绑定并连接到任何端口。

“窄”解决方案

绑定的替代方法是使用以下命令将我们的自定义端口添加到 http_port_t 列表:

semanage port -a -t http_port_t -p tcp (自定义端口号)

我知道我可以看到 http_port_t using …

selinux rhel6

7
推荐指数
1
解决办法
7326
查看次数

SELinux:按地址和端口限制 httpd 出站连接?

我们有一个多主机环境,一台主机上有 httpd,另一台主机上有一个应用程序服务器。我们想在 httpd 主机上使用 SELinux,默认的目标策略不会引起什么问题。但它确实阻止了 httpd 与应用服务器主机建立出站网络连接。

有一个 SELinux 布尔值httpd_can_network_connect,如果设置将允许无限制的出站连接,但我想找到一个更窄的解决方案。我想我可以通过定义一个新的端口类型列表来控制目标端口:

semanage port -a -t ajp_port_t -p tcp 9010

然后使用以下内容创建本地策略:

允许 httpd_t ajp_port_t:tcp_socket { name_connect };

如何控制目标地址?

selinux

3
推荐指数
1
解决办法
3879
查看次数

标签 统计

selinux ×2

rhel6 ×1

smtp ×1