如果我有以下 sudoers 条目
usera ALL=(userb) NOPASSWD: /home/userc/bin/executable-file
usera ALL=(userb) NOPASSWD: /home/userc/bin/link-to-another-executable-file
当我以 usera 身份登录并尝试运行以下命令时,它可以工作
sudo -u userb /home/userc/bin/executable-file
但不是下面的一个。
sudo -u userb /home/userc/bin/link-to-another-executable-file
Sorry, user usera is not allowed to execute '/home/userc/bin/link-to-another-executable-file' as userb on hostname.
有任何想法吗?
答案1
当您说link-to-another-executable-file
我假设您的意思是符号链接(否则它只是一个可执行文件)。
我怀疑 sudo 正在将权限应用于符号链接的目标并失败,但将其报告为符号链接。它报告符号链接是因为这就是您尝试执行的,因此消息并不神秘。
如果是这种情况,那么 sudo 所做的就是正确的:保护您免受符号链接另一端的未知威胁。您可以尝试在 中列出符号链接目标(即真正的可执行文件)sudoers
。