您的位置:首页 > 运维架构 > Linux

LINUX 用户权限管理

2013-07-19 10:28 344 查看
1  用户与组的概念
      LINUX 是一个真实的,完整的多用户任务操作系统。多用户是指就是可以在系统上建立一个多个用户,多个用户可以在同一时间同一系统下执行各自不同的任务,而互不影响。
     
      LINUX 下的角色分类
      (1) 超级用户: 拥有对系统的最高管理权限,默认是root 用户
      (2) 普通用户:只能对自己目录下的文件进行访问和修改,而具有登录系统的权限。
      (3) 虚拟用户: 也叫“伪用户”,不能登录系统,它存在的主要方便系统的管理,满足相应的系统进程对文件属主的要求。

2 用户与组的关系
      (1) 一对一: 一个用户可以存在一个组中,也可以是组中的唯一成员
      (2) 一对多: 一个用户可以存在多个用户组中,那么此用户具有多个组的共同权限
      (3) 多对一: 多个用户可以存在一个组中,这些用户具有和组相同的权限

      (4) 多对多: 多个用户可以存在多个用户组中。

3 用户配置文件概述

     (1)  /etc/passwd 文件
      系统用户配置文件,是用户管理中最重要的部分。这个文件记录了Linux系统中每个用户的一些基本属性,并且对所有用户可读。  / etc/passwd 中每一行记录对应一个用户,没行记录又被冒号分割,其格式和具体含义如下:
    
      用户名: 口令: 用户标识:组标识号:注释性描述: 主目录 : 默认shell

      lcc@lcc:~$ more /etc/passwd

      部分输出:

      root:x:0:0:root:/root:/bin/bash

     
每个字段含义:

     用户名:  代表用户账户的字符串
     口令 : 存放加密后的口令
     用户标识:  就是用户的UID,唯一标识的ID
     组标识: 就是组GID ,与用户UID 类似。这个字段记录了用户所属的用户组。
     注释性描述: 对用户的信息描述。
     主目录: 用户登录到系统之后的默认所处的目录
     默认shell  :  用户登录系统后的默认使用命令解释器

    (2) /etc/shadow
    用户的影子文件,由于/etc/passwd 文件是所用用户都可读,这样就导致了用户的密码容易出现泄漏。因此LINUX 将用户的密码信息从/etc/passwd 中分离出来,单独存放到这个文件中。该文件只有root用户拥有读取权限。从而保证用户密码的安全性。

     内容格式:

     用户名: 加密口令 : 最后一次修改时间: 最小时间间隔: 最大时间间隔 : 警告时间 : 不活动时间: 失效时间: 保留字段
     root@lcc:/home/lcc# more /etc/shadow

     root:$6$SEteO5oQ$x09zekuOEevDx1fFzOFGdhxIwN8pXSuny.2.iOxAGZ6ZUBrkEEmi5JTX5xv7Tdm
     vQXXqu08WFVZVb8YxpnsqY/:15899:0:99999:7:::
  
     (3) /etc/group 文件
     该文件是用户组的配置文件,用户组的所有信息都存放在此文件中

     内容格式如下:
     组名: 口令名: 组标识号: 组内用户列表
    root@lcc:/home/lcc# more /etc/group

    root:x:0:

    daemon:x:1:

    bin:x:2:

    sys:x:3:

    adm:x:4:lcc
   
   注意: 口令名所有都用X 表示,因为组没有口令的名的。
   (4) /etc/login.defs 文件
   用来创建一个用户时的默认设置,比如制定UID  和GID 的范围,用户的过期时间,是否需要创建用户主目录

4 用户管理工具介绍

    (1) 用户组的添加,切换和删除
          groupadd命令
          用来新建一个用户组。语法格式:
          groupadd [-g  -o]  gid  group
         -g   : 指定新建用户组的GID  ,该GID 必须是唯一的,不能和其他GID 重复
         -o   : 一般与-g 选项同时使用,表示新用户组的GID 可以与系统已有的用户组的GID 相同
    创建一个lcctest的组
   root@lcc:/home/lcc# groupadd -g 1020 lcctest
   root@lcc:/home/lcc# more /etc/group
   lcctest:x:1020:

     
      newgrp  命令

       如果一个用户同时属于多个用户组,那么用户可以在多个用户组中切换,以便获取其他用户组的权限
      语法:
       newgrp    <用户组>

     
     
      groupdel  命令

      表示删除用户组,语法格式:
      groupdel   [群组名称]
      当从系统上删除用户组时,必须先删除这个用户组中的用户,才能删除用户组

      root@lcc:/home/lcc# groupdel  lcctest
    
(2)  添加/删除/修改用名命令  useradd/usermod/userdel
       useradd建立用户的过程
       useradd 不添加任何参数创建用户时,系统首先读取添加用户配置文件etc/login.defs 和 /etc/default/useradd  ,  根据这两个配置文件中定义的规则添加用户,然后向/etc/passwd 和 /ect/group   文件添加用户和用户组记录,同时  /etc/passwd 和  /etc/group 对应的加密文件也会自动生成记录。接着系统会自动在etc/default/useradd  文件设定的目录下建立用户主目录,最后复制/etc/skel目录中的所有文件到新的用户主目录中,这样一个新的用户简历就完成了
       usermod 的使用方法
       用来修改用户的账户属性信息。

   
       userdel  删除用户

       userdel  [-r]  [用户帐号]
 

5  用户权限管理

      文件权限就是指对文件的访问权限,包括文件的读,写,删除,执行等
      查看文件权限的属性
     root@lcc:/home/lcc# ls -al

总用量 260

drwxr-xr-x 42 lcc  lcc   4096  7月 19 09:01 .

drwxr-xr-x  4 root root  4096  5月 15 13:10 ..

-rw-rw-r--  1 lcc  lcc      0  7月  9 15:54 aa~

drwx------  3 lcc  lcc   4096  5月 18 11:32 .adobe

drwxrwxr-x  5 lcc  lcc   4096  5月 18 10:53 .android

drwxr-x---  7 lcc  lcc   4096  5月 18 10:45 android-studio

drwxrwxr-x  4 lcc  lcc   4096  5月 18 10:47 .AndroidStudioPreview

drwxrwxr-x  3 lcc  lcc   4096  5月 18 10:48 AndroidStudioProjects

-rw-------  1 lcc  lcc   6847  7月 18 23:34 .bash_history

-rw-r--r--  1 lcc  lcc    220  5月 15 13:10 .bash_logout

-rw-r--r--  1 lcc  lcc   3637  5月 15 13:10 .bashrc

drwx------ 21 lcc  lcc   4096  7月  9 21:20 .cache

drwx------  3 lcc  lcc   4096  5月 15 14:41 .compiz

drwx------ 23 lcc  lcc   4096  6月 25 11:16 .config

drwxrwxr-x  2 lcc  lcc   4096  8月 20  2012 crack

drwx------  3 lcc  lcc   4096  5月 15 13:29 .dbus

-rw-r--r--  1 lcc  lcc     25  7月 19 09:01 .dmrc

-rw-r--r--  1 lcc  lcc   8942  5月 15 13:10 examples.desktop

drwx------  4 lcc  lcc   4096  7月 19 09:01 .gconf

drwxrwxr-x  5 lcc  lcc   4096  5月 18 10:48 .gradle

drwx------  2 root root  4096  5月 15 22:24 .gvfs

drwxrwxr-x  2 lcc  lcc   4096  7月 10 13:25 hhahahahaha

-rw-------  1 lcc  lcc  13468  7月 19 09:01 .ICEauthority

drwx------  2 lcc  lcc   4096  5月 18 11:08 .icons

drwxrwxr-x  3 lcc  lcc   4096  5月 15 21:43 .java

drwxrwxr-x  3 lcc  lcc   4096  5月 15 16:05 JAVA

具体含义如下

 drwxrwxr-x   文档类型以及权限
d   文档类型
rwx  文档拥有者的权限
rwx  文档所属的用户组的权限
r-x    其他用户组的权限

 3  连接数 
 lcc  lcc   文档所属的用户和用户组 
 4096     文档的大小   
  5月 15 21:43  文档最后被修改的日期 
 .java  文档名称

   chown  改变属主和属组
   chown  就是changeowner 的意思,主要作用就是改变文件或者目录所有者,而所有这包含用户和用户组,其实chown就是对文件所属的用户和用户组进行的一系列设置
   chown 使用:
   chown   [-r]  用户名称  文件或目录
   chown   [-r]  用户名称  :  用户组组名称  文件或目录
  
   chmod  改变访问权限
   chmod 文件权限

   

  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: