检测 Linux/Ubuntu -> Lamp/Apache 或 Nginx -> PHP - 检测外拨电话

检测 Linux/Ubuntu -> Lamp/Apache 或 Nginx -> PHP - 检测外拨电话

我在 DO(Digitalocean,VPS - 通过 shell 自行管理)上安装了带有 LAMP 的 Ubuntu 服务器,主要运行 Wordpess(php)。

现在,您推荐哪些方法来检测脚本/插件对外部网站的调用/扩展(例如自动更新、crons、定时脚本、漏洞扩展)?

另外,对于传出的“Php 邮件”或“smtp 到达”是否有需要同等检查的内容?

谢谢任何提示...:)

答案1

(不知道“at DO”是什么意思 - 假设这是在您无法控制的网络中运行的独立主机,并且您没有说为什么要观察这一点 - 我假设这是因为您想看看您的服务是否正在泄露数据)。

虽然查看存在哪些合法流量是保护服务器的起点,但如果您想保护服务器,则需要能够将这些流量列入白名单。

正确的方法是阻止防火墙上的直接出站流量(即离开主机的、状态为 NEW 的 TCP 数据包),并配置代理(建议使用 squid)来记录流量并执行任何后续策略。

使用单个主机比在网络上稍微复杂一些。如果您没有物理访问权限,则非常棘手。您需要使用网络命名空间来限制(或允许)不同应用程序的新连接。

Wordpress 的问题始终是插件 - 但任何编写良好的插件都应该使用配置代理

Apt 需要被告知使用代理

对于其他一切,配置透明代理在端口 80 和 443 上。使用 HTTPS 的任何操作都会出现问题。

为了让 squid 能够连接,你应该用一个脚本替换 systemd 单元文件中现有的 ExecStart 行,该脚本会创建一个新的网络命名空间并删除防火墙规则。

对于电子邮件,如果你还没有运行本地中继(例如 postfix),堵塞交通通过 squid 或安装本地 MTA 作为中继(您还需要在修改后的 netns 中运行它)。

我不知道 ufw 是否足够智能,能够理解在同一主机上运行的多个网络命名空间——我建议只使用 iptables 来管理防火墙。

请务必小心配置您的代理/代理服务器,以仅允许来自本地主机的入站连接 - 这可以在修改后的 netns iptables 和/或服务器配置中进行设置。

最后,squid 上的默认配置应该开始记录它看到的所有流量。您需要对配置进行进一步更改以强制实施白名单。

相关内容