用户组和用户权限的使用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

(0)
swzczxswzczx
上一篇 2016-08-04
下一篇 2016-08-04

相关推荐

  • 计算机编程简史图

       这个图片太经典了,本来想翻译的,后来觉得这么经典的图片可能早已被人翻译了,简单的Google一下,果然有人翻译了。那我就把英文版和中文版都转过来吧。我们可以看到,其中很大一部分人都和Unix有着不解之缘(参见《Unix传奇上篇,Unix传奇下篇》) 英文原版 中文翻译版 什么也不说了,直接上图(图片比较大,单击图片看大图) 计算机编…

    Linux干货 2015-04-02
  • 高级文件系统管理2

    五、btrfs文件系统     技术预览版     Btrfs (B-tree, Butter FS, Better FS), GPL, Oracle,2007, CoW     核心特性:     …

    Linux干货 2016-09-09
  • 第二周作业

    课后作业 1.Linux上的文件管理类命令都有哪些,其常用的使用方法及相关示例演示。 cp:复制命令 三种常用方式: cp[OPTION]…[-T] SOURCE DEST cp[OPTION]…SOURCE…DIRECTORY cp[OPTION]…-t DIRECTORY SOURCE 如果SRC是…

    Linux干货 2016-12-10
  • php-fpm

    1.安装 mariadb 服务 修改配置文件 2.musql 安全加强 3.安装 php-fpm php-mysql php-mbstring php-mcrypt 服务 修改配置文件 4.安装httpd服务 加虚拟主机配置文件 5.测试php网页 6.安装myadmin包及测试

    2017-06-04
  • Linux下的SSH端口转发

    通常情况下两个不同的网络之间总会开放某一些特定的端口用于通讯使用,而SSH所使用的22端口通常就在开放之列。基于SSH的端口转发就是利用SSH作为中间的代理,达到绕过两个网络之间的限制,顺利的进行任意的端口的访问。端口转发可以分为三种,正向端口转发,反向端口转发和动态端口转发。为了演示这三种端口转发方式的用法我们先假设存在有2个网域Office和Prod,在…

    Linux干货 2015-02-09
  • Linux基础知识之文本处理三剑客sed

    处理文本的工具sed     1.sed是一种流编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”。接着用sed命令处理缓冲区中的内容,完成处理后,把缓冲区中的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有改变,除非你使用重定向存储输出。sed主要用来自动编…

    Linux干货 2016-08-11

评论列表(1条)

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

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