Java教程

sudo提权

本文主要是介绍sudo提权,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

sudo用户提权

  • 管理员提前为用户设置执行权限许可
  • 被授权用户有权执行授权命令
  • 配置文件:/etc/sudoers
  • 命令格式:sudo 特权命令
#修改/etc/sudoers文件,为lisi用户授予相关脚本的执行权限,允许通过systemctl工具来管理系统服务,修改/etc/sudoers配置文件可以用vim编辑文件,或者使用visudo命令修改
[root@master ~]# visudo
.. ..
root    ALL=(ALL)       ALL
lisi    ALL=(root)      /bin/systemctl
解释:授权lisi用户以root身份执行systemctl命令

#切换lisi用户验证sudo权限
[root@master ~]# su - lisi
[lisi@master ~]$ sudo -l
.. ..
用户 lisi 可以在 master 上运行以下命令:
    (root) /bin/systemctl
    
#通过sudo启动服务
[lisi@master ~]$ sudo systemctl start httpd
[lisi@master ~]$ sudo systemctl status httpd
[lisi@master ~]$ sudo systemctl stop httpd

#为lisi用户添加sudo权限,允许lisi用户可以创键用户,修改用户密码
[root@master ~]# visudo
.. ..
lisi    ALL=(root)      /bin/systemctl,/sbin/useradd,/bin/passwd,!/bin/passwd root   // ! 取反

#切换lisi用户验证sudo权限
[lisi@master ~]$ sudo useradd haha
[lisi@master ~]$ id haha
uid=1001(haha) gid=1001(haha) 组=1001(haha)

#修改haha用户密码
[lisi@master ~]$ sudo passwd haha 
更改用户 haha 的密码 。
新的 密码:123
无效的密码: 密码少于 8 个字符
重新输入新的 密码:123
passwd:所有的身份验证令牌已经成功更新。

#为sudo机制启用日志记录,以便跟踪sudo执行操作
[root@master ~]# visudo
.. ..

Defaults logfile="/var/log/sudo.log"   #手动添加

.. ..

#普通用户执行sudo命令
[lisi@master ~]$ sudo systemctl start httpd

#查看日志是否记录
[root@master ~]# cat /var/log/sudo.log 
Sep 24 12:57:09 : lisi : TTY=pts/1 ; PWD=/home/lisi ; USER=root ;
    COMMAND=/bin/systemctl start httpd
这篇关于sudo提权的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!