gpt4 book ai didi

ubuntu - 允许 guest 用户以提升的权限运行脚本

转载 作者:太空宇宙 更新时间:2023-11-03 17:09:43 25 4
gpt4 key购买 nike

使用 ubuntu 16.04LTS

我试图让没有 sudo 权限的 guest 用户在需要时通过执行一个简单的脚本来重新加载 nginx:

#!/bin/sh
nginx -s reload

具有权限 -r-xr-xr-x

并允许他们通过在 sudoers 文件中添加一行来做到这一点:

root  ALL=(ALL:ALL) ALL
guest ALL=NOPASSWD: /path/to/script.sh

这仍然给出权限被拒绝的错误。

nginx: [alert] could not open error log file: open()   "/usr/local/nginx/logs/error.log" failed (13: Permission denied)

我不想给我的 guest 用户 sudo 权限,但为了重新加载 nginx,我通常需要使用 sudo nginx -s reload

编辑:解决了我的问题 - 我试图通过脚本运行 guest 用户所需的命令,从而过度思考了这个问题。也没有真正了解/etc/sudoers 是如何工作的。该视频帮助很大:https://www.youtube.com/watch?v=YSSIm0g00m4

我以 root 身份创建了一个 sudoers.d 文件,visudo -f/etc/sudoers.d/guests,以正确地让我的客人对 nginx 和单独的 nginx 拥有 sudo 权力:

Cmnd_Alias NGINX = /usr/local/nginx/sbin/nginx
Cmnd_Alias GUESTS_CMND = NGINX
%guests ALL=GUESTS_CMND

最佳答案

在我的编辑中 - 我试图通过脚本运行 guest 用户所需的命令,从而过度思考了这个问题。也没有真正了解/etc/sudoers 是如何工作的。该视频帮助很大:https://www.youtube.com/watch?v=YSSIm0g00m4

我以 root 身份创建了一个 sudoers.d 文件,visudo -f/etc/sudoers.d/guests,以正确地赋予我的客人 sudo 对 nginx 和单独 nginx 的权力:

Cmnd_Alias NGINX = /usr/local/nginx/sbin/nginx
Cmnd_Alias GUESTS_CMND = NGINX
%guests ALL=GUESTS_CMND

关于ubuntu - 允许 guest 用户以提升的权限运行脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41835728/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com