Linux用户和组管理 - 用户和组配置文件

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: 一、介绍安全3A二、用户 user三、组 group四、Linux 安全上下文五、Linux 组的类别六、Linux 用户和组的主要配置文件七、密码加密八、shadow 文件格式九、passwd 文件格式十、密码的复杂性策略十一、 group 文件格式

用户和组配置文件

 

内容介绍:

一、介绍安全3A

二、用户 user

三、 group

四、Linux 安全上下文

五、Linux 组的类别

六、Linux 用户和组的主要配置文件

七、密码加密

八、shadow 文件格式

九、passwd 文件格式

十、密码的复杂性策略

十一、 group 文件格式

 

 

一、介绍安全3A


资源分派:Authentication  认证(确定验证身份)

                Authorization  授权

                Accounting Audition  审计


 

二、用户 user


1、令牌 tokeidentity

2Linux 用户:Username/UID

3、管理员:root0

4、普通用户:1-60000自动分配

  系统用户:1-4991-999 CentOS7

            对守护进程获取资源进行权限分配

  登录用户:500+100+ CentOS7

         交互式登录

 

 

三、组 group


(一)相关概念

1Linux 组:Groupname

2、管理员组:root0

3、普通组:系统组:1-4991-999

          普通组:500+100+

 

(二)相关操作

1wang  password1 file1  read write

li  password2  file2  read

zhao password3  file3  read

使用组进行优化操作(更加方便,减少授权次数):

file 2  read write sales

li

zhao

zhang

li zhao zhang > sales  

 

2、在windows 中组的名称不允许与用户名相同

 但在 Linux 中组名与用户名相同

 

3、用户的编号为 UID, 组的编号为GID

 

4、一个账号可以加入多个组,一个组也可包含多个用户

 

 

四、Linux 安全上下文


运行中的程序:进程(process

以进程发起者的身份运行:root/bin/cat

                       mage/bin/cat

进程所能够访问资源的权限取决于进程的运行者的身份

 

 

五、Linux 组的类别


1、用户的主要组(primary group

 用户必须属于一个且只有一个主组

  组名同用户名,且仅包含一个用户,私有组

 

2、用户的附加组(supplementary group

  一个用户可以属于零个或多个辅助组

[root@centos7 ~]#id -u wang

1000

[root@centos7 ~]#id wang

uid =1000(wang)  gid =1000(wang)  groups=1000(wang)

[root@centos7 ~]#id wang

uid =0(root )  gid =0(root) groups=0(root)

[root@centos7 ~]#cat /etc/group

特殊的组 postfix

[root@centos7 ~]#id postfix

uid =89(postfix)  gid =89(postfix)  groups=89(postfix),12(mail)

 

 

六、Linux 用户和组的主要配置文件

/etc/passwd:用户及其属性信息(名称、UID、主组ID等)

/etc/group:组及其属性信息

/etc/shadow:用户密码及其相关属性

/etc/gshadow:组密码及其相关属性

 

操作演示:

1/etc/passwd(使用 cat 编辑)

[root@centos7 ~]#file  /etc/passwd

etc/passwd: ASCII text

[root@centos7 ~]#cat/etc/passwd

 

系统用户:

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

bin: x  bin: /bin: /sbin/nologin

 

普通用户:

wang: xB1,000: 1000: wang: /home/wang: /bin/bash

mage: X: 1001: 1001: /home/mage: /bin/bash

[root@centos7 ]# /etc/passwd /user/bin/passwd

 

查看用冒号隔开的字段的名称:

[root@centos7 ]#whatis passwd

[root@centos7 ]#man 5 passwd

如果把 wang 账号和 root 账号的 ID 都改为Linux

[root@centos7 ]#id

uid =0(wang)  gid =0(root) groups=0(root)

[root@centos7 ]#nano /etc/passwd

就会出现系统中没有为0的账户的情况

GID:主组 ID

GECOS:描述信息

[root@centos7 ]#chfn mage

Changing finger information for mage.

Name [ ]:mage

Office number:10086

 

装载 finger软件:

root(centos7 ~]#finger mage

bash: finger: command not found

[root@centos7 ~]#df

Filesystem  lK-blocks Used Available Use% Mounted on

/dev/sda2  52403200 3560708  48842492  7%  /

devtmpfs    916724       0     91672 0%  /dev

tmpfs       932652      0    932652  0%  /dev/shm

tmpfs       932652    10588    922064 2%  /run

tmpfs       932652       0     932652  0%  /sys/fs/cgroup

/dev/sda3  31441920   32976   31408944  1%  /data

/dev/sdal    1038336  168556    869780  17%  /boot

tmpfs        186532      20   186512   1%  /run/user/0

/dev/sr0     9176232 9176232        0. 100% /run/media/root/CentOS  7 x86_64

root(centos7 ~]#rpm -ivh /run/media/root/CentOS\7\x86_64/Packages/finger-  finger-0.17-52.e17.x86_64.rpm   finger-server-0.17-52e17x86_64. rpm

[root@centos7 ~]rpm -ivh/run/media/root/CentOS\ 7\ x86_64/pacages/ finger-0.17-52.e17.x86_64.rpm

warning: /run/media/root/CentOS7 ~x86_64/Packages/ finger-0.17-52e17x86_64.rpm: Header v3

RSA/SHA256  Signature, key ID f4a80eb5:  NOKEY

Preparing…                      #####################[100%]

Updating / installing

  1: finger-0.17-52.e17                ##################[100%]

[root@centos7 ~]#finger mage

Login: mage                          Name: mage

Directory: /home/mage                  shell: /bin/bash

office: CEO,  x1-0086                Home Phone: x1-0010

Never logged in

No mail.

No Plan

 

全部清空描述信息:

[root@centos7 ~]#chfn -f ‘’ -o ‘’ - p ‘’ -h ‘’  mage

wang 账号变成 nologin

[root@centos7 ~]#chsh -s/sbin/nologin

 

挑选性选择信息:

[root@centos7 ~]#getent passed

 

2、         /etc/shadow(放口令的文件,普通用户不可见)

加密算法:sha512(使用512bit加密算法)

         md5(相对简单,但不安全,使用128bit加密算法)

 

$1使用工具生成md5加密算法:

[root@centos6 ~]#grub-md5-crypt

Password

Retype password

$1$t5mk20$2iBpU.7e9Qg4v0GPtQfM.1

 

查看第三个字段:

[root@centos7 ~]#man shadow

算秒:

[root@centos7 ~]#date +%s

1537961276

[root@centos7 ~]#echo date +%s /3600/24  |bc

17800

 

调整时间为三天以后:

[root@centos7 ~]#  date -s+3 day

windows口令有效期:42

缩短口令有效期:

[root@centos7 ~]#clock -s

[root@centos7 ~]#date

wed Sep 26 19:37:10 CST 2018

[root@centos7 ~]#nano/etc/shadow

有效期过期前七天会进行提醒

如果过期后再超过宽限期就会锁定账户

 

使用专门工具改文件:

[root@centos7 ~]#chage mage

Changing the aging information for mage

Enter the new valueor press ENTER for the default

 

  Minimum Password Age 0」: 3

  Maximum Password Age 3」:42

  Last Password Change YYYY- MM- DD)「2018-9-26」:2018-9-20

  Password Expiration Warning 7」:14

  Password Inactive -1」:10

  Account Expiration DateYYYY- MM- DD)「-1」:2019-9-26

 

口令立即过期操作(适用于初始登陆口令):

[root@centos7 ~]#chage -d0 mage

[root@centos7 ~]#chage -1 mage

 image.png

 


七、密码加密


1、加密机制:

     加密:明文—〉密文

    解密:密文—〉明文

 

2、单向加密:哈希算法,原文不同,密文必不同

               相同算法定长输出,获得密文不可逆推出原始数据

     雪崩效应:初始条件的微小改变,引起结果的巨大改变

     md5: message digest128bits

     sha1: secure hash algorithm160bits

     sha224: 224bits

     sha384: 384bits

     sha512: 512bits

 

3、更改加密算法:

     authconfig  - -passalgo=sha256 - - update

 

 

八、shadow 文件格式


1、登录用名

2、用户密码: 一般用 sha512 加密

3、从197011日起到密码最近一次被更改的时间

4、密码再过几天可以被变更(0表示随时可以变更)

5、密码再过几天必须被变更(99999表示永不过期)

6、密码过期前几天系统提醒用户(默认为一周)

7、密码过期几天后账号会被锁定

8、从197011日算起,多少天后账号失效

 

 

九、passwd 文件格式


1login name:登录用名(wang

2passwd:密码(x

3UID:用户身份编号(1000

4GID:登录默认所在组编号(1000

5home directory:用户主目录(/home/wang

6shell:用户默认使用 shell/bin/bash

 

 

 

十、密码的复杂性策略


1、使用数字、大写字母、小写字母及特殊字符中至少3

2、足够长

3、使用随机密码

4、定期更换,不要使用最近曾经使用过的密码

 

设置随机口令操作:

[root@centos7 ~]#openss rand -base64 12

即可出现随机口令

 

 

十一、group 文件格式


1、群组名称

2、群组密码:通常不需要设定,密码被记录在/etc/gshadow

3GID:就是群组 ID

4、以当前组为附加组的用户列表(分隔符为逗号)

相关文章
|
4月前
|
存储 Ubuntu Linux
在Linux中,如何查看当前主机的主机名,如何修改主机名?要想重启后依旧生效,需要修改哪个配置文件?
在Linux中,如何查看当前主机的主机名,如何修改主机名?要想重启后依旧生效,需要修改哪个配置文件?
|
5月前
|
安全 Linux
Linux通配符及其在文件搜索和管理中的应用
Linux通配符及其在文件搜索和管理中的应用
|
6月前
|
Java Linux
Linux上管理不同版本的 JDK
Linux上管理不同版本的 JDK
325 0
|
5月前
|
Linux
入职必会-开发环境搭建37-Linux常用操作-Linux服务管理
系统启动以后一直存在且常驻内存没有界面的进程就是服务。Linux系统中的所有服务都保存在下列目录中:/usr/lib/systemd/system,进入该目录就能看到所有的服务。
入职必会-开发环境搭建37-Linux常用操作-Linux服务管理
|
4月前
|
存储 安全 Linux
在Linux中,内核调优配置文件名字有哪些?举例几个内核需要优化的参数配置?
在Linux中,内核调优配置文件名字有哪些?举例几个内核需要优化的参数配置?
|
4月前
|
网络协议 Ubuntu Linux
在Linux中,设置DNS需要修改哪个配置文件?
在Linux中,设置DNS需要修改哪个配置文件?
|
5月前
|
Ubuntu 应用服务中间件 Linux
Linux学习之Ubuntu 20中OpenResty的nginx目录里内容和配置文件
总的来说,OpenResty的Nginx配置文件是一个强大的工具,它允许你以非常灵活的方式定义你的Web服务的行为。
110 2
|
5月前
|
Linux
Linux 中RPM软件包管理
Linux 中RPM软件包管理
|
5月前
|
SQL 自然语言处理 网络协议
【Linux开发实战指南】基于TCP、进程数据结构与SQL数据库:构建在线云词典系统(含注册、登录、查询、历史记录管理功能及源码分享)
TCP(Transmission Control Protocol)连接是互联网上最常用的一种面向连接、可靠的、基于字节流的传输层通信协议。建立TCP连接需要经过著名的“三次握手”过程: 1. SYN(同步序列编号):客户端发送一个SYN包给服务器,并进入SYN_SEND状态,等待服务器确认。 2. SYN-ACK:服务器收到SYN包后,回应一个SYN-ACK(SYN+ACKnowledgment)包,告诉客户端其接收到了请求,并同意建立连接,此时服务器进入SYN_RECV状态。 3. ACK(确认字符):客户端收到服务器的SYN-ACK包后,发送一个ACK包给服务器,确认收到了服务器的确
200 1
|
6月前
|
Linux
【Linux 基础】文件与目录管理
文件和目录的基本概念以及常用命令
61 11