6.linux 用户和权限的建立

一.用户和权限的建立
 
    su  用户名       切换用户,如果是root用户切换其他用户,不需要输入密码。
    exit  可以切换回上一个用户
 
    linux 操作系统用户分哪几类?
    管理员:root用户   uid 值 0
    普通用户:uid 500 到 60000 之间  可以登录系统 /bin 
    程序用户:uid  1-499  不可以登录系统  当程序启动时需要调用用户的权限,只能赋予程序用户的权限


    /etc/passwd   记录系统中所有用户的信息
    root:x:0:0:root:/root:/bin/bash
    字段1:用户名
    字段2:密码占位符
    字段3:uid值
    字段4:用户的基本组id值
    字段5:用户信息记录列  电话 地址 全名 等信息
    字段6:用户的家目录
    字段7:用户登录所用的命令解释器shell
 
    /etc/shadow  记录系统中所有用户的密码信息、
    root:$6$NstjDwa7R6a5AlaK$FT4fOZAeIzZyC38Y0JRXq85j:17465:0:99999:7:::
    字段1:用户名
    字段2:通过sha-512进行加密后的密码
    字段3:距离1970年1月1日 密码最近一次的修改时间天数
    字段4:密码的最短有效期ajest 5 在5天内不可以修改自己的密码
    字段5:密码的最长有效期 ajest 90 90天内可以使用该密码
    字段6:密码过期前7天提醒
    字段7:密码过期后的不活跃期 
    字段8:距离1970年1月1日用户的失效时间
 
    /etc/group  记录系统中所有的组信息
    linux系统中所有用户必须拥有一个基本组,用户可以有多个附加组
 
    root:x:0:
    字段1 : 组名
    字段2 : 组的密码占位符
    字段3 :gid号
    字段4 :用户的附加组为root组 该用户名会显示到该字段


二.如何建立用户,如何修改用户属性 ,  如何建立用户密码,如何建立组, 修改组信息。
 
    如何建立用户
    useradd  【选项】 用户名
    -u 数字  指定用户的uid号
    -g 组名  指定用户的基本组
    -G 组名  指定用户的附加组
    -M  不建立用户的家目录
    -s 指定用户的登录shell
 
 
    建立一个名为game的程序用户,要求其uid为55
    useradd -u 55  -s /sbin/nologin -M game
    建立一个名为allen的用户,要求其 基本组为ajest组  附加组为root组,uid号为510
    useradd -u 510 -g ajest -G root  allen
 


三.如何修改用户属性
    usermod [选项] 用户名   修改用户信息
    -u   -g   -G  -s 等同于useradd的功能
    -L 锁定用户
    -U 解锁用户  
    修改allen用户的uid 505    基本组为root组, 附加组为ajest组
    usermod -u 505 -g root -G ajest allen


四.如何建立用户密码
    passwd 用户名
 
    -S 查看用户密码状态
 
    userdel -r 用户名
    -r  删除用户在家目录以及在/var目录中的所有信息
 


 
    groupadd [选项] 组名      新建组
    -g 指定组的gid
 
    groupmod [选项] 组名    修改组信息
    -g 修改gid
 
    groupdel 组名         删除组
 
    gpasswd -a 用户名 组名
    为组中添加用户 (是用户的添加组)
 
    gpasswd -d 用户名   组名
    从组中删除用户


 
五.文件或目录的权限
 
    drwxr-xr-x.   3 root root
 
    d  rwx  r-x  r-x
    字段1: 文件的类型     d 目录   - 普通文件  l 符号链接文件   b 块设备   c  字符型设备
 
    字段2:文件所有者的权限
       普通文件            |          目录 
    r:  读取文件        |       列出目录内容
    w: 编辑文件        |      可以添加删除文件
    x:执行文件          |       可以进入该目录
 
    字段3:文件所属组的权限
 
    字段4 :其他用户的权限 
 
    3 -----目录中子目录的个数
 
    root  文件的所有者
    root  文件的所属组
 
 


    chmod  修改文件权限
    chmod  对象  运算符  权限  文件或者目录
 
    例子:chmod go-w /share
 
 
    对象分为 u(user 所属者) g(group所属组) o(other 其他用户) a(all所有)
 
    运算符:+、-、=     
    权限 :r w x -(无权限)    



 
    8进制赋权
 
    r=4  w=2  x=1
    chmod -R 777  目录递归对目录中所有文件进行附权包括目录本身
 
    chown 修改文件的所属者
 
    chgrp  修改文件的所属组
 
    -R 递归赋权
 


六.关于权限的高级用法    粘着位设定         sgid设定        suid 设定 
 
    粘着位:指定作用于目录,在该目录有写入权限的前提下,只有创建者可以删除自己的文件。(root 不受此影响)
 
    chmod o+t 目录
    chmod 1777 目录
 
 
    sgid:指定作用于目录,在该目录中建立的文件或者目录 的所属组都继承该目录的所属组
    chmod g+s 目录
    chmod 2777 目录
 
 
    suid:指定作用于可执行文件或命令文件, 执行该文件或命令时,其权限会按照当前文件或命令的所属者的权限执行。
    chmod  u+s 命令
    chmod  4755 命令
 
 
    如何设置文件的访问控制列表
 
    setfacl -m u:用户名:权限  文件或目录
    setfacl -m g:组名:权限   文件或者目录
    getfacl 文件或者目录              查看
 
    setfacl -x u:用户名  文件目录
 
 
posted @ 2018-08-15 14:07  yikuaiqian  阅读(509)  评论(0编辑  收藏  举报