目录

用户及用户组存在的意义

用户存在的意义

用户组存在的意义

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

用户切换

用户查看

用户切换

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

用户身份信息文件

组身份信息文件

用户环境配置文件模板

用户认证信息文件

用户家目录

用户邮箱文件

用户和用户组建立及删除

用户及用户组的建立

用户及用户组的删除

用户和用户组的信息管理

修改用户信息

修改用户组信息

用户认证信息管理

用户权利下放


用户及用户组存在的意义


用户存在的意义

系统资源是有限的,需要合理分配系统资源。

3A机制:

  1. 身份(Account)
  2. 授权(Author)
  3. 认证(Auth)

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

用户组存在的意义

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

用户组分为两类:初始组和附加族、

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


  • 计算机对数字敏感        即id
  • 人类对字符串敏感        即文字或名称

id   <------------------------> 名称

必须要记录到文件当中用户才能存在

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

用户组的存在方式就是 /etc/passwd 文件中的一行字符

用户切换


用户查看

whoami        #查看当前用户
id            #查看用户id信息
id -u         #查看用户的用户id
id -g         #查看用户主组id
id -G         #查看用户所有组的id
id -n         #显示名称,不能单独使用,需要和其他参数一起配合使用用户id范围:
0-65535
0:    #超级用户ID
1-999:    #系统自用ID
1000-65535    #用户级ID#以上ID设定规则都被记录在/etc/login.defs

将参数合并与单独显示的作用相同

-n参数不能单独使用

用户切换

图形切换:

图形切换浪费资源且速度很慢

gnome-session-quit --force  强制登出

命令切换:

su - username    #切换到username并切换到用户环境下
username    如果root---->commonuser不需要密码commonuser---->root需要密码commonuser---->commonuser需要密码su username     #切换到用户,但是还是当前的环境下

注意:在做用户切换时当使用完毕用户身份及时使用exit命令退出,不要在一个shell中反复执行su命令,否则会造成环境错乱

su命令有无- 的区别:-代笔进入该用户的家目录环境,没有的话则会进入相应用户的当前目录中,使得环境错乱

实例: 

在root用户下可以打开gedit

两次切换用户到root时发现gedit命令因为连接拒绝无法执行

原因分析: 

ps axu查看进程信息发现,在从westos用户切换到root用户时执行的命令需要先通过上层的westos用户才能执行,但gedit命令westos用户无法执行,所以导致即使在root用户下也无法执行。

祸根:没有Ctrl+d退出当前用户

注意:

每切换一次用户就会增加一个bahs进程,即会占用系统资源,所以每次切换用户完毕后应及时Ctrl+d退出当前用户

​​​​​​​

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


文件名称 目录 内容
用户身份信息文件 /etc/passwd 包括用户名称,用户密码,用户ID,用户主组ID,用户说明,用户家目录,用户默认shell
组身份信息文件 /etc/group 包括组名称,组密码,组ID,组的附加成员
用户环境配置文件模板 /etc/skel/.*   -
用户认证信息文件 /etc/shadow  用户密码
用户家目录 /home/username -
用户邮箱文件 /var/spool/mail/username -

/etc/passwd

/sbin/nolgin是指用户使用shell时是免密登陆

/bin/bash

用户和用户组建立及删除


监控用户及用户组建立删除的命令

监控的作用:使得命令的效果可视化

watch -n 1 "tail -n 4 /etc/passwd /etc/group"
每隔一秒执行一次“”中的命令
Crtl + c退出监控界面

用户及用户组的建立

useradd Donnie    #建立名为Donnie的用户
useradd -u id Donnie    #建立指定用户ID的用户Donnie
useradd -g id Donnie    #建立指定主组ID的用户Donnie
useradd -G id Donnie    #建立指定附加组ID的用户Donnie
useradd -M Donnie        #建立用户Donnie时不建立家目录
useradd xxxxx Donnie    #建立指定用户说明xxxxxx的用户Donnie
useradd -s 指定目录 Donnie    #建立指定shell的用户Donniegroupadd Jobbin    #建立组名为Jobbin的主组
groupadd -g id Jobbin    #建立指定ID的主组Jobbin

 

创建用户并设置其组的时候,该组必须存在才能添加

 同样附加组必须存在才能将其作为新用户的附加组

添加组并设置组的id 

系统自用账号,不对外开放交互界面

/sbin/nologin/

用户及用户组的删除

userdel -r Donnie    #删除名为Donnie的用户(同时删除他的用户和组)groupdel Jobbin       #删除名为Jobbin的用户组

用户和用户组的信息管理

修改用户信息

usermod    -l  westos  Donnie    #修改Donnie的名称为westos
usermod    -u  id    Donnie      #修改Donnie的用户ID
usermod    -g  id    Donnie    #修改Donnie的主组
usermod    -G  id    Donnie    #修改Donnie的附加组
usermod    -aG id    Donnie    #添加Donnie的附加组
usermod    -c  xxxxxx    Donnie    #更改用户说明
usermod    -d  /xx/xxx    Donnie    #更改家目录指向
uerrmod    -s  xxxxx    Donnie    #更改默认shell
usermod    -L  Donnie     #冻结Donnie账号
usermod    -U  Donnie    #解锁Donnie

修改用户组信息

groupmod -g id Jobbin    #修改Jobbin的用户组ID

注意:这里的id应该是不存在的

用户认证信息管理

/etc/shadow

用户名称:用户密码的加密字符;用户密码最后一次被修改的时间;密码左端有效期;密码最长有效期;密码过期前警告期:账号非活跃期:账号到期时间:用户自定义

passwd -S Jobbin    #查看密码状态
passwd Jobbin    #修改用户Jobbin的密码,只有超级用户可以
echo 123 | passwd --stdin Jobbin
passwd -l Jobbin    #冻结账号认证
passwd -u Jobbin    #解锁账号认证
passwd -d Jobbin    #删除密码
passwd -e Jobbin    #修改默认使用时间
chafe -d 0 Jobbin    #账号必须修改密码才能登录系统
passwd -n 1 Jobbin    #密码最短有效期
chage -m 1 Jobbin    #修改密码最短有效期
passwd -x  40 Jobbin    #用户必须更新密码否则会被冻结
chage -M 30 Jobbin    #密码过期警告
passwd -w Jobbin    #账号过期前警告时间
chage -W 1 Jobbin    #修改账号过期前警告时间
passwd -i 2  Jobbin    #账号认证最大时间超过后还能使用多长时间
chage -I 1 Jobbin    #修改账号认证最大时间超过后还能使用多长时间
chage -E "yyyymmdd" Jobbin       #账号冻结时间

用户权利下放


在系统中普通用户时无法执行系统管理命令,如果需要普通用户执行系统管理操作那么需要超级用户来授权。

普通用户授权方式:使用“sudo”作用:可以使普通用户使用指定的用户身份运行命令

授权方法:

visudo:此命令作用是编辑/etc/sudoers并提供语法检测,而vim不会提供语法检测,如果有错误会导致文件出错,权力下放失败

出错时会显示:

此时按下e表示继续编辑

在文件的100行左右

:100跳转到文件的第100行

实例:想要在bing用户下使用useradd命令

1、确定用户想要执行命令的主机的主机名称:hostname

2、确定该命令的位置:which useradd

3、使用visudo将权力写进文件中

注:

a)、后续需要再添加命令,再第一个命令位置后+,和space空格即可,再多的命令以此类推

b)、后续需要让该用户免密执行命令可在命令的位置前添加NOPASSWD: 空格(后期执行命令则不会再输入密码)

该行表示的是: bing用户可以在主机vm1中以root用户身份执行useradd命令

4、读取visudo文件中权力下放的内容并使其生效

第一次登陆为了安全起见,需要输入该用户(bing)的密码,再次使用该命令则不用再输入密码了

测试: 用户test创建成功!

​​​​​​​​​​​​​​

Linux操作系统基础之用户管理相关推荐

  1. Linux操作系统基础之软件管理

    目录 一.Linux中软件包的类型 1.DEB 2.RPM(RPM软件包管理器) 3.bz2/gz/xz 二.软件包的名称及结构 三.rpm软件包管理命令 四.本地软件仓库的搭建 1.系统软件仓库的作 ...

  2. linux基础操作与实践,Linux操作系统基础与实践

    <21世纪高等院校计算机网络工程专业规划教材:Linux操作系统基础与实践>由清华大学出版社出版. ¥19.18定价:¥29.50(6.51折) /2014-06-01 <Linux ...

  3. linux远程执行迷路,linux操作系统基础

    Linux的基本原则 1.由目的单一的小程序组成:组合小程序完成复杂任务 2.一切皆文件 3.尽量避免捕获用户接口 4.配置文件保存为纯文本格式 linux操作系统基础及常用命令 在bash下一般管理 ...

  4. Linux操作系统基础知识学习

    Q1.什么是GNU?Linux与GNU有什么关系? A: 1)GNU是GNU is Not Unix的递归缩写,是自由软件基金会(Free Software Foundation,FSF)的一个项目, ...

  5. Linux操作系统基础教程

                             Linux操作系统基础教程 福州大学信息学院计算机系 刘延华 2003.2 目 录 前言 2 第一讲 Linux基础 2 一.什么是Linux? 2 ...

  6. 第1课:Linux操作系统基础【DevOps基础培训】

    第1课:Linux操作系统基础 --DevOps基础培训 1. 云主机.公网IP 1.1 公网ip和私网ip 只有公网ip是能够连接互联网的,私网IP 一般只用作局域网 我们能够上网靠的是isp组织分 ...

  7. Linux操作系统基础 Intel32位系统架构总览

    前言 说是Linux操作系统基础,其实应该是Intel IA-32架构,但是以学习Linux操作系统为目的,故而称为<Linux操作系统基础>.本部分开始主要讲解80x86保护模式下基本概 ...

  8. 【转】聊聊Linux操作系统中的显示管理器及如何更换

    转自:聊聊Linux操作系统中的显示管理器及如何更换 - linux-123 - 博客园 聊聊Linux操作系统中的显示管理器及如何更换 | <Linux就该这么学> 什么是 Linux ...

  9. linux中进程的用户管理

    linux中进程的用户管理 每个进程都拥有真实的用户.组(uid.gid),有效的用户.组(euid.egid),保存的设置用户.组(suid.sgid),还有linux中专门用于文件存储存取的用户. ...

最新文章

  1. IPFS Series -- Bitswap Protocol
  2. 使用CInternetSession获取utf-8页面中文乱码问题解决方法
  3. 软件过程软件Scrum敏捷开发
  4. 一款App基于mPaaS小程序如何进行改造?
  5. 威纶通触摸屏直接与台达变频器进行MODBUS RTU通信的具体方法(图文)
  6. 开始刷题--《C语言经典100题》
  7. 【图像加密】基于Arnold置乱图像加密解密Matlab代码
  8. 微信公众号、订阅号、服务号、企业号的区别
  9. CPU飙高和内存飙高等等的一般处理步骤
  10. 超人视觉怎么样/机器视觉培训适合报培训班吗
  11. 首届“梧桐杯”大数据应用创新大赛复赛晋级名单发布
  12. DAGAGUARD追加归档方式迁移到rac集群
  13. 关于LANDesk我们知道些什么
  14. 向Linux增加一个系统调用或内核模块
  15. Android | HEIF图片格式显示问题
  16. php 搜索引擎包含哪些技术,浅谈三大搜索引擎爬虫性感 B-G-B
  17. word 中字号与数字(磅pt)对应关系
  18. latex 图片、表格、定义、理论 简单示例
  19. 快速完成小程序转App的方法
  20. 【ps】photoshop 入门

热门文章

  1. 关于买房提前还款问题
  2. 大型SI类系统研发中的项目管理(转)
  3. 使用easypoi操作excel
  4. Hacked by 1BYTE
  5. [JZOJ]2109 清兵线 题解
  6. Facebook Bows to Pressure Over Privacy
  7. NOC·核桃编程马拉松复赛低年级组 A 卷真题
  8. 易于设置的倒计时页面Easy countdown
  9. linux系统制作qcow2,制作qcow2镜像
  10. 云聚创新力量,助力多云互联:Tungsten Fabric在联通沃云峰会2019上分享开源SDN