企业用户管理passwd/sudo工作原理/chage/用户组/切换用户及提权管理/chown知识详谈-6000字

passwd

用户自己给自己设置密码:直接passwd

root用户给普通用户设置密码:passwd+用户名

stdin
从标准输入获取信息
在这里插入图片描述

批量创建用户:

bash脚本:

for n in {01…10}
do
useradd wulin$n
done
n先取01然后循环,再取再执行
在这里插入图片描述
在vim user.list 里面写入:
把用户和密码用冒号进行分割,然后放入到文件里面:
在这里插入图片描述
在这里插入图片描述
cat 进行查询user.list内容

seq方式批量创建用户

[root@calms ~]# seq -w 10|sed -rn ‘s#(.)#wulin\1#gp’
在这里插入图片描述
[root@calms ~]# seq -w 10|sed -rn 's#(.
)#wulin\1:\1#gp’
在这里插入图片描述
然后再重定向到uesr.list里面,完成批量生成用户和密码列表1:
在这里插入图片描述
批量设置用户名和密码列表2:

[root@calms ~]# seq -w 10|sed -rn 's#(.*)#useradd wulin\1;echo \1#gp'
useradd wulin01;echo 01
useradd wulin02;echo 02
useradd wulin03;echo 03
useradd wulin04;echo 04
useradd wulin05;echo 05
useradd wulin06;echo 06
useradd wulin07;echo 07
useradd wulin08;echo 08
useradd wulin09;echo 09
useradd wulin10;echo 10
[root@calms ~]# seq -w 10|sed -rn 's#(.*)#useradd wulin\1;echo \1|passwd--stdin wulin\1#gp'
useradd wulin01;echo 01|passwd--stdin wulin01
useradd wulin02;echo 02|passwd--stdin wulin02
useradd wulin03;echo 03|passwd--stdin wulin03
useradd wulin04;echo 04|passwd--stdin wulin04
useradd wulin05;echo 05|passwd--stdin wulin05
useradd wulin06;echo 06|passwd--stdin wulin06
useradd wulin07;echo 07|passwd--stdin wulin07
useradd wulin08;echo 08|passwd--stdin wulin08
useradd wulin09;echo 09|passwd--stdin wulin09
useradd wulin10;echo 10|passwd--stdin wulin10
然后在后面|bash 可以添加用户,同时设置密码

批量设置密码命令

第一种方式:

然后chpasswd <user.list

su - wulin01输入密码成功,就完成了批量设置用户密码

如果出现this account is currently not available原因是
昨天小编有个练习配置文件,是否改回原来状态:

cat /etc/default/useradd文件中改
SHELL=/bin/bash
vim /etc/passwd
setnu(显示行号)
不删除进行替换
:比如28,37s#/sbin/nologin#/bin/bash保存
然后su - wulin01输入密码测试完成
会发现有时候成功/有时候出现su:鉴定故障

cat /etc/passwd查看密码信息
在这里插入图片描述
发现这里没有生效!
我们通过

第二种方式:

cat user.list|chpasswd

把内容先读出来通过管道的方式执行!

cat /etc/shadow
在这里插入图片描述
然后切换会发先成功!

通过nodepad++批量生成用户名:
按住ALT,然后将过百哦第1行拉到第10行,输入wulin 然后按住alt+从,设置生成数字序列

chage查看和更改密码属性

-l 查看用户和更改密码属性
在这里插入图片描述
-e 设定账户过期时间
usderadd -e “2040/5/22” wulin1

[root@calms ~]# useradd -e  "2040/5/22" wulin1
[root@calms ~]# chage -l wulin1
最近一次密码修改时间					:416, 2024
密码过期时间					:从不
密码失效时间					:从不
帐户过期时间						:522, 2040
两次改变密码之间相距的最小天数		:0
两次改变密码之间相距的最大天数		:99999
在密码过期之前警告的天数	:7

useradd -e和chage -E是等价的

案例:
要求wulin用户7天内不能更改密码,60天以后必须修改密码,过期前10天通知用户,过期后30天禁止用户登录

修改的文件/etc/shaow
产看chage -l 用户名

方法1:
passwd -n 7 -x 60 -w 10 -i 30 wulin
在这里插入图片描述
在这里插入图片描述
如果设置很长的时间,会发现密码过期时间等内容会变成从不
在这里插入图片描述

方法2:
chage -m7 -M60 -w10 -I30 wulin

用户组相关的命令(了解)

groupadd 添加用户组
在这里插入图片描述
groupde1删除用户组
在这里插入图片描述

切换用户及提权管理命令

su 切换用户角色,从A用户切换到B用户

su - wulin # -表示携带环境变量
在这里插入图片描述
显示root环境变量
在这里插入图片描述
还是root家目录,这是没有加 - 的问题
在这里插入图片描述

-c

测试:
-c 以wulin用户身份执行命令,然后退回当下用户
在这里插入图片描述
用普通用户登录管理,su - root 切换到root管理。
普通用户就必须知道root密码,登录到root,他可以改了密码,你登不上去,适合运维部门人少的时候。

弊端:
1.切换到root
2.拥有所有权限

更规范的管理方法:
不切换到root,在操作命令同时,拥有root权限,一旦操作完成,权限就会消失,而且不需要root密码

sudo配置文件:/etc/sudoers

通过visudo管理sudo配置文件/etc/sudoers

[root@calms ~]# ls /etc/sudoers -l
-r--r-----. 1 root root 4431 415 11:02 /etc/sudoers

root ALL =(ALL) ALL
用户 主机 切换的角色 执行命令

设置wulin用户在所有主机上,可以切换到所有的角色,执行所有的命令
wulin ALL =(ALL) ALL
在visudo第103行下手动配置:
在这里插入图片描述
在wulin(普通用户去执行root(管理员已经给普通用户)权限过程)
在这里插入图片描述
但是这也有很大问题,root管理员给了普通用户权限,普通用户可以切换到root管理员
在这里插入图片描述
权限太大,我们可以设置wulin(普通用户)执行root管理员权限大小,先查找普通用户路径

[root@calms ~]# which useradd
/sbin/useradd
在visudo管理器设置
在这里插入图片描述
测试:
普通用户想要删除/,root管理员限制了他的权力

在企业中,别人需要使用root权限,先看他的工作内容(越具体/越详细越好,给他相对应的权限)

设置粒度,最小的一个命令,运行他执行这个命令时拥有root权限
在这里插入图片描述

sudo优点
1.不是root用户
2.指定命令拥有root权限,可以完成管理员分配的任务
3.不需要root密码

sudo 工作原理流程图

在这里插入图片描述
在这里插入图片描述
我们可以把这个时间戳删掉(文件),需要再验证,过分钟验证一次,它会不断地进行读取:
在这里插入图片描述

查看用户信息命令介绍

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

cat /var/log/secure查看远程登录(安全)信息日志

在这里插入图片描述

更改文件属性

更改用户所属用户和组:chown

chown 用户.用户组 文件 #.可以用:进行替代
chown 用户 文件 #更改用户
chown . 用户组 #更改用户组等价:chargp 用户组 文件

前提:用户和组必须要进行存在
在这里插入图片描述

-R参数 递归更改
在这里插入图片描述

更改用户组:chgrp

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/821188.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java中的函数式编程1

Functional Programming In OOP 引言 函数式编程是一种编程泛型&#xff0c;将所有的运算都视为函数&#xff0c;只要输入相同的数据&#xff0c;就能得到稳定的输出。然而由于它的抽象程度高&#xff0c;离计算机硬件远&#xff0c;因此并没有被工业界广泛使用。然而在许多面…

掌握App用户注册情况,Xinstall来帮忙

在移动互联网时代&#xff0c;App已经成为企业与用户之间的重要桥梁。然而&#xff0c;对于许多App开发者来说&#xff0c;如何精准地获取和分析用户注册数据&#xff0c;一直是一个令人头疼的问题。幸运的是&#xff0c;有了Xinstall这样的一站式App全渠道统计服务商&#xff…

java八股文知识点讲解(个人认为讲的比较好的)

1、解决哈希冲突——链地址法&#xff1a;【第7章查找】19哈希表的查找_链地址法解决哈希冲突_哔哩哔哩_bilibili 2、解决哈希冲突——开放地址法 &#xff1a; 【第7章查找】18哈希表的查找_开放定址法解决哈希冲突_哔哩哔哩_bilibili 3、小根堆大根堆的创建&#xff1a;选择…

Ubuntu 忘记系统密码 如何修改密码

如果你忘记了Ubuntu系统的密码&#xff0c;你可以通过以下方法来修改密码&#xff1a; 通过GRUB引导菜单进入恢复模式 重启系统并进入GRUB引导菜单&#xff1a; 重启Ubuntu系统&#xff0c;并在启动时连续按Shift键&#xff08;或根据系统提示的其他按键&#xff09;&#xf…

Smart - Luogu —— 智能的洛谷

文章目录 安装 Stylus谷歌Edge 安装 Smart - Luogu使用尾声 安装 Stylus link 点击推荐下载&#xff0c;获取 crx 文件 谷歌 先点击右上角三个点&#xff0c;再点击扩展程序&#xff0c;然后点击管理扩展程序&#xff0c;进入管理扩展界面&#xff0c;把开发者模式选上&…

NL2SQL进阶系列(5):论文解读业界前沿方案(DIN-SQL、C3-SQL、DAIL-SQL、SQL-PaLM)、新一代数据集BIRD-SQL解读

NL2SQL进阶系列(5)&#xff1a;论文解读业界前沿方案&#xff08;DIN-SQL、C3-SQL、DAIL-SQL&#xff09;、新一代数据集BIRD-SQL解读 NL2SQL基础系列(1)&#xff1a;业界顶尖排行榜、权威测评数据集及LLM大模型&#xff08;Spider vs BIRD&#xff09;全面对比优劣分析[Text2…

【C++进阶】详解C++类型转换IO流

C类型转换及IO流 一&#xff0c;C语言的类型转换方式二&#xff0c;C的四种强制类型转换方式2.1 static_cast2.2 reinterpret_cast2.3 const_cast2.4 dynamic_cast 三&#xff0c;C语言的输入和输出四&#xff0c;C的标准IO流五&#xff0c;C文件IO流总结 这一节我们来讲解 C的…

数据结构OJ:设计循环队列

题目介绍 本题为LeetCode上的经典题目&#xff0c;题目要求我们设计一种循环队列&#xff0c;满足FIFO原则且队尾被连接在队首之后。 思路讲解 题目中介绍循环队列的好处是可以重复利用空间&#xff0c;所以我们很容易想到在初始化时即开辟指定大小的空间&#xff0c;之后便不…

策略模式:灵活调整算法的设计精髓

在软件开发中&#xff0c;策略模式是一种行为型设计模式&#xff0c;它允许在运行时选择算法的行为。通过定义一系列算法&#xff0c;并将每个算法封装起来&#xff0c;策略模式使得算法可以互换使用&#xff0c;这使得算法可以独立于使用它们的客户。本文将详细介绍策略模式的…

【小贪】大数据处理常用:Pyspark, Pandas

近期致力于总结科研或者工作中用到的主要技术栈&#xff0c;从技术原理到常用语法&#xff0c;这次查缺补漏当作我的小百科。主要技术包括&#xff1a; ✅数据库常用&#xff1a;MySQL, Hive SQL, Spark SQL✅大数据处理常用&#xff1a;Pyspark, Pandas⚪ 图像处理常用&#…

【每日刷题】Day16

【每日刷题】Day16 &#x1f955;个人主页&#xff1a;开敲&#x1f349; &#x1f525;所属专栏&#xff1a;每日刷题&#x1f34d; &#x1f33c;文章目录&#x1f33c; 1. 24. 两两交换链表中的节点 - 力扣&#xff08;LeetCode&#xff09; 2. 160. 相交链表 - 力扣&…

基于小程序实现的4s店管理系统

作者主页&#xff1a;Java码库 主营内容&#xff1a;SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app等设计与开发。 收藏点赞不迷路 关注作者有好处 文末获取源码 技术选型 【后端】&#xff1a;Java 【框架】&#xff1a;ssm 【…

【C++11】智能指针

> 作者&#xff1a;დ旧言~ > 座右铭&#xff1a;松树千年终是朽&#xff0c;槿花一日自为荣。 > 目标&#xff1a;理解在C11中智能指针&#xff0c;自己能模拟实现 4 种智能指针 > 毒鸡汤&#xff1a;白日莫闲过&#xff0c;青春不再来。 > 专栏选自&#xff1…

【halcon】C# halcon 内存暴增 续,找到一个解决方案

这里写自定义目录标题 背景释放临时缓存具体的使用感受背景 在之前的文章《【halcon】C# halcon 内存暴增 》中我们提到了一些会导致内存暴增的原因。 其中一个就是使用了计算复杂的算子,且图片很大时,此时内存就会暴增,而且内存无法被释放。 这次,我在做一个项目时,用到…

深入理解负载均衡:原理及常用算法

摘要&#xff1a; 负载均衡在现代网络架构中扮演着至关重要的角色&#xff0c;它通过分配请求到多个服务器来提高系统的性能、可用性和可伸缩性。本文将介绍负载均衡的基本原理以及常用的负载均衡算法&#xff0c;帮助读者更好地理解和应用负载均衡技术。 引言 随着互联网的迅…

TP5使用group报错:1055 Expression #1 of SELECT list is not in GROUP

使用group报错 Mysql环境是5.7的, 使用了View进行了表连接, 进行了表连接 搬迁到本地后, 查询报错 Syntax error or access violation: 1055 Expression 解决方法1 配置 my.cnf(linux)文件 win下面是 mysql.ini文件 在 mysqld 里加上 sql_modeNO_ENGINE_SUBSTITUTION,STR…

L2-3 完全二叉树的层序遍历

完全二叉树的层序遍历 一个二叉树&#xff0c;如果每一个层的结点数都达到最大值&#xff0c;则这个二叉树就是完美二叉树。对于深度为 D 的&#xff0c;有 N 个结点的二叉树&#xff0c;若其结点对应于相同深度完美二叉树的层序遍历的前 N 个结点&#xff0c;这样的树就是完全…

网络爬虫:定义、应用及法律道德考量

网络爬虫技术在当今数据驱动的世界中发挥着重要作用。本文将从网络爬虫的定义和主要功能&#xff0c;其在业界的应用实例&#xff0c;以及涉及的法律和道德问题三个方面进行深入探讨。 1. 爬虫的定义和主要功能 网络爬虫&#xff0c;也称为网页爬虫或蜘蛛&#xff0c;是一种…

RocketMQ 01 Linux安装

RocketMQ 01 主要内容&#xff1a; 编译安装HelloWorld官网名词 官方网站 http://rocketmq.apache.org GitHub https://github.com/apache/rocketmq Quick Start Linux下使用Maven编译源码安装 Rocketmq4.6需要jdk1.8环境编译和运行 各版本要求 VersionClientBroke…

SGI_STL和Nginx内存池源码剖析--源码移植

将SGISTL内存配置器和Nginx内存池源码&#xff0c;移植到自己的项目中。 源码文件复杂&#xff0c;并且有很多项目中使用不到的宏定义&#xff0c;所以通过改写和移植&#xff0c;可以很好的适应C的其他项目。 SGI-STL源码移植资源-CSDN文库 nginx内存池源码移植资源-CSDN文库…