中国领先的IT技术网站
|
|

在Linux中运行sudo命令不需要密码

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

作者:佚名来源:嵌入式Linux中文站|2017-09-19 15:40

沙龙活动 | 去哪儿、陌陌、ThoughtWorks在自动化运维中的实践!10.28不见不散!


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

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

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

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

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

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 

添加下面的行:

aaronkilik ALL=(ALL) NOPASSWD: ALL

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

%sys ALL=(ALL) NOPASSWD: ALL

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

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

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

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

不用密码运行 sudo

在本篇中,我们讨论了如何配置 sudo 命令来不用输入密码运行。不要忘记在评论栏中给我们提供你关于这份指导的想法和其他对于 Linux 系统管理员有用的 sudoers 配置。

【编辑推荐】

  1. Linux下使用autoconf和automake生成Makefile
  2. 漫谈传统的Linux初始化系统的运行级别
  3. Sublime Text 3.0正式发布!提供Linux软件包仓库支持
  4. 十二条Linux运维面试必备经典笔试/面试题,来挑战一下吧!
  5. 如何在Windows上运行Linux容器
【责任编辑:庞桂玉 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

Cisco网络技术教程(第2版)

本书作为思科认证体系中的入门级教材,主要讲述了网络的基本知识和思科设备的基本命令,以及路由、交换等深层次网络知识的入门知识,其体系...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊
× Python最火的编程语言