Linux系统中的系统管理

文章目录

  • 一、用户及用户组存在的意义
  • 二、用户及用户组在系统中存在的方式
  • 三、用户切换
  • 四、用户涉及到的系统配置文件
  • 五、用户和用户组建立和删除
  • 六、用户和用户组的信息管理
  • 七、用户认证信息管理
  • 八、用户权力下方


一、用户及用户组存在的意义

1)用户存在的意义

系统资源是有限的,如何合理分配系统资源? 在这个问题解决时,必须要有两个资源来配合

①. 身份 account
②. 授权 author
③. 认证 auth (authentication)

3A 机制, 3A 机制组成系统中最底层的安全架构

2)用户组存在意义

用户组是一个逻辑容器 , 对用户进行归类和统一授权

二、用户及用户组在系统中存在的方式

电脑对数字敏感 id

人类对字符串敏感 名称

id <-------> 名称 必须要记录到文件当中用户才能存在 (id和名称)

用户就是/etc/passwd文件中的一行字符

三、用户切换

1 ) 用户查看

whomai ##查看当前用户

id ## 查看用户id信息

       - u                      ## 查看用户的用户 id
       - g                      ## 查看用户主组 id
       - G                     ## 查看用户所有的组的 id
       - n                     ##显示名称 

2 ) 用户切换
su - username
-#切换用户环境

username ## 如果 root ----> commonuser 不需要后者密码
##commonuser ----> root 需要密码
##commonuser ----> commonuser 需要密码

#注意:在做用户切换时,当使用完毕用户身份应及时退出 ,不要在一个shell中反复执行su命令

#在一个shell中反复执行su命令会导致环境错乱

四、用户涉及到的系统配置文件

/ etc / passwd ## 用户身份信息文件。 用户名称 : 用户密码 : 用户id :用户主组id : 用户说明 :用户家目录 :用户默认shell

/ etc / group ## 组身份信息文件

#组名称 :组密码:组id :组的附加成员

/ etc / skel /.* ##用户环境配置文件模板

/ etc / shadow ## 用户认证信息文件

/ home / username ## 用户家目录

五、用户和用户组建立和删除

watch - n 1 “tail - n 4 / etc / passwd / etc / group ; echo ======= ; ls - l / home”
##每秒监控一次

useradd username ##用户建立

useradd 用法

  • u id username ##uid 2**16=0-65535

    0 表示超级用户

    1 - 200 系统预留id

    201 - 999 系统用户

    1000 - 60000 用户级用户

    / etc / login.defs 记录用户建立的默认规则 (可查询以上规则)

  • g id username ##主组id

  • G id username ## 附加组 id

  • d dir username ##指定用户家目录

  • c “word” username ##指定用户说明(用双引号标起来)

  • s shell username ##指定用shell
    userdel - r username ## 用户删除 - r 删除用户的系统配置文件

groupadd groupname ## 组建立

-g id groupname ##指定组名称
groupdel groupname ## 组删除

六、用户和用户组的信息管理

usermod

-l #更改用户名称
-u id username #更改用户id
-g id username #更改主组id(初始组id)
-G id username #更改用户附加组身份
-aG id username #添加用户附加组身份
-c “word” username #更改用户说明
-d dir username #更改家目录指向(不会更改真实目录的名字)
-md dir username #更改家目录指向同时更改家目录名称

-s /dir username #更改默认shell

-L #冻结账号

-G #解锁

groupmod - g ##更改用户组id

七、用户认证信息管理

1.用户名称

passwd - S lee ##查看密码状态

2.用户加密字符

passwd lee ##更改lee密码 (只有root可以执行)

“echo 123 | passwd – stdin lee” #超级用户也可用此命令更改用户密码(密码改为123)

passwd 普通用户改密码

Changing password for user lee.
Current password : # 输入原始密码
New password : ## 输入新密码( 8 位以上无序数字 + 无序字母组合)
Retype new password : ## 重复输入
passwd : all authentication tokens updated successfully.

#冻结认证)
passwd - l lee ##冻结账号认证

passwd - u lee ##解锁账号认证

passwd - d lee #密码删除 (密码为空,点一下就可进入)

3.密码使用天数

  • 从 1970 - 1 - 1 算其到今天的时间
    passwd - e lee ##修改默认使用时间为0,重新登陆需更改一次密码才能进入

chage - d 0 lee ##账号必须改密码才能登陆系统

4.密码最短有效期
passwd - n 1 lee ##lee在1天内不能改密码
chage -m 0 lee ##效果相同(lee在0天内不能改密码)

5.密码最长有效期
passwd - x 40 lee ##40天内 lee 用户必须更新密码否则会被冻结

chage - M 30 lee ##效果相同(30天内 lee 用户必须更新密码否则会被冻结)

6.密码过期警告
passwd - w 2 lee ##账号过期前警告时间2天

chage -W 1 lee ##效果相同 (账号过期前警告时间1天)

7.认证非活跃天数
passwd - i 2 lee ##账号认证最大时间超过后还能用2天(帐号过期之后还能用这个账号2天)

chage -I 1 lee ##效果相同 ( 大写的i )

8.账号认证到期时间
chage - E " 2020 - 05 - 11 " ## 到 2020 - 5 - 11 这天账号会立即过期,被冻结

9.未启用功能

八、用户权力下方

#在系统中普通用户是无法执行系统管理命令的 ,
如果需要普通用户执行系统管理动作那么需要 root 用户来进行授权

普通用户授权方式 “sudo”

作用: 可以使普通用户使用指定的用户身份呢运行命令

授权方法:
visudo ## 此命令作用是编辑 / etc / sudoers 并提供语法检测

在文件的100行左右 ##代码规范性

username hostname = (newusername) [NOPASSWD : ] / command, / command1

#lee 用户 在 linux.wesots.com 主机 = (用超级用户身份) 执行 useradd 命令
lee linux.westos.com = (root) / usr / sbin /
useradd

#westos 用户 在 linux.wesots.com 使用超户 免密 执行
useradd 和 userdel
westos linux.wesots.com = (root) NOPASSWD : / usr / sbin /
useradd, / usr / sbin / userdel

测试:
su - lee

sudo useradd westostest ## 在 lee 第一次使用 sudo 命令时需要输入
lee 密码

exit # 退出 lee

su - westos

sudo userdel - r westostest ##westos 可以免密执行userdel 命令

你可能感兴趣的:(Linux,linux)