假设你在只有自己使用的计算机上运行 linux 系统,比如在笔记本电脑上,在每次调用sudo时需要输入密码,长期下来就会觉得很乏味。因此,在本指南中,我们将描述如何配置 sudo 命令在运行时而不输入密码。

如何在 Linux 中不输入密码运行 sudo 命令

此设置在 /etc/sudoers文件中完成,这是使用 sudo 命令的默认安全策略;在用户权限指定部分。

重要:在sudeors文件中,默认打开的 authenticate参数用于验证目的。如果设置了它,用户必须通过密码(或其他身份验证方法)进行身份验证,然后才能使用sudo运行命令。

但是,可以使用NOPASSWD(当用户调用 “sudo” 命令时不需要密码)标记来覆盖此默认值。

配置用户权限的语法如下:

  1. user_list host_list=effective_user_list tag_list command_list
    

    登录后复制

其中:

  1. user_list – 用户列表或已经设置的用户别名。
  2. host_list – 主机列表或用户可以在其上运行 sudo 的主机别名。
  3. effective_user_list – 以该用户或别名运行的用户列表
  4. tag_list – 标签列表,如 NOPASSWD。
  5. command_list – 用户使用sudo 运行的命令或命令别名列表。

要允许用户(下面的示例中的 aaronkilik)使用 sudo 不输入密码即可运行所有命令,请打开 sudoers 文件:

  1. $ sudo visudo
    

    登录后复制

添加下面的行:

  1. aaronkilik ALL=(ALL) NOPASSWD: ALL
    

    登录后复制

对于组而言,在组名前面使用 % 字符;这意味着 sys 组的所有成员都可以不用密码使用 sudo。

  1. %sys ALL=(ALL) NOPASSWD: ALL
    

    登录后复制

要允许用户不用密码使用 sudo 运行指定命令(/bin/kill),添加下面的行:

  1. aaronkilik ALL=(ALL) NOPASSWD: /bin/kill
    

    登录后复制

下面的行会让 sys组成员在使用 sudo 运行命令:/bin/kill、/bin/rm 时不用输入密码:

  1. %sys ALL=(ALL) NOPASSWD: /bin/kill, /bin/rm
    

    登录后复制

以上就是如何在 Linux 中不输入密码运行 sudo 命令的详细内容,更多请关注小闻网其它相关文章!

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。