我有带按钮的网页,当用户点击按钮时,服务器上的脚本restart.sh被执行。此脚本包含:
#!/bin/bash
systemctl restart rspamd.service单击按钮后,将执行restart.sh,但rspamd.service不会重新启动:“未能重新启动rspamd.service:访问拒绝”,因为脚本是通过单击网页上的按钮来执行的,在服务器上运行该脚本的真正用户是www-data。我试图将suid位设置为将脚本作为root运行,但它不起作用。如何将rspamd.service重新启动为www-data用户?
发布于 2022-05-04 07:55:32
用苏多解决了。我以前试过,但写错了顺序。使用visudo编辑sudoers并将其添加到文件末尾:
www-data ALL = NOPASSWD: /bin/systemctl restart rspamd.service然后我就可以运行sudo systemctl restart rspamd.service了,一切都很顺利。谢谢。
https://serverfault.com/questions/1099803
复制相似问题