美文网首页
作业-第05周--课堂-Day19-su、sudo、及visud

作业-第05周--课堂-Day19-su、sudo、及visud

作者: MineG | 来源:发表于2019-03-31 11:27 被阅读0次

Day19 课堂笔记

1. su:linux用户身份切换命令

su参数选项 注释说明
- 使用一个shell成为登录的shell
-c 切换到一个shell下,执行一个命令,然后退出所切换的用户环境
-m 切换用户时,不重置用户环境变量
-s 如果/etc/shells允许,则运行指定的shell

范例1:由普通用户oldboy切换到root用户

[oldboy@oldboyedu  ~]$ whoami 
oldboy                              <-->当前为普通用户oldboy
[oldboy@oldboyedu  ~]$ su root
Password: 
[root@oldboyedu  /home/oldboy]# env
MAIL=/var/spool/mail/oldboy
PWD=/home/oldboy                     <-->家目录没有变  
LANG=en_US.UTF-8
HISTCONTROL=ignoredups
HOME=/root
SHLVL=2
LOGNAME=oldboy

退到普通用户重新测试一下:

[root@oldboyedu  /home/oldboy]# exit
[oldboy@oldboyedu  ~]$ su - root          <-->加 - 的作用
Password: 
Last login: Sun Mar 31 09:42:18 CST 2019 on pts/0
[root@oldboyedu  ~]# env |egrep "USER|MAIL|PWD|LOGNAME"
USER=root
MAIL=/var/spool/mail/root
PWD=/root
LOGNAME=root

范例2:oldboy用户使用root身份执行命令

[oldboy@oldboyedu  ~]$ ls -l /root
ls: cannot open directory /root: Permission denied
[oldboy@oldboyedu  ~]$ su - -c "ls -l /root"
Password: 
total 72
-rw-r--r--  1 root root  1860 Mar 30 18:36 1.txt
-rw-------. 1 root root  1647 Mar  4 11:24 anaconda-ks.cfg
drwxr-xr-x  6 root root   153 Feb 11 09:18 lolcat-master
-rw-r--r--  1 root root 57827 Mar 18 10:13 master.zip
-rw-r--r--  1 root root    34 Mar 30 18:09 user.txt

范例3:让系统开机时自动以普通用户启动指定的服务脚本

[root@oldboyedu  ~]# tail -1 /etc/rc.local
su - oldboy -c '/bin/sh /server/scripts/deploy.sh'

小结:怎么用su

1、先登录普通用户,没事不允许登录root
只有执行的任务需要root权限的时候才允许你登录root
系统维护通道。
用su管理,必须知道root密码,安全隐患。
10个运维,都得知道root密码,安全隐患。

需求:
1、不用知道root密码还能管理服务器。
2、最小化管理服务器,想关机,就只给你halt权限。

2. visudo:编辑sudoers文件工具

visudo命令专门用来编辑/etc/sudoers这个文件的。

参数:

  • -c 手动执行语法检查

范例1:执行sudo对普通用户oldboy和oldgirl授权

[root@oldboyedu  ~]# visudo
100 root    ALL=(ALL)       ALL
101 oldboy  ALL=(ALL)      NOPASSWD: ALL      
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

3. sudo:以另一个用户身份执行命令

参数:

  • -l列出当前用户可以执行的命令。只有在sudoers文件里的用户才能使用
    范例1:查看用户被visudo授权后拥有的权限
[oldboy@oldboyedu  ~]$ whoami 
oldboy
[oldboy@oldboyedu  ~]$ ls /root
ls: cannot open directory /root: Permission denied
[oldboy@oldboyedu  ~]$ sudo ls /root
1.txt  anaconda-ks.cfg  lolcat-master  master.zip  user.txt

查看oldboy用户授权的结果情况:

[oldboy@oldboyedu  ~]$ sudo -l
Matching Defaults entries for oldboy on oldboyedu:
    !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

User oldboy may run the following commands on oldboyedu:
    (ALL) NOPASSWD: ALL

小结:sudo命令:

可以以最小化的权限(单个命令),执行命令时拥有root用户的权限

SUID 针对命令,任何用户执行命令都有root身份。 任何用户执行某个命令:模糊
SUDO 针对用户,给某个用户以root身份执行某个命令。指定用户执行某个命令:具体。

如何编辑配置sudo

sudo是一个提权的命令(对应权限通过读取/etc/sudoers(严格语法)文件实现的)

配置/etc/sudoers可以使用visudo命令,或vim /etc/sudoers(不推荐)

sudo的工作原理流程图

CentOS7 时间戳文件位置:

[root@oldboyedu  ~]# ll /var/run/sudo/
total 0
drwx------ 2 root root 40 Mar 31 09:22 ts
[root@oldboyedu  ~]# ll /etc/sudoers
-r--r----- 1 root root 4408 Mar 26 11:41 /etc/sudoers

相关文章

  • 作业-第05周--课堂-Day19-su、sudo、及visud

    Day19 课堂笔记 1. su:linux用户身份切换命令 范例1:由普通用户oldboy切换到root用户 退...

  • ace家长会

    课堂笔记及作业必须检查。每个孩子有各种不同的状态。 记笔记、记事

  • 快速阅读【17/21】文学及诗歌作品

    ✨快速阅读【作业17】 作业主题:《快速阅读》第14章 作业内容:快速及变速阅读文学作品及诗歌 本章字数:5420...

  • 2017年6月20星期二

    亲子日记第12天,昨晚孙韶涵又忘记带作业回来了!阳光课堂落在学校,自己害怕挨批,就说没有阳光课堂作业,还默默地做起...

  • Linux常用命令

    dd命令,进行磁盘备份 sudo blkid 查看分区uuid rm 删除指定文件及目录 sudo fdisk ...

  • 周末作业

    ❤️焦点·智慧父母课堂【肖丹分享第177天·运动第167天·读书第17天~2019-12-21】 又是周末,写作业...

  • sudo及定时任务

    sudo的含义及使用 sudo含义:尚方宝剑/大宝剑可以让普通用户在执行某个或几个命令的时候临时成为root 如何...

  • Ubuntu14.04安装WordPress

    更新系统 sudo apt-get update 安装软件及相关包 sudo apt-get install ap...

  • 【完型填空教学】——给临界生补课记3

    一、检查作业及回顾 1.2018年中考 选项词汇记忆 2.看错题 回顾:上节课,已讲全文,未看选项,课堂上完成及订...

  • EMF-20210905 周日课堂 不要草率行事

    2021-0905,打卡第1067天。 1、周日课堂 2、核心词汇 3、全文讲解 4、作业打卡

网友评论

      本文标题:作业-第05周--课堂-Day19-su、sudo、及visud

      本文链接:https://www.haomeiwen.com/subject/xtbcbqtx.html