允许来宾用户 运行 具有提升权限的脚本
Allowing a guest user to run a script with elevated privileges
使用 ubuntu 16.04LTS
我试图让没有 sudo 权限的来宾用户在需要时通过执行一个简单的脚本重新加载 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)
我不想给我的来宾用户sudo权限,但为了重新加载nginx我通常需要使用sudo nginx -s reload
编辑:解决了我的问题 - 我试图通过脚本 运行 我的来宾用户需要的命令来考虑问题。也没有真正了解 /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
在我的编辑中 - 我试图通过脚本 运行 我的来宾用户需要的命令来考虑问题。也没有真正了解 /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
使用 ubuntu 16.04LTS
我试图让没有 sudo 权限的来宾用户在需要时通过执行一个简单的脚本重新加载 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)
我不想给我的来宾用户sudo权限,但为了重新加载nginx我通常需要使用sudo nginx -s reload
编辑:解决了我的问题 - 我试图通过脚本 运行 我的来宾用户需要的命令来考虑问题。也没有真正了解 /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
在我的编辑中 - 我试图通过脚本 运行 我的来宾用户需要的命令来考虑问题。也没有真正了解 /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