8-2 用户组和权限管理

用户组和权限管理

    本节主要是:su、passwd、chage、chown、chgrp、chmod、umask等命令及文件的三种普通权限和三种特殊权限

 

 

切换用户或以其他用户身份执行命令:su

su [options…] [-] [user[args…]]

切换用户的方式:

    su UserName:非登录式切换,及不会读取目标用户的配置文件

    su -UserName:登录式切换,会读取目标用户的配置文件,完全切换

Noteroot su 至其他用户无需密码,非root用户切换时需要密码。

换个身份执行命令:

    su [-] UserName -c COMMAND

       选项:-l   –login

        su -l UserName相当于 su – UserName

 

 

给用户添加密码:passwd

    管理员可以修改任何用户的密码,普通用户只能修改自己的密码

    Passwd [options] UserName:修改指定用户的密码,仅root用户权限

       -l:锁定指定用户

       -u:解锁指定用户

       -n:指定最短使用期限

       -x:指定最长使用期限

       -w:提前多少天开始警告

       -i:非活动期限

       -e:强制用户下次登录修改密码

           –stdin:从标准输入接收用户密码

               echo PASSWORD | passwd –stdin USERNAME

       Note:Linux 系统之上有两个特殊的文件:

            /dev/null:能够接收任何内容,并将其丢弃

            /dev/zero:能够连续不断的输出0信息

 

 

修改用户密码属性:chage

 chage [options] LOGIN

     -d LAST_DAY:修改用户最近一次修改密码的时间

     -E EXPIRE_DATE:从1970年到账号不能访问的时间

     -I INACTIVE:修改用户的非活动期限

     -m, –mindays MIN_DAYS:修改密码最短时间

     -M, –maxdays MAX_DAYS:修改密码最长时间

     -W, –warndays WARN_DAYS:提醒密码过期时间

     -l:显示密码策略

创建组:groupadd

 groupadd [option]… group_name

     -g GID:  指明GID 号;[GID_MIN, GID_MAX]

     -r:  创建系统组

删除用户:userdel

Userdel [options]LOGIN

-r:删除用户家目录

组属性修改:groupmod

groupmod [options] GROUP

-n:新名字

-g:新的GID

组删除:groupdel

groupdel GROUP

组密码:作用是为用户切换基本组

gpasswd [option] group

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

-d user:user从指定组中删除

-A userlist:设置有组管理权限的用户列表

临时切换基本组:newgrp

 

 

修改文件的属主:chown和属组:chgrp

修改文件的属主:chown

    chown [option]… [OWNER][:[GROUP]] FILE…

        OWNER:只修改属主

        OWNER:GROUP:修改属主和属组

        :GROUP:只修改属组

命令中的冒号可用. 替换;

    -R:  递归

修改文件的属组:chgrp

    chgrp [option]… group file…

    chgrp [option]… –reference=RFILE FILE…

     -R 递归

 

文件权限

三类对象

  u 属主

  g 属组

  o 其他

三种权限

   r    w    x

    对文件:

        r:查看文件内容

        w:修改文件内容

        x:把文件提请内核启动为一个进程

    对目录:

        r:查看此目录文件

        w:在此目录可创建、删除文件

        x:查看目录下文件列表,也可进入该目录

        X:只给目录x权限,不给文件x权限

修改文件权限:chmod

v  chmod [option]… OCTAL-MODE FILE…

v  chmod [option]… MODE[,mode]… FILE…

         -R:  递归修改权限

修改权限:

   直接设定权限 u=  g=  o=  ug=  a=  u=  g=

   调整一些权限u+  u-  g+  g-  o+  o-  a+  a-  

v chmod [option]… –reference=RFILE FILE…

参考RFILE 文件的权限,将FILE 的修改为同RFILE

 

 

文件或目录创建时的遮罩码:umask

       遮掩码是指在创建一个文件或目录时的默认权限为:

           FILE: 666-umask

           DIR: 777-umask

      umask 命令

         umask:查看umask

     umask #:设定 umask

     umask -S:模式方式显示

     umask -p:输出可被调用

 

Linux 文件系统上的特殊权限:  SUID, SGID, Sticky

              三种常用权限:r, w, x      user, group, other

安全上下文:

 前提:进程有属主和属组;文件有属主和属组

      (1)  任何一个可执行程序文件能不能启动为进程,取决发起者对程序文件是否拥有执行权限

      (2)  启动为进程之后,其进程的属主为发起者;进程的属组为发起者所属的组

      (3)  进程访问文件时的权限,取决于进程的发起者:

            (a)  进程的发起者,同文件的属主,则应用文件属主权限

            (b)  进程的发起者,属于文件的属组,则应用文件属组权限

            (c)  应用文件“其他位”权限

SUID:Set UID

前提:此类文件为有可执行权限的命令

        (1)任何一个可执行文件能不能启动为进程:取决于发起者对程序文件是否拥有执行权限

        (2)启动为进程之后,其进程的属主为原程序文件的属主

         权限设定:

         chmod u+s FILE…

         chmod u-s FILE…

 注:SUID 只能作用在二进制的程序上

SGID:Set GID

可执行文件上:

任何一个可执行程序文件能不能启动为进程:取决发起者对程序文件是否拥有执行权限

启动为进程之后,其进程的属主为原程序文件的属组

权限设定:

    chmod g+s FILE…

    chmod g-s FILE…

目录中时:

    一般,用户创建文件时,其属组为此用户所属的主组

v  一旦某目录被设定了SGID,则对此目录有写权限的用户在此目录中创建的文件所属的组为此目录的属组

权限设定:

chmod g+s DIR…

chmod g-s DIR…

注:sgid 作用在二进制的程序上:用户运行该程序时,自动继承该程序所属组的权限

       chmod g+s file

    sgid 作用在目录上时,该目录内新建的文件或目录的所属组自动继承该目录的所属组

       chgrp groupname dir; chmod g+s dir

Sticky:粘滞位

对于一个多人可写的目录,设置了sticky,则每个用户仅能删除自己的文件

权限设定:

chmod o+t DIR…

chmod o-t DIR…

注:sticky 只能作用在目录上

设定文件特定属性

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

 chattr +a  只能增加

 lsattr  显示特定属性

ACL  

   实现灵活的权限管理除了文件的所有者,所属组和其它人,可以对更多的用户设置权限。

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

   ACL文件上的group 权限是mask 值, 而非传统的组权限。默认ACL权限给了x ,文件也不会继承x 权限。

   mask值只影响除所有者和other 的之外的人和组的最大权限。它需要与用户的权限进行逻辑与运算后,才能变成有限的权限


 附:

/etc/passwd

username:x:uid:gid:comment:home:shell

姓名:密码:uidgid:注释:家目录:shell

/etc/shadow

username:password:password age:min:max:warn:inactive:usernameage:xxx

姓名:密码:上次改密时间:最小:最大:过期前警报:过期后:账号有效期:xxx

/etc/group

groupname:x:gid:groupmember

组名::gid:组员

/etc/gshadow

groupname:password:groupadmin:groupmember.

组名:加密口令:组管理员:组员

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

(0)
上一篇 2016-08-07 22:07
下一篇 2016-08-07 22:15

相关推荐

  • linux 文本切片处理技巧

    shell中截取字符串的方法有很多中, ${expression}一共有9种使用方法。 ${parameter:-word} ${parameter:=word} ${parameter:?word} ${parameter:+word} 上面4种可以用来进行缺省值的替换。 ${#parameter} 上面这种可以获得字符串的长度。 ${parameter%…

    Linux干货 2017-04-04
  • CentOS程序包管理

    对于Linux系统而言,其能执行的程序为二进制格式,而对于程序开发者而言,直接利用二进制开发程序是不太现实的,所以一般都是利用高级语言来进行软件开发,其程序也即称为源代码;那么我们在对一个程序进行安装、升级、卸载、 查询、校验等操作时,需要对每个源代码进行编译成为二进制程序,那么显然是不太现实的。所以在各Linux发行版中一般都带有程序包管理器。 所谓程序包…

    Linux干货 2016-08-25
  • Nginx反向代理、负载均衡的实现

    概述:     上篇介绍了Nginx作为web服务器的一些常用配置的说明,但是在实际生产环境中,Nginx更多是作为前端的负载均衡器,反代前端用户请求到后端真实的web服务器上,完成LNAMP的组合的方式存在。本篇就介绍一些Nginx作为http的反向代理和前端负载均衡调度器的一些常用配置,具体包括:  &n…

    Linux干货 2016-11-01
  • Linux网络属性管理(二)

    Linux网络属性(二) Linux 网络属性管理(二) ip命令 ip – show / manipulate routing, devices, policy routing and tunnels ip [ OPTIONS …

    Linux干货 2016-07-07
  • 对文件数据操作命令

    对文件数据操作命令   很多时候,我们都会去计算一次数据里头的的相同类型的数据总数或者查看特性的一些信息,在这个时候我们就需要排序与计算之类的命令来辅助,下面就是几个好用的操作文件数据命令。 文件查看命令:cat, tac cat [OPTION]… [FILE]…     -E: 显…

    Linux干货 2016-08-08
  • 权限作业

    三种权限rwx对文件和目录的不同意义 对文件来说: r:可获取文件的数据; w:可修改文件的数据;(但不能删除文件) x:可将此文件运行为进程;(针对二进制文件或脚本) (一般而言,文件默认情况下都不该有执行权限) 对目录来说: r:可以使用ls获取其下的所有文件列表;但不能访问文件,不能cd进目录,不能查看文件的详细信息(元数据) w:可修改此目录下的文件…

    Linux干货 2016-08-05