Linux账号与权限管理

1.    用户帐号类型

     普通用户         权限受到限制的用户

     超级管理员     拥有至高无上的权限

     程序用户        不是给人使用的,给程序使用的。无法直接登录系统的用户

2.系统如何区别用户的身份:

  使用的是uid号(User Id用户标识)

centos7

       超级管理员 默认是 0

       普通用户  包括1000~60000

       程序用户 1~999

 centos6

      超级管理员:uid=0

      程序用户 1~499

      普通用户 500~6000

3.用户组

   本组(私有组)

    建立账户,若没指定账户所属组,系统会建立一个和用户名相同的组,这个组就是私有组,这个组默        认只容纳了一个用户。

     在用户所属组中的第一个组称为基本组,基本组在 /etc/passwd 文件中指定

        基本组:有且唯一

        附加组:可有可无,可以有多个

        默认新建用户时自动添加同名的组

    附加组(公共组)

   附加组:除了第一个组外的其他组为附加组或公共组,附加组在 /etc/group 文件中指定

    GID(Group IDentify,组标识号)

    与 UID 类似,每一个组账号也有身份标记,root 组账号的 GID 号为固定值 0,而程序组账号的      GID 号默认为 1~499,500~60000 的 GID 号默认分配给普通组使用。

  用户和组的关系

  用户是员工  组是职位

  员工可以兼职多个岗位

  总有一个最重要的身份 主要组合附加组

  主要组 必须要一个组 有且唯一

  附加组 可有可无 有可以有多个

  默认当你创建一个新用户时会自动创建一个和之同名的主组

  用户的主要组(primary group):用户必须属于一个且只有一个主组,默认创建用户时会自动创建    和用户名同名的组,做为用户的主要组,由于此组中只有一个用户,又称为私有组

  用户的附加组(supplementary group): 一个用户可以属于零个或多个辅助组,附属组

4.用户账号管理

(1)/etc/passwd 存放用户信息

Linux账号与权限管理_第1张图片 

 分七段(每段用冒号隔开)

已第一行为例 从左到右

root            用户名称
:x                密码占位符   

:0                uid

:0                gid

:root            备注信息,描述

:/root           家目录路径

:/bin/bash    默认的shell环境

其中/sbin/nologin是一个特殊的Shell,它用于禁止用户登录到系统。

通常下类型用户会被设置为/sbin/nologin

系统用户被用于特定系统服务或运行,设置为/sbin/nologin可以防止它误操作和安全问题。

FTP用户:对于只提供FTP服务的用户,可以阻止他们通过SSH或其他方式登录到系统。限制权限,增强系统安全性。

匿名用户:匿名用户是指无需身份验证即可访问某些系统资源的用户,Shell设置为/sbin/nologin可以确保他们无法登录到系统,只能通过匿名方式访问指定资源

临时禁用用户:需要临时禁用某个用户,例如当用户被发现异常活动或需要进行其他安全审查时,将其Shell设置为/sbin/nologin可以立即禁止其登录

(2) /etc/shadow  存放保存密码

分九段

第1用户名
第2密码

第3最后一次修改密码时间

第4修改密码最小天数 0 不限制

第5 密码有效期 

第6:密码到期提醒 

第7:密码过期后的宽限天数 (密码过期后多少天禁用此用户)

第8:失效时间 

第9:保留字段,未使用

5.添加用户

useradd命令

基本格式

useradd 【选项】 用户名

      在/etc/passwd 文件和/etc/shadow 文件的末尾增加该用户账号的记录

     若未明确指定用户的宿主目录,则在/home 目录下自动创建与该用户账号同名的宿主目录,并        在该目录中建立用户的各种初始配置文件。

     若没有明确指定用户所属的组,则自动创建与该用户账号同名的基本组账号,组账 号的记录信      息将保存到/etc/group 和/etc/shadow 文件中

选项

 -u:指定用户的 UID 号,要求该 UID 号码未被其他用户使用。

 -d:指定用户的宿主目录位置(当与-M 一起使用时,不生效)。

 -e:指定用户的账户失效时间,可使用 YYYY-MM-DD 的日期格式。

 -g:指定用户的基本组名(或使用 GID 号)。

 -G:指定用户的附加组名(或使用 GID 号)。

 -M:不建立宿主目录,即使/etc/login.defs 系统配置中已设定要建立宿主目录。

 -s:指定用户的登录

例如.创建用户ky26, 其ID号为1005;不建立家目录,不允许登录

useradd -u1005 -M -s  /sbin/nologin   ky266.

6.密码管理

passwd命令

为用户账号设置密码

passwd [选项]... 用户名

基本用法 不加选项 可以添加密码

选项

    -d:清空指定用户的密码,仅使用用户名即可登录系统。

     -l:锁定用户账户。

     -S:查看用户账户的状态(是否被锁定)。

     -u:解锁用

7.修改用户账号的属性

usermod命令

usermod  [选项]...  用户名

常见选项

-l  更改用户账号的登录名称(Login Name)
-L 锁定用户账户
-u 修改用户的 UID 号
-U  解锁锁用户账户

 -d:修改用户的宿主目录位置。
-e:修改用户的账户失效时间,可使用 YYYY-MM-DD 的日期格式。
-g:修改用户的基本组名(或使用 GID 号)
 -G:修改用户的附加组名(或使用 GID 号)
-s:指定用户的登录 Shell

useradd  是添加新用户并对新用户进行一些个性化设置

usermod 是对已有用户的属性进行更改,,选项和useradd基本一致

8.删除用户

userdel [选项] 用户

 -r  将宿主目录一起删除

9.组管理

组账号文件

与用户帐号文件相类似 /etc/group:保存组帐号基本信息 /etc/gshadow:保存组帐号的密码信息基本不使用

添加组

groupadd命令

groupadd [-g GID] 组账号名

组内管理

gpasswd 命令——添加、设置、删除组成员

 -a:向组内添加一个用户

 -d:从组内删除一个用户成员

 -M:定义组成员列表,以逗号分隔

9.文件/目录的权限和归属

访问权限

 Linux账号与权限管理_第2张图片

 

二进制数字表示法

           rwx    rwx    rwx

二进制111    111    111

十进制 7         7        7

              r=100(二进制)=4(十进制)

              w=010(二进制)=2(十进制)

              x=001(二进制)=1(十进制)
 

10.chmod(修改权限)

chmod 对谁(所有者,所属组,其他)操作(+ - =)权限 文件

谁:u,g,o,a

操作:+,-,=

权限:r,w,x(普通权限对root无效)

u  属主

g  属组

0  其他人

a 所有人

+ 是加上 在原有的基础上加上权限

-  在原有的基础上减去权限

= 赋予 原有权限不看  就是等于后面的权限

chown

chown -R   修改属主 属组

-R  递归  所有多改

属主,属组多改

chown   属主:属组  文件或文件夹

改属主

chown 用户名 文件

改属组

chown :组名 文件

11.umask

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

新建文件的默认权限: 666-umask,如果所得结果某位存在执行(奇数)权限,则将其权限+1,偶数不变

新建目录的默认权限: 777-umask

非特权用户umask默认是 002

root的umask 默认是 022

例如 umask 024,则以后建立的文件和目录的默认权限就为 642

  123就是644

你可能感兴趣的:(linux,运维,服务器)