linux 普通用户sudo 免密码 以及sudoers 配置详解

本文详细介绍了如何在Linux系统中为普通用户赋予sudo权限并实现免密码操作,讲解了/etc/sudoers文件的配置,包括指定命令路径、使用通配符以及编辑sudoers文件的注意事项。此外,还提及了如何通过visudo命令安全地编辑sudoers文件,以及通过调整sudo会话时间来控制用户重新输入密码的时间间隔。
摘要由CSDN通过智能技术生成

可以在 需要密码的地方提前设置密码,但不安全

如 echo $pw | sudo -S xxx 大写的S

第二种:

/etc/sudoers中 

username  ALL=NOPASSWD:ALL

如果不放心,可以只指定 一部分路径的权限

username  ALL=NOPASSWD:/usr/bin: 等等

此方法就是添加了一个免密的sudo 用户

如果想组用的话 %组名

 

或者加入某个组内,也不用输入sudo了 比如docker

cat /etc/group | grep docker

没有的话新建一个组 sudo groupadd docker

sudo gpasswd -a username docker

restart

 

 

 

简单来说

 

/etc/sudoers文件进行编辑的代码公式可以概括为: 以sudo切换  此用户

授权用户/组 主机=[(切换到哪些用户或组)] [是否需要输入密码验证] 命令1,命令2,...

凡是[ ]中的内容, 都能省略; 命令和命令之间用,号分隔;

组名前面需加%

 用户/组(此电脑的用户或组) 从哪个主机  = [(切换到哪个用户:切换到哪个组)]  [是否输入密码可选值NOPASSWD:] 命令1,命令2(为用sudo切换到是否需要密码执行命令1 命令2)

 

注意NOPASSWD带着:  命令1 2之间以 ,分割 且 NOPASSWD 只对命令1有效

ALL表示所有 默认切换到(root:root)需加括号

from https://segmentfault.com/a/1190000007394449

 

Linux是多用户多任务的操作系统, 共享该系统的用户往往不只一个。
出于安全性考虑, 有必要通过useradd创建一些非root用户, 只让它们拥有不完全的权限; 如有必要,再来提升权限执行。

sudo就是来解决这个需求的: 这些非root用户不需要知道root的密码,就可以提权到root,执行一些root才能执行的命令。

执行sudo -u <用户名> <命令>, 将允许当前用户,提权到<用户名>的身份,再执行后面的<命令>, 即使<命令>原本需要root权限。
提权到<用户名>身份时,是以<用户名>的身份来执行命令的,因此创建的文

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值