首页
运维教程
Linux基础
系统服务
系统架构
数据库
shell脚本
虚拟化
大数据
DevOps
企业案例
运维开发
python
go语言
运维安全
行业资讯
网络基础
系统安全
运维面试
学习路线
学习方法
面试题库
职场解惑
软件
运维软件
办公软件
书籍资源
技术陪跑营
重要信息
首页 运维教程Linux基础【Linux】sudo分权管理实战

【Linux】sudo分权管理实战

前言

我们在工作中经常使用普通用户,要使用root权限的时候,使用sudo来让普通用户拥有执行root命令的权限。 今天我们就来聊聊sudo的那些事

sudo 作用

sudo是linux下常用的允许普通用户使用超级用户权限的工具,允许系统管理员让普通用户执行一些或者全部的root命令,如halt,reboot,su等等。这样不仅减少了root用户的登陆和管理时间,同样也提高了安全性。

特点:
1. sudo能够限制用户知在某台机器上运行某些命令
2. sudo提供了丰富的日志,详细的记录了每个用户做了什么。
3. sudo的配置文件在/etc/sudoers 下,属性必须为0440

安装与设置

一般sudo命令是默认安装的,如果你的机器里没有,可以使用命令 yum install sudo 来安装

[root@gaosh-64 ~]# yum install sudo

我们来看一下配置文件:

在这里插入图片描述
在上图root下面添加一行 ,给gaosh用户加权限

[root@gaosh-64 ~]# vim /etc/sudoers
gaosh   ALL=(ALL)       ALL

这里表示所有命令的权限,
如果换种写法
gaosh ALL=(ALL) /usr/sbin/useradd 表示普通用户执行时候需要使用全路径
gaosh ALL=(root) /usr/bin/passwd [a-zA-Z]*,! /usr/bin/passwd root # gaosh可以使用root的身份更改密码,但不允许修改root的密码

测试

[root@gaosh-64 ~]# useradd gaosh   ## 创建用户
[root@gaosh-64 ~]# passwd gaosh
[root@gaosh-64 ~]# ssh gaosh@127.0.0.1  ### 登陆
[gaosh@gaosh-64 ~]whoami 
gaosh

[gaosh@gaosh-64 ~] whoami
gaosh
[gaosh@gaosh-64 ~]cat /etc/shadow  ### 查看密码文件
cat: /etc/shadow: 权限不够
[gaosh@gaosh-64 ~] sudo cat /etc/shadow
[sudo] gaosh 的密码:
root:6f2KQZZx2$gVznwJlWK/0T4SI/sH/GOg0IPpYw97hqXuKZCPxxhi2oUWgO0xIco2XCukVI2.kdKvCA//zDbbKNfrC4SM7Mv/:18466:0:99999:7:::

使用sudo,可以看到输入密码之后,就能查看/etc/shadow了

注意事项

我们在上面修改 /etc/sudoers 直接强制修改是可以的,有时候我们也可以先给与写权限,然后在修改

chmod u-x /etc/sudoers

但是这种方法给了权限之后,不要忘了再把权限去掉

chmod u-w /etc/sudoers

查看日志文件

[root@gaosh-64 ~]# tail /var/log/secure ## 查看日志的后十行

在这里插入图片描述
可以看到刚刚执行的命令,已经使用root的情况。

常用参数

|参数|含义
|–|–|
V |显示版本号信息
h |显示版本编号及指令的使用方式说明
l|显示出自己的权限
v|设置询问密码的时间
s|执行环境变数中的shell中所指定的shell,一般指的是passwd里指定的shell

总结

sudo的使用相对简单,我们在工作中主要是对用户和用户的权限做把控,权限管理是运维安全的第一步。

扫码关注下方公众号《极客运维之家》:

本文链接:http://www.geekyunwei.com/1883.html

网友评论comments

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

暂无评论

Copyright © 2021 极客运维 公众号《极客运维之家》
扫二维码
扫二维码
返回顶部