systemd 服务加固生成器

勾选你想要的加固项,得到一份可直接粘贴的 systemd unit 文件——每一项旁边都写着它的代价。全部在浏览器本地生成。

预设:

启用的加固项

生成的 unit 文件

注意:这不是“越严越好”。每一条都有代价,代价写在每一项下面。先加固,再跑一次真实负载,看看它有没有被挡住。

为什么"代价"比指令本身更重要

抄一份加固指令清单很容易;知道哪一条会在凌晨三点把你的服务弄坏,不容易。 上面每一项都写明了它限制什么、以及它拿走了什么——私有 /dev 意味着没有 GPU,MemoryDenyWriteExecute 意味着没有 JIT,RestrictNamespaces 意味着所有跑容器的服务直接失效。

真正有效的流程是:先开,再跑一次真实负载,然后读 journal。被拦下的系统调用配合SystemCallErrorNumber=EPERM 会表现为权限错误而不是崩溃——二分排查时这正是你要的。

相关阅读:systemd 加固、systemd unit 手册、Linux capabilities、容器里的 seccomp。

上面的输出用 systemd 自己的工具验证过。对默认预设和"全选"预设跑systemd-analyze verify,它只报一件事——Command /usr/local/bin/<name> is not executable——因为这是模板,那个路径该由你填。没有任何未知或格式错误的指令。