我试图为名为'invitado'的用户设置权限,为某些二进制文件设置jus:wireshark,tcpdump和traceroute。我根据sudoers语法完成,我认为如下:
# /etc/sudoers
#
# This file MUST be edited with the 'visudo' command as root.
#
# See the man page for details on how to write a sudoers file.
#
Defaults env_reset
# Host alias specification
# User alias specification
# Cmnd alias specification
# User privilege specification
root ALL=(ALL) ALL
ldac ALL=(ALL) NOPASSWD: ALL
# Allow members of group sudo to execute any command
# (Note that later entries override this, so you might need to move
# it further down)
%sudo ALL=(ALL) ALL
#
#includedir /etc/sudoers.d
#Permiso de SUDO a guest de wireshark
invitado ALL=NOPASSWD : /usr/bin/aptitude/usr/bin/X11/wireshark
invitado ALL=NOPASSWD : /usr/bin/wireshark
invitado ALL=NOPASSWD : /usr/sbin/traceroute
invitado ALL=NOPASSWD : /usr/sbin/tcpdump
但是,我一直在获得相同的visudo错误输出:
>>> /etc/sudoers: syntax error near line 30 <<<
What now? Options are:
(e)dit sudoers file again
e(x)it without saving changes to sudoers file
(Q)uit and save changes to sudoers file (DANGER!)
任何建议???提前谢谢!
答案 0 :(得分:9)
尝试在NOPASSWD之后删除空格。此外,您可以将所有命令放在一行上。
invitado ALL = NOPASSWD: /usr/bin/aptitude, /usr/bin/X11/wireshark, /usr/bin/wireshark, /usr/sbin/traceroute, /usr/sbin/tcpdump
修改强>
另外,我认为/usr/bin/aptitude/usr/bin/X11/wireshark
可能是错误的。这应该是2个命令,/usr/bin/aptitude
和/usr/bin/X11/wireshark
。