Shell命令-用户用户组管理之visudo、sudo
文件及内容处理 - visudo、sudo
1. visudo:编辑/etc/sudoers文件的专属命令
visudo命令的功能说明
visudo
命令专门用来编辑/etc/sudoers
这个文件的。
visudo命令的语法格式
visudo
[-chqsV] [-f sudoers]
visudo命令的常用参数说明:
visudo
参数不多,表1为visudo
命令的参数及说明:
表1:
visudo
命令的参数及说明
参数选项 | 解释说明 |
---|---|
-c | 手动执行语法检查 |
visudo命令的实践操作
范例1: 执行
visudo
对普通用户oldbo
y和oldgirl
授权
[root@oldboyedu ~]# visudo #作用就是相当于 vim /etc/sudoers 一样
100 root ALL=(ALL) ALL
101 oldboy ALL=(ALL) NOPASSWD: ALL #在100行左右添加
102 oldgirl ALL=(ALL) NOPASSWD: /usr/bin/useradd,/usr/bin/userdel #添加的内容
上面的格式简单介绍
待授权的用户或组 | 机器=(授权角色) | 可以执行的命令 |
---|---|---|
user | MACHINE= | COMMANDS |
oldboy | ALL=(ALL) | ALL |
提示:每次执行
visudo
并修改内容后,需要语法检查:
[root@oldboyedu ~]# visudo -c
/etc/sudoers: parsed OK
2. sudo:以另外一个用户身份(默认root用户)执行事先在sudoers文件允许的命令
sudo命令的功能说明
sudo
命令以系统管理者的身份执行指令,也就是说,经由sudo
所执行的指令就好像是root
亲自执行。使用权限:在/etc/sudoers
中有出现的使用者。
sudo命令的语法格式
sudo
-l [-AknS] [-a type] [-g group] [-h host] [-p prompt] [-U user] [-u user] [command]
sudo
-v [-AknS] [-a type] [-g group] [-h host] [-p prompt] [-u user]
sudo命令的常用参数说明:
sudo
参数不多,表1为sudo
命令的参数及说明:
表1:
sudo
命令的参数及说明
参数选项 | 解释说明 |
---|---|
-V | 显示版本编号 |
-h | 会显示版本编号及指令的使用方式说明 |
-l | 显示出自己(执行 sudo 的使用者)的权限 |
-v | 因为 sudo 在第一次执行时或是在 N 分钟内没有执行(N 预设为五)会问密码,这个参数是重新做一次确认,如果超过 N 分钟,也会问密码 |
-k | 将会强迫使用者在下一次执行 sudo 时问密码(不论有没有超过 N 分钟) |
-b | 将要执行的指令放在背景执行 |
-p prompt | 可以更改问密码的提示语,其中 %u 会代换为使用者的帐号名称, %h 会显示主机名称 |
-u username/#uid | 不加此参数,代表要以 root 的身份执行指令,而加了此参数,可以以 username 的身份执行指令(#uid 为该 username 的使用者号码) |
-s | 执行环境变数中的 SHELL 所指定的 shell ,或是 /etc/passwd 里所指定的 shell |
-H | 将环境变数中的 HOME (家目录)指定为要变更身份的使用者家目录(如不加 -u 参数就是系统管理者 root ) |
command | 要以系统管理者身份(或以 -u 更改为其他人)执行的指令 |
sudo命令的实践操作
范例1: 查看用户被
visudo
授权后拥有的权限
[root@db01 ~]# whoami #查看当前用户
root
[root@db01 ~]# su - oldboy #切换 oldboy 用户
上一次登录:三 6月 12 10:13:34 CST 2019从 10.0.0.1pts/0 上
[oldboy@db01 ~]$ whoami #用户已改变
oldboy
[oldboy@db01 ~]$ ls /root #查看 root 用户家目录,权限不够
ls: 无法打开目录/root: 权限不够
[oldboy@db01 ~]$ sudo ls /root #加 sudo 就 ok 了,是因为前面已经配置了 visudo
test
范例2: 查看
oldboy
用户授权的结果情况:
[oldboy@db01 ~]$ sudo -l
匹配 %2$s 上 %1$s 的默认条目:
!visiblepw, always_set_home, match_group_by_gid, always_query_group_plugin, env_reset, env_keep="COLORS DISPLAY HOSTNAME HISTSIZE KDEDIR
LS_COLORS", env_keep+="MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE", env_keep+="LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT
LC_MESSAGES", env_keep+="LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE", env_keep+="LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET
XAUTHORITY", secure_path=/sbin\:/bin\:/usr/sbin\:/usr/bin
用户 oldboy 可以在 db01 上运行以下命令:
(ALL) NOPASSWD: ALL #ALL 代表所有,相当于与 root 相同权限了
今天就写到这里,有什么疑问或出现什么错误,随时欢迎大神们发表评论指点迷津
Shell命令-用户用户组管理之visudo、sudo的更多相关文章
- Shell命令-用户用户组管理之id、su
文件及内容处理 - id.su 1. id:查看用户的uid,gid及归属的用户组 id命令的功能说明 id 命令用于显示用户的 ID,以及所属群组的 ID.id 会显示用户以及所属群组的实际与有效I ...
- Shell命令-用户用户组管理之useradd、usermod
文件及内容处理 - useradd.usermod 1. useradd:添加用户 useradd命令的功能说明 useradd 命令用于建立用户帐号.useradd 可用来建立用户帐号.帐号建好之后 ...
- Shell命令-用户用户组管理之userdel、groupadd
文件及内容处理 - userdel.groupadd 1. userdel:删除用户 userdel命令的功能说明 userdel 命令用于删除用户帐号.userdel 可删除用户帐号与相关的文件.若 ...
- Shell命令-用户用户组管理之passwd、chage
文件及内容处理 - passwd.chage 1. passwd:修改用户密码 passwd命令的功能说明 passwd命令用来更改使用者的密码 passwd命令的语法格式 passwd [-k] [ ...
- 数据仓库003 - 复习Linux shell命令 - 用户用户组 sudo 权限 du-sh find
一.用户用户组 [root@localhost ~]# ll /usr/sbin/user* -rwxr-x--- root root -- /usr/sbin/useradd -rwxr-x--- ...
- Linux命令--用户用户组管理
新增用户组 : groupadd groupadd [-g GID] 组名 不加-g 则按照系统默认的gid创建组,跟用户一样,gid也是从500开始的 修改用户组信息 : groupmod grou ...
- Linux学习之用户管理命令与用户组管理命令(十五)
Linux学习之用户管理命令与用户组管理命令 目录 用户管理命令 用户添加命令useradd 修改用户密码passwd 修改用户信息usermod 修改用户密码状态chage 删除用户userdel ...
- linux笔记:用户管理命令和用户组管理命令
用户管理命令 命令名称:useradd功能:添加用户(添加完后不能立即使用,必须用passwd修改用户密码后才能使用)用法:useradd [选项] 用户名选项参数:-u 手工指定用户的UID-d 手 ...
- linux下用户管理命令、用户组管理命令
useradd 添加新用户 1.基本语法 useradd 用户名 (功能描述:添加新用户) useradd -g 组名 用户名 (功能描述:添加新用户到某 ...
随机推荐
- 转战物联网·基础篇06-深入理解MQTT协议之基本术语
通过上一节我们对MQTT协议已经有了初步的印象,这一节我们开始深入的理解一下MQTT协议,介绍常用的MQTT 3.1.1版本,5.0版本后面指介绍新增部分即可.这一节我们先介绍MQTT里常用的术语 ...
- linux相关(一)
一.调整xshell终端显示的最大行数 1.文件 -> 属性 -> 终端,如下图 2.调整缓冲区大小的行数,确定即可,如下图: 注意:此方法只是修改了连接该主机时的显示行数,其他主机的还是 ...
- FreeRTOS操作系统,在按键中断函数中恢复被挂起的任务,程序卡死的原因和解决办法
出现问题场景: 作为刚接触FreeRTOS实时操作系统的菜鸟,我在练习一个程序功能:按键3按下,将LED闪烁的任务挂起:按键4按下,将LED闪烁的任务恢复到就绪.按键使用外部中断.恢复就绪 ...
- JVM 类的加载机制
在对类的实例化之前.JVM 一般会先进行初始化 主要经过如下几个阶段: 1.加载 类加载的第一阶段,类加载时机有两个: 1.预加载:当虚拟机启动时,会预加载 ...
- CSP-S需备模板大全
CSP-S需备模板大全 谨以此文祝愿自己\(CSP-S\,\,2019\,\,\color{red}{RP++!!}\) 算法 二分 while(l<r) { int mid=(l+r+1)&g ...
- os 和 sys 的模块使用方法和模块
os 的模块 方法 os.remove()删除文件 os.rename()重命名文件 os.walk()生成目录树下的所有文件名 os.chdir()改变目录 os.mkdir/maked ...
- TypeScript + Webpack 4 开发环境搭建(转)
前段时间接触到 Microsoft 的 Microsoft.AspNetCore.SpaTemplates 模板,生成的项目使用的默认语言是 TypeScript,虽然以前在此之前并没有用过TypeS ...
- manage.py相关命令
python manage.py makemigrations <app_name> 在对应app下的migrations目录下,生成XXXX_initial.py文件,该XXXX_ini ...
- IT兄弟连 Java语法教程 三目运算符
Java提供了一个特殊的三目(三个分支)运算符,它可以替代特定类型的if-then-else语句结构.这个运算符是“?”乍一看可能有一些困惑,但一旦理解“?”运算符,就可以高效地使用它.“?”运算符的 ...
- HTTP系列之Referer和Referrer policy简介
目录 @ 1.前言摘要 在csdn网站随便抓个链接来看看: Referer参数: referrer policy是unsafe url的,ok,下面介绍一下Referer和referrer polic ...