用户组和用户权限的使用2

touch /etc/nologin 

echo system is maintanining >> /etc/nologin 

可以控制非管理员root之外的所有普通用户不能登陆

7版本里面

cd /run/

touch /run/nologin

效果一样让普通用户不能登陆

ehho weihu > /run/nologin

useradd -ou0 root2

通过强制该成UID=0 生成管理员用户

QQ图片20160804201126.png

cp -r /etc/skel/. /home/zczx

cp -r /etc/skl/.[^.]* /home/zczx

补齐家目录的文件

groupadd 

      -g 指明GID号

      -r 创建系统组

                    centos 6:ID<500

                    centos 7:ID<1000

QQ图片20160804201933.png

groupmod      

      -n 新名字

      -g 新的GID

QQ图片20160804202441.png

groupdel

       删除辅助组,用户的主组删除不了。

QQ图片20160804202640.png

gpasswd

       -a user:将user添加至指定组

       -d user: 从指定组中移除用户user

       -A user1,user2,…..:设置有管理权限的用户列表

       -M 指定成员作用跟-A差不多

       -r:删除密码

       -R:限制用户登入组,只有组成员才能可以用newgrp加入

QQ图片20160804203434.png

newgrp 命令:临时切换基本组

       如果用户不属于此组,则需要密码

newgrp + 组名

' ' 直接当字符串输出

" " 变量能识别

` ` 反向引用,变量输出

具体输出要看使用

权限 

r read  读

w write 写

x excute  执行

文件 -rw-r–r–

    rw-   r–    r–

    用户   组    other

QQ图片20160804204044.png

chmod 

change mode 修改权限

chmod who opt per file…

who:u,g,o,a

pot:+,-,= 

per:

chmod u=rwx f1

chmod a=rwx f1 所有人a

QQ图片20160804204407.png

文件的

有r权限的,能够读出文本,但是不能修改文本

有w权限的,可以将文件修改写空,有一定危险性,但没有权限删除文件

有x权限的,针对可执行的二进制程序或脚本

X:不会增加x,(前提本身无x权限)

目录的

r:可以查看目录内的文件列表,但不能访问文件,不能cd,也不能查看文件的元数据

w:可以创建或删除文件,要配合x权限。

x:可以进去目录,可以访问目录的文件,不显示目录下文件,但可以直接通过文件名字访问

X:不会增加x(前提本身无x权限)

目录中有 w和x,写和执行权限就可以操作目录的内容,可以删除目录下的文件

chmod -R a=rwx dir1/

chmod -R a=rwX dir1/

八进制数字

rw-r—–

110100000  二进制

420400000  四进制

640        八进制

640:rw-r—–

755:rwxr-xr-x

chomd 640

chomd

    u 文件属主权限

    g 同组用户权限

    o 其它用户权限

    a 所有用户(含以上3种)

    + 增加权限

    – 取消权限 

    = 唯一设定权限

chmod –reference /etc/shadow dir1 参考文件dir1的权限设置

如何修复用户根目录被删去

rm -rf wangcai 

cp -r /etc/skel wangcai

chown -R wangcai.wangcai wangcai /

chmod 700 wangcai 

chown 修改文件的属主

      更改每个文件的所有者或所属组

      -R递归处理所有文件及子目录

chgrp 修改文件的属主

      改变文件的组所有权

      -R递归的改变目录和它的内容的组所有权

umask 可以用来保留在创建文件权限

      -S :以字符的形式显示当前掩码

      -p :带umask开头以数字的形式显示当前掩码

QQ图片20160804204653.png

umask + default per =file 666/dir 777

umask +数值  umask 022

可以通过加入文件 .bashrc 永久生效

umaks 本质从目录或文件上屏蔽掉最大权限相应的位,从而得出默认权限。

umask 125

最大权限 110 110 110   666

二进制: 001 010 101   125

         110 100 010   642

    目录:dir 777-umask   目录直接减法计算

    文件:file 666-umask  有奇数加1,偶数保留        

umask 127

touch fff

666-127=54-1  

       =640

       -rw-r—–

umask u=rw,g= ,o= 

umask -S 

直接显示出文件权限

umask -p 输出可被调用

非特权用户umask 是002

root 的 umask 是 022

umask :查看

umask #:设定

文件所有者  | 文件所属组用户 |  其他用户

r  w  x     |  r    w    x   |  r  w  x

4  2  1     |  4    2    1   |  4  2  1

QQ图片20160804204820.png

特殊权限

suid  s 4

sgid  s 2 

sticky  t 1

权限数字在原来数字基础前面加一位数字

启动为进程之后,其进程的属主为发起者,进程的属组为发起者的属主

特殊权限要在x执行权限生效的时候才生效

ll

suid

passwd 

ll /usr/bin/passwd 

-rwsr-xr-x

suid  用数字4表示

普通用户执行属主的权限

在文件修改chmod u+s 要注意安全性问题,因为大部分文件属主都是root用户

只针对二进制进程生效

QQ图片20160804205039.png

sgid

组权限 

root 组权限不大,跟root用户有根本上区别

sgid 用数字2表示

chomd u-s,g-s /testdir

作用在二进制程序

作用在目录上,目录下的新建文件都属于该目录的同一个组,新建的目录与子目录同样属于目录的组。

QQ图片20160804205359.png

sticky 

粘滞位

chomd o+t /testdir

可以建立和删除自己的文件,但不能删除其他用户的文件(root)用户除外

作用在目录上

QQ图片20160804205531.png

chattr 

      修改文件在Linux第二扩展文件系统上特有属性

      -R 递归修改目录及其下内容的属性

chattr +A user.txt 锁定user.txt atime 读取的时间

chattr -A user.txt 消除atime时间锁定

lsattr user.txt 可以显示文件是否带A

lsattr 显示文件在Linux 第二扩展文件系统上特有属性

       -R 递归列出目录及一下内容的属性

       -v 显示文件版本

       -a 列出目录中的所有文件,包括.开头的文件属性

chattr 避免你的文件误操作

+ i 不能删除,改名,更改

+ a 只能增加

lsattr 显示特定属性

QQ图片20160804205757.png

ACL:

具有能再添加局限权限的能力,实现灵活的权限管理

Centos 7 默认创建xfs 和ext4 文件系统有ACL功能。

Centos 7 版本之前,默认手工创建的ext4文件系统无ACL功能。

         手动添加:

                  tune2fs -o acl /dve/sdb1

                  mount -o acl /dve/sbd1 /mnt

ACL 生效顺序:所有者,自定义用户,自定义组,其他人。

setfacl  设定文件访问控制列表

         -m :改变文件的访问控制列表

         -M :从文件读取访问控制列表条目更改

         -x : 根据文件中访问控制列表移除条目

         -X :从文件读取访问控制列表条目并删除

         -b : 删除所有扩展访问控制列表条目

         -k : 移除默认访问控制列表

         -n : 不重新计算有效权限掩码

         -d : 应用到默认访问控制列表的操作

         -R :递归操作子目录

         -v : 显示版本并退出

         -d : 应用到默认访问控制列表的操作

         

setfacl -m u:zczx:rwx 

           用户

        -m g:zczx:0

           组

setfacl -x u:zczx f1

        -x g:zczx fi

清除ACL权限

setfacl -b 

完全清除ACL痕迹 

getfacl f1

可以看到特殊权限

QQ图片20160804210310.png

u:wang

u:wangcai 

setfacl -X a.txt 

删除a文件中名单用户的ACL权限

setfacl -m m::x f1   mask::–x

一但设置了ACL权限之后,修改g组的权限等于修改mask权限

setfacl -m m::rw f1 

设置了mask权限

除了所有者的权限,其他用户和组的权限都被限制成为rw或者不够rw.

只能比小和相等。(user 和 other 不影响)

QQ图片20160804211108.png

setfacl -m d:u:wangcai:rwX

getfacl 可以看到特殊权限

base ACL 不能删除

setfacl -k dir 删除默认ACL权限

setfacl -b file 清除所有ACL权限

QQ图片20160804211322.png

getfacl f1 | getfacl –set-file=- f2

复制f1的ACL权限给f2

QQ图片20160804211904.png

cp -a f1 /root/

cp -p f1 

getfacl -R /tmp/dir1 > acl.txt

setfacl -R -b /tmp/dir1

setfacl -R –set-file=acl.txt /tmp/dir1

getfacl -R /tmp/dir1

mkdir test

groupadd g1

groupadd g2

groupadd g3

chgrp g1 test

chmod 2770 test

chgrp g1 test

setfacl -m g:g2:rwx test

setfacl -m g:g3:rwx test

setfacl -m d:g:g2:rwx test

setfacl -m d:g:g3:rwx test

setfacl -m d:g:g3:r test

getfacl test 

gpasswd -a user g2

原创文章,作者:swzczx,如若转载,请注明出处:http://www.178linux.com/29077

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-04 21:50

    如果能有一些对应的示例,就更好了。