如何使用动态用户和套接字激活来获取不同的 UID?

如何使用动态用户和套接字激活来获取不同的 UID?

我正在关注使用 systemd 动态用户发布并创建waldo.socketwaldo.service

这是我的waldo.socket

[Socket]
ListenStream=2048
Accept=yes

以及相应的[email protected]

[Service]
ExecStart=-sleep 300
DynamicUser=yes

它工作得很好,但我发现它们sleep 300都是使用相同的 UID 启动的。

$ ps fax -o uid,pid,cmd | grep sleep
61647   87279 sleep 300
61647   87282 sleep 300
61647   87285 sleep 300

我希望该服务的每个实例都使用不同的 UID,正如该文章中所暗示的那样

通过将动态用户 ID 与套接字激活相结合,您可以轻松实现一个系统,其中每个传入连接都由一个流程实例提供服务,该流程实例在其自己的沙箱中作为不同的、新鲜的、新分配的 UID 运行。

我究竟做错了什么 ?

相关内容