1

我试图为名为“invitado”的用户设置权限,只是为一些二进制文件: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!)

有什么建议么???提前致谢!

4

1 回答 1

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.

于 2011-04-27T19:21:06.923 回答