老男孩day-21

01. 课程介绍部分

1.用户相关文件
2.用户相关目录
    3.用户提权方法 4种方法
4.用户相关命令 chmod chown

02.知识回顾

    1.掌握系统启动流程;如何编写服务启动脚本
2.用户管理概念知识:
    a 用户分类知识,3类
    b 用户权限说明
       文件数据读写原理:inode/block
3.数据默认权限
    umask;
            权限运算公式;
               文件:666-umask(奇数/偶数)
           目录:777-umask   

03.系统用户重要文件:四个

##/etc/passwd:系统用户记录文件*****
    root    :x       :0     :0      :root         :/root          :/bin/bash
    bin     :x       :1     :1      :bin          :/bin           :/sbin/nologin
    sibeile :x       :1000  :1000   :sibeile      :/home/sibeile  :/bin/bash
    01列:用户名称信息
    02列:用户密码信息
    03列:用户uid数值信息
    04列:用户gid数据信息
    05列:用户注释信息
    06列:指定用户家目录;useradd old01 -M -s /sbin/nologin (创建一个虚拟用户,还不能登陆)
    07列:用户登陆系统方式 bash==(等价)shell ;nologin 
    cat /etc/shells ;ll /usr/bin -d 
##/etc/shadow:系统用户密码记(密文)录文件******
    chrony:!!:18079::::::
    ntp:!!:18092::::::
    oldgirl:!!:18104:0:99999:7:::
    01列:用户名称信息
    02列:用户密码信息 "!!"表示不给该用户设置密码;明文信息是可以自己创建出来的;
    生成密码密文信息
    利用Python模块功能
    yum install python-pip
    pip install passlib
##/etc/group:系统用户组记录文件
    01列:组名称信息
    02列:组密码信息
    03列:组的ID信息
    04列:组的成员信息 :
    usermod alex -G oldbaby(把alex加入到oldbaby组中)
    grep root /etc/group 查看root组成员
##/etc/gshadow:系统用户组密码记录文件

04系统用户重要目录:

/etc/skel ----样板房
useradd oldboy 
01.将用户信息填充到用户文件中(上面的4个文件)
02.在/home目录中创建家目录 mkdir /home/oldboy
03.(参考/etc/skel中配置) cp -r /etc/skel/.bas* /home/oldboy 
                 cp -r /etc/skel/* /home/oldboy
恢复命令提示符   
    1.修改PS换将变量
    用root权限 在全局变量下重新设置PS1命令提示符  vim /etc/profile   
2.复制/etc/skel目录中的隐藏文件
    cp -r /etc/skel/.bas* /home/oldboy 

05如何进行用户提权操作:

##如何让普通用户画的更多权限
    01.切换用户为root    
        su - / su - root
    02.修改文件或目录权限
        chmod:
            单独修改权限信息:
            a.单独修改属主权限 chmod u+r/w/x 文件信息也可以组合加chmod u+rwx 文件信息
            b.单独修改属组权限 chmod g+r/w/x 文件信息也可以组合加chmod g+rwx 文件信息
            c.单独修改其他用户权限 chmod o+r/w/x 文件信息也可以组合加chmod o+rwx 文件信息
        批量修改权限信息:
            a.利用数值进行修改 chmod 744 文件信息;
            b.利用符号信息修改权限chmod a(所用用户)+1 文件信息
            chmod -R 666 /oldboy/oldboy{01..03}.txt  利用-R参数实现递归修改目录以及目录下面所有数据权限
                                        
            chown
                属主信息 chown oldboy  目录/文件 注:把目录/文件的属主改成oldboy
            属组信息 chown .oldboy 目录/文件 注:把目录/文件的属组改成oldboy
            全部信息 chown oldboy.oldboy 目录/文件
                      或者 chown oldboy. 目录/文件
                chown -R ---利用-R参数实现递归修改目录及目录下面所有数据权限,只允许摸个用户有权限,其他用户没有
    03.利用sudo方式对指定用户提权 root
        第一个里程:root下派指定权利
                visudo 
                    在100行以后 加上 如:oldboy ALL=(ALL) /bin/cat (命令必须是绝对路径) /etc/shadow  /bin/touch (命令路径必须是绝对路径) /etc/*  多  

                                    个命令之前要用", "(逗号空格)分隔.
                                    还要加上 oldboy的密码 echo 123456|passwd --stdin oldboy
                                    oldboy ALL=(ALL) /bin/* !/bin/vim,!/usr/sbin/visudo --对有些危险命令进行取反配置
                                    oldboy ALL=(ALL) NOPASSWD:/bin/* !/bin/vim,!/usr/sbin/visudo --忽略sudo密码信息

                                   01:讲root权利赋予哪个用户
                                   02:???   权限集中管理服务器
                                   03:赋予什么特殊权利


        第二个里程:测试赋予权利
            普通用户测试执行
            sudo -l   ----查看特殊权限
                /bin/cat /etc/shadow /bin/touch /etc/*
                sudo cat /etc/shadow   --- 操作命令
    
            sudo -l    --- 查看sudo权力
            sudo -k    --- 清除sudo密码缓存
            visudo(语法检查功能) == vim /etc/sudoers
                visudo -c  --- 检查/etc/sudoers文件合法性
    04.系统特殊权限位
        setuid: 可以让普通用户获得一个命令文件属主能力(一般是root属主能力)
        修改命令权限 chmod u+s /usr/bin/cat
                         chmod 4755 /usr/bin/cat
        补充:s权限位会覆盖执行权限位:执行权限位有x---setuid符号为小写
                                         执行权限位无x---setuid符号为大写
        setgid:可以让普通用户获得一个命令文件属组能力
            修改命令权限 chmod g+s /usr/bin/cat
                             chmod 2755 /usr/bin/cat
        sticky bit:  t=1 只对目录设置
        创建一个共享目录,目录中文件数据只能属主用户操作,其他用户只能看不能改,不能删除
            chmod o+t /share/
            chmod 1777 /share/
            root@oldboyedu ~]# ll /share/ -d

06用户管理相关命令:

1.useradd:创建用户
    -u:指定uid信息 tail -1 /etc/passwd 获得ID信息
       useradd oldboy -u 2000 微信创建用户指定uid
    -g:指定用户所属主要组
    -G:指定用户所属附属组
    -M:不创建用户家目录
    -s:指定用户shell登录方式 /sbin/nologin  eg:useradd rsync -M -s /sbin/nologin ---创建虚拟用户
    -c:给用户添加注释信息
2.userdel:删除用户 eg: userdel oldboy (删除不彻底,在家目录下还有该用户的目录,再重新创建相同用户名的用户时,无法在该目录下起作用)
      应该用 userdel -r oldboy 删除,这样彻底.
      userdel -r 彻底删除用户,以及家目录
3.usermod :修改用户
    -u:指定uid信息 tail -1 /etc/passwd 获得ID信息
    useradd oldboy -u 2000 微信创建用户指定uid
    -g:指定用户所属主要组
    -G:指定用户所属附属组
    -M:不创建用户家目录
    -s:指定用户shell登录方式 /sbin/nologin
    useradd rsync -M -s /sbin/nologin ---创建虚拟用户
    -c:给用户添加注释信息
4.groupadd: -g 指定组的gid
5.groupdel
6.groupmod: -g
7.chmod
8.chown
9.passwd: --stdin
10.id :查看uid gid 用户组成员信息
11w:查看有哪些用户登陆
    01列:表示登陆系统用户信息
    02列:登陆方式tty表示本地登陆 pts/1表示远程登陆
    echo"信息"  >/dev/pts/0
    03列:显示登陆的源ip地址
    04列:登陆时间
    05列:登陆之后空闲时间
    06-07列:执行命令耗费CPU时长
    08列:执行了什么操作

12.last:用户曾经登陆的历史记录
13.lastlog:显示系统所有用户登录信息
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 13,871评论 6 13
  • 想着来写,是因为今天一大早看到基友群说了个事 故事的女主角三苏,是个独立的女孩子,却因为男朋友,变成了个围着男朋友...
    言琟彦唯言阅读 3,638评论 0 1
  • 再优秀的老师,也教不好总请假的学生 音乐老师最怕什么? 学生请假! 有事没事就请假,“这周有事,请假;今天带孩子去...
    糖糖_4ab3阅读 1,482评论 0 0
  • 父亲老了 站在对面 像一小截地基倾陷的 土墙 国庆节我赶回老家 父亲混在村头的孩子中间 固执的等我 父亲对我的态...
    一缕梅香阅读 1,878评论 0 1
  • 四月跨过了和煦将尽 晨起的强光普照穿透 一路一路的树荫 林间的长尾燕啼鸣 草滩深处有虫 随声附和 想煮一壶香茗 闻...
    浩宇_90阅读 1,670评论 0 0