linux的用户权限

    linux用户:Username/UID
        管理员:root,0
        普通用户:1-65535
            系统用户:1-999
                对守护进程获取资源进行权限分配
            登录用户:1000+
                交互式登录
                
    linux组:Groupname/GID
        管理员组:root,0
        普通组:
            系统组:1-999
            普通组:1000+
            
    linux安全上下文:
        运行中的程序:进程(process)
            以进程发起者的身份运行
                root:cat
                top:cat
                
            进程所能够访问的所有资源的权限取决于进程的发起者身份
            
    linux组的类别:
        用户的基本组:
            组名同用户名,且仅包含一个用户:私有组
        用户的附加组(额外组)
        
    linux用户和组相关的配置文件:
        /etc/passwd:用户及其属性信息(名称、UID、基本组ID)
        /etc/group::组及其属性信息
        /etc/shadow:用户密码及其相关属性
        /etc/gshadow:组密码及其相关属性
            
    /etc/passwd:
        name:password:UID:GID:GECOS;directoty:shell
        用户名:密码:UID:GID:GECOS:主目录:默认shell
        
    /etc/group:
        group_name:password:GID:user_list
        组名:组密码:GID:以当前组为附加组的用户列表(分隔符为逗号)
        
    /etc/shadow:
        root:$6$MWe4.Jq0mbdKlqNU$RTUlFXty8/vq.::0:99999:7:::

        用户名:加密了的密码:最近一次更改密码的日期:密码的最小使用期限:最大密码使用期限:密码警告时间段:密码禁用段:账户过期日期:保留字段
        
            加密机制:
                加密:明文--》密文
                解密:密文--》明文
                
                单向加密:提取数据指纹
                    md5: message digest, 128bits
                    sha1:secure hash algorithm, 160bits
                    sha224:224bits
                    sha256:256bits
                    sha384:384bits
                    sha512:512bits
                    
                    雪崩效应:初始的条件的微小变化,将会引起结果巨大改变
                    定长输出:
            密码的复杂性策略:
                1、使用数字、大写字母、小写字母及特殊字符至少3种
                2、足够长
                3、使用随机密码
                4、定期更换:不要使用最近曾经使用过的密码
                
    用户和组相关的管理命令:
        用户创建:useradd
            useradd [option] LOGIN
                -u UID:[UID_MIN,UID_MAX],定义在/etc/login.defs
                -g GID: 指明用户所属基本组,可为组名,也可以GID
                -c "COMMAND":用户的注释信息
                -d /PATH/TO/HOME_DIR:以指定的路径为家目录
                -s SHELL:指明用户的默认shell程序,可用列表在/etc/shells文件中
                -G GROUP1[,GROUP2,..[,GROUPN]]]:为用户指明附加组,组必须事先存在
        
            默认值设定:/etc/default/useradd文件中
                    useradd -D
                        -s SHELL
                        
        练习:创建用户gentoo,附加组为disrto和linux,默认shell为/bin/csh,注释信息为“Gentoo Distrbution”
            [root@syh ~]# useradd -G distro,linux -s /bin/csh -c "Gentoo Distribution" gentoo
                
    组创建:groupadd
        groupadd [OPTION]... group_name
            -g GID:指明GID号:[GID_MIN, GID_MAX]
            -r:创建系统组
                Centos6 :ID<500
                Centos7 :ID<1000
                
    查看用户相关的ID信息:id
        id [OPTION]... [USR]
            -u:UID
            -g:GID
            -G:Groups
            -n:Name 显示文件名字:-u -n
            
    切换用户或其他用户身份执行命令:su
        su [option...] [-] [user [arge...]]]
        
            切换用户的方式:
                su UserName: 非登录切换,即不会读取目标用户的配置文件
                su - UserName: 登录式切换,会读取目标用户的配置文件,完全切换
                
                Note: root su至其他用户无须密码,非root用户切换是需要密码
            
            换个身份执行命令:
                su [-] UserName -c 'COMEAND'
                
            选项:
                -l:“su -l UserName” 相当于"su - UserName"
                
    用户属性修改:usermod
        usermod [OPTION] login
        
            -u UID:新UID
            -g GID:新基本组
            -G GROUP1[,GROUP2,...[GROUPN]]]:新附加组,原来的附加组将会被覆盖,若保留原有,则要同时使用-a选项,表示append
            -s SHELL:新的默认SHELL
            -c 'COMMENT':新的注释信息
            -d HOME:新的家目录,原有家目录的文件不会同时移动至新的家目录,若要移动,则同时使用-m选项
            -l login_name:新的名字
            -L:lock锁定用户
            -U:unlock锁定用户
            
    给用户添加密码:passwd
        passwd [OPTION] UserName:修改指定用户的密码,仅root用户权限
        passwd:修改自己的密码
        
            常用选项:    
                -l:锁定指定用户
                -u:解锁指定用户
                -n mindays;指定最短使用期限
                -x maxdays: 最大使用期限
                -w warndays: 提前多少天开始警告
                -i inactivedays:非活动期限
                
                --stdin:从标准输入接收用户密码
                    echo "PASSWORD" | passwd --stdin USERMANE
                    
                    Note:/dev/null, bit buckets
                          /dev/zero
                          
                          
    删除用户:userdel
        userdel [option]... login
            -r:删除用户家目录
            
    组属性修改:groupmod
        groupmod [option]... group
            -n group_name:新名字
            -g GID:新的GID
            
    组删除:groupdel
        groupdel GROUP
        
    组密码:gpasswd
        gpasswd [option]... GROUP
            -a user:将user添加至指定组中
            -d user:删除用户user的以当前组为名的附加组
                [root@master ~]# id yanhong
                uid=5000(yanhong) gid=5000(yanhong) 组=5000(yng),5001(yanhongg)
                [root@master ~]# gpasswd -d yanhong yanhongganho
                正在将用户“yanhong”从“yanhongg”组中删除
                [root@master ~]# id yanhong
                uid=5000(yanhong) gid=5000(yanhong) 组=5000(yanhong)
            -A user1,user2,... :设置有管理权限的用户列表
                [root@master ~]# gpasswd -A root user1
                [root@master ~]# tail -1 /etc/gshadow
                user1:!:root:

                
        newgrp命令:临时切换基本组
            如果用户本不属于此组,则需要组密码
            成功
            [u3@master root]$ id
            uid=5003(u3) gid=5003(u3) 组=5003(u3),5004(grp1)
            [u3@master root]$ newgrp grp1
            [u3@master root]$ id
            uid=5003(u3) gid=5004(grp1) 组=5004(grp1),5003(u3)
            失败
            [u2@master root]$ id
            uid=5002(u2) gid=5002(u2) 组=5002(u2)
            [u2@master root]$ newgrp grp1
            密码:
            newgrp: failed to crypt password with previous salt


            
            
    /etc/gshadow文件的每一行,以“:”分隔成4个字段。
            1. 用户组名
            2. 用户组密码            
            3. 用户组管理员的名称            
            4. 支持的账号名称
            
    修改用户属性;chage
        chage [option]... LOGIN
            -d:最近一次修改的时间
                [root@syh ~]# chage -d 2023-7-1 user56
            -E:账号的过期期限
                [root@syh ~]# chage -E -1 user56       (-1:从不)
            -I:账号的禁用期限
                [root@syh ~]# chage -I 3 user56
            -m: 密码的最小使用天数
                [root@syh ~]# chage -m 10 user56
            -M: 密码的最大使用天数
                [root@syh ~]# chage -M 10 user56        
            -W: 账号警告期限
                [root@syh ~]# chage -w 10 user56
            
    其他命令:chfn:chfn指令可以改变通过finger指令查看到的信息
              chsh:使用权限:所有使用者
              finger:查询一些其他使用者的资料
    
    命令总结:useradd, groupadd, su, id, usermod, userdel, groupmod, groupdel, su, newgrp, chage, chfn, finger
    
权限管理:
        文件的权限主要针对三类对象进行定义
            owner: 属组, u
            group: 属组, g
            other: 其他, o
            
        每个文件针对没类访问者都定义了三种权限
            r: Readable
            w: Writable
            x: eXcutable
            
            文件:
                r:可使用文件查看类工具获取其内容
                w: 可修改其内容
                x: 可以把此文件提请内核启动为一个进程
                
            目录:
                r: 可以使用ls查看此目录中文件列表
                w: 可在此目录中创建文件,也可删除此目录的文件
                x:可以使用ls -l查看此目录中文件列表,也可cd进入此目录
                
    修改文件权限:chmod
            -R:递归修改权限
            
            MODE:
                修改一类用户的所有权限:
                    u=
                    g=
                    o=
                    ug=
                修改一类用户某位或某些位权限
                    u+
                    u-
                
            chmod [option]... --reference=RFILE FILE...
                参考RFILE文件的权限,将FILE的修改为同RFILE
            
        修改文件的属主和属组
            仅root可用
            
            修改文件的属主:chown
                用法:
                    OWNER
                    OWNER:GROUP
                    :GROUP
                    
                    Note:命令中的冒号可用.替换
                    
                -R:递归
                
            修改文件的属组:chgrp
                chgrp [option]... GROUP FILE...
                chgrp [option]... --reference=RFILE FILE...
                
                -R
                
        文件或目录创建是的遮罩码:umask
            file: 666-umask
                Note:如果某类的用户的权限减得的结果存在x权限,则将其权限+1
            DIR: 777-umask
            
            umask:查看
            umask #: 设定
            
        命令总结:chmod, chown, chgrp, umask

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小宏运维有点菜

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值