网络安全快速入门(十五)(下)手动创建用户及su,sudo命令

15.8 序言

前面我们已经大概了解了创建用户一些相关文件,接下来我们来手动创建用户,话不多说,我们直接开搞!!!

15.9 手动创建用户:

一般来讲,我们创建用户通过useradd和passwd命令来创建,还有一种方法,纯手动创建用户,这里我们来详细了解一下:

15.9.1 手动创建用户完成的操作

大概需要完成的操作如下:

  1. /etc/passwd添加一行
  2. /etc/shadow添加一行
  3. /etc/group添加一行
  4. 创建用户家目录
  5. 创建用户邮件文件

我们通过例子来对手动创建用户进行详细讲解:

例子:

手动创建一个和用户,用户名为ch230,用户uid为2260,gid为2260,组名称与用户名称同名,家目录在/home/ch230,描述为ch226,密码为123456,最少试用三天才能修改,最长使用三十天,到期前五天发送修改密码提示。

15.9.2 具体操作:

1.创建用户基本信息,

我们需要在/etc/passwd下添加一行,具体操作如下:

vi /etc/passwd
在passwd下插入下面行
ch230:x:2260:2260:ch226:/home/ch230:/bin/bash

操作完成后如下图

2.检查用户

我们来通过id命令确认一下有无该用户。

id ch230

看结果:

可以发现用户已存在,说明passwd文件已经生效,接下来我们继续下一步,

3.创建用户密码

在/etc/shadow添加一行,具体操作如下:

首先来创建加密密码,利用下述命令来进行创建:

openssl passwd -1 -salt "随机数字"
之后敲回车输入密码
123456
3.5 使用openssl来生成密码
选项说明:
  • -1 :表示md5加密算法
  • -salt:表示加密的时候插入杂质(提高安全性)、

我们看操作及反馈

我们现在复制上图最后一行字符,并且在/etc/shadow下添加一行,添加如下

ch230:$1$498498$1vCOkczp/mzNhtFj4OU8J1:19879:3:30:5:::

注意:(因为该文件不可读写执行,因此我们需要在末行模式用wq!才可退出此文件!!)
在这一步完成后,我们就可以去登录用户了,登陆后状态如下:

这是因为我们没有做用户家目录,所以导致会出现以下情况,我们将会在配置用户组之后解决这个问题!

4.创建组

接下来我们来配置用户组,与passwd和shadow文件一样,我们同样需要在下面添加一行,添加内容如下

ch230:x:2260:

ok,组就搞完了,接下来我们来做用户家目录

5. 创建用户家目录

我们已经知道,用户家目录模板位于/etc/skel中,接下来我们就需要移动该目录及目录里的文件并修改文件名,及文件的属主属组,

具体操作如下

cp -r /etc/skel /home/ch230
cd /home
chown -R ch230.ch230 ch230/

我们来看一下修改后的权限

我们重新登陆看一下是不是还是刚才一样吗,没有配置环境变量:


ok,这里已经创建完毕了,接下来我们来进行最后一步!

6.创建用户邮件

这里我们只需要在/var/spool/mail下创建用户同名目录即可,具体步骤如下:

cd /var/spool/mail/
touch ch230
chmod 660 ch230
chown ch230.ch230 ch230

我们来看结果:

最后我们登录查看用户状态:

ok,手动创建用户到这里就算完成!!

补充:

        我们在删除用户的时候他不会删除用户的家目录及文件目录,因此我们需要手动删除用户家目录及文件目录才能保证下次创建用户家目录及邮件目录才能不会出错!!!

15.10 su命令及sudo命令

su命令及sudo命令,本质上都是让用户利用root身份去执行命令,从而解决普通用户权限太小,无法去执行命令的问题,接下来我们来一个一个了解

15.10.1 su命令

su命令,简单来说就是切换用户,切换成管理员用户自然就拥有root的身份,使用root的命令也是理所当然的,su命令优缺点如下

优点

  • 使用简单

缺点:

  • root密码容易泄露
  • 普通用户执行操作不可控

格式:

su 用户名

这里我们需要注意的是:我们通过su命令可以进行任何可登录用户的切换,(只要你知道该用户密码),具体操作如下

我们现在是root身份,现在我们切换用户至ch230,格式如下:

su ch230

看结果:

我们已经切换用户为ch230了,因为root用户切换其他用户的时候不需要密码,所以可以直接切换,但普通用户切换root用户和其他用户需要输入密码才可以登录!!

我们直接下一个例子:

ch230切换为root用户

su root

如下图

我们看到,这里需要密码才可进行登录,否则无法登录该用户!!!

输入密码后登陆成功,该指令完成!!

补充:

如果需要退出当前用户的话,输入exit即可退出!!

su命令就先到这里,接下来我们来看sudo命令

15.10.2 sudo命令:

上面我们发现,su命令必须知道密码才可进行操作,这就有很大的安全隐患,而且root密码极容易泄露,因此,为了防止这类事件的发生,我们使用sudo命令来让普通用户使用root的命令。sudo命令与su命令的相同点是,都是通过root身份来执行命令,但也有不同点,具体如下:

作用:给普通用户授权,让普通用户执行特定的操作
优点:
  • 不要切换到root用户(不用知道root密码)
  • 用户可执行预定的操作
  • 可以记录每个用户执行过的命令

缺点:

  • 需要进行权限配置

sudo使用跟一般命令使用也不太相同,具体使用方法如下:

第一步:通过 sudo 配置文件为普通用户授权
第二步:普通用户通过sudo命令执行特殊操作
我们一步一步来看,首先我们需要通过sudo文件对用户进行授权,我们要了解sudo配置文件存放的位置:
/etc/sudoers
注意:这里我们不能直接修改配置文件,我们需要下列命令来修改配置文件
visudo

我们进入后跳转至101行,内容如下:

100行具体表示含义如下:

root   ALL = (ALL)   ALL
用户名 主机=(用户名) 全部命令

如果我们在下面添加一行的话,需要修改所有用户名和全部命令即可,例子如下:

授权ch230能够执行root的全部命令

ch230 localhost=(root ALL
如下图:
ok,现在我们来尝试一下是否成功
利用ch230来执行root权限,查看/etc/shadow文件
第一步:sudo命令
格式如下
sudo 命令

具体操作如下:

sudo cat /etc/shadow

看结果

出现一下字符,说明sudo成功,我们输入ch230密码:123456

输入之后看结果

ok,现在我们成功查看/etc/shadow文件,说明该命令执行成功!!

好了,本大章节内容就到这里了,感谢各位大佬的观看,如果失误,还请各位大佬多多指正!再次感谢各位观看,我们下其内容再见!@.@

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

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

相关文章

Docker run 命令常用参数详解

Docker run 命令提供了丰富的参数选项,用于配置容器的各种设置。以下是docker run命令的主要参数详解, 主要参数详解 后台运行与前台交互 -d, --detach: 在后台运行容器,并返回容器ID。-it: 分配一个伪终端(pseudo-TTY&#xff0…

初识C++ · 模拟实现list

目录 前言 1 push_back pop_back 2 迭代器类 2.1 ! 2.2 -- 2.3 * 3 Print_List 4 有关自定义类型 5 有关const迭代器 6 拷贝构造 赋值 析构 Insert erase 前言 有了string,vector的基础,我们模拟实现list还是比较容易的,这里同…

移动端投屏到大屏幕的操作详解

如果你懒得折腾电脑、电视或其他大屏设备上的影视软件安装及配置,可以选择直接在手机端上将影片投屏到电脑、电视或其他大屏设备上,这里给大家分享三种手机投屏的方法。 系统自带的投屏功能 不管是安卓、鸿蒙还是苹果操作系统,都自带了无线…

【python】OpenCV—Blob Detection(11)

学习来自OpenCV基础(10)使用OpenCV进行Blob检测 文章目录 1、cv2.SimpleBlobDetector_create 中文文档2、默认 parameters3、配置 parameters附录——cv2.drawKeypoints 1、cv2.SimpleBlobDetector_create 中文文档 cv2.SimpleBlobDetector_create 是 O…

关于使用南墙waf防护halo网站主页请求404报错的解决方案

文章目录 环境说明问题展示原因探究解决方法 环境说明 在1panel应用商店,部署南墙waf(docker版)halo(2.16.1社区版)注意部署过程中注意uuwaf必须勾选允许外部访问,halo可以不勾选[这里为了证明确实是南墙waf的原因,选择勾选] 问题展示 使…

ChatGPT-4o体验demo

OpenAI 最近推出了其最新的人工智能语言模型——GPT-4O。该模型是在原有 GPT-4 的基础上进行优化而成,旨在提升生成质量和响应速度。GPT-4O 采用了更加高效的架构设计,使其在处理复杂文本时表现出更快的速度和更高的准确性。GPT-4O 在训练过程中融入了最…

3D打印随形水路:模具水路的革命性技术

在快速发展的模具制造行业中,3D打印技术以其独特的优势正在引领一场技术革命。其中,3D打印随形水路技术,凭借其灵活性和定制化设计的能力,为模具带来了前所未有的变革。 模具3D打印随形水路技术,是一种利用3D打印技术制…

【RISC-V】站在巨人的肩膀上——看开源芯片、软件生态、与先进计算/人工智能/安全的结合

目录 会议议程前言开源处理器芯片的机遇与挑战,孙凝晖,中国工程院院士RISC-V原生基础软件栈,武延军,中国科学院软件研究所RISC-V推动新型架构创新,孟建熠,浙江大学 专题一:开源芯片开源高性能 R…

Vue3【十二】09Computed计算属性

Vue3【十二】09Computed计算属性 计算属性 获取全名 这种方式是只读的不能修改 这样定义fullName是一个计算属性&#xff0c;可读可写 案例截图 目录结构 代码 Person.vue <template><div class"person"><h1>我是 Person 组件</h1>姓&…

Spring异步任务@Async的默认线程池执行器是如何初始化的

Spring异步任务Async的默认线程池执行器&#xff0c;是从哪里来&#xff1f;是如何初始化的&#xff1f; 结论先行 异步任务Async的默认线程池执行器是通过TaskExecutionAutoConfiguration#applicationTaskExecutor自动注入的。 异步任务的线程池执行器是如何初始化的&#…

线性表和链表

一&#xff0c;线性结构 1.Array Array文档&#xff1a;可以自行阅读相关文档来了解Array class array.array(typecode[, initializer]) array.append(x)&#xff1a;添加元素到数组末尾 array.count(x)&#xff1a;计算元素出现次数 array.extend(iterable)&#xff1a;将迭代…

go语言实战--基于Vue3+gin框架的实战Cetide网项目(讲解开发过程中的各种踩坑)

最近被要求学习go语言开发&#xff0c;也就做一个项目实战巩固一下&#xff0c;也分享一下关于gin框架的实战项目 &#xff08;后续应该还是会继续学习Java&#xff0c;这一期还是做一个govue的&#xff09; 经过一段时间的开发过后&#xff0c;感觉现在的开发效率要快不少了&…

Javascript全解(基础篇)

语法与数据类型 语法 var\let\const var 声明一个变量&#xff0c;可选初始化一个值。 let 声明一个块作用域的局部变量&#xff0c;可选初始化一个值。 const 声明一个块作用域的只读常量。 用 var 或 let 语句声明的变量&#xff0c;如果没有赋初始值&#xff0c;则其值为 …

技术革命的十年:计算机、互联网、大数据、云计算与AI

近10年来&#xff0c;计算机、互联网、大数据、云计算和人工智能等技术领域发展迅速&#xff0c;带来了巨大的变革和创新。以下是各个领域的发展历史、现状、问题瓶颈、未来趋势以及可能的奇点。 计算机技术&#xff1a; 发展历史&#xff1a; 过去&#xff1a;过去十年间&am…

循环语句大揭秘:while、do-while、for、foreach你都掌握了吗?

哈喽&#xff0c;各位小伙伴们&#xff0c;你们好呀&#xff0c;我是喵手。运营社区&#xff1a;C站/掘金/腾讯云&#xff1b;欢迎大家常来逛逛 今天我要给大家分享一些自己日常学习到的一些知识点&#xff0c;并以文字的形式跟大家一起交流&#xff0c;互相学习&#xff0c;一…

Nextjs学习教程

一.手动创建项目 建议看这个中文网站文档,这个里面的案例配置都是手动的,也可以往下看我这个博客一步步操作 1.在目录下执行下面命令,初始化package.json文件 npm init -y2.安装react相关包以及next包 yarn add next react react-dom // 或者 npm install --save next react…

opera打不开网页最简单的解决办法

如果以上为解决问题&#xff0c;继续下面操作 检查网络连接&#xff1a; 确认您的电脑已连接到互联网。 检查网络连接是否稳定&#xff0c;网络速度慢或链路拥堵可能会导致网页加载失败。 修改Local State文件&#xff1a; 关闭Opera浏览器。 定位到Opera浏览器的配置…

【NI国产替代】PCIe 高速采集卡, 8 位双通道数字化仪器,采集卡最高采样率高达 5 GS/s 模拟带宽高达 500 MHz

• 8 位双通道数字化仪器 • 最高采样率高达 5 GS/s • 模拟带宽高达 500 MHz • 采用 PCIe 3.0 x 8 接口 • 基于 Xilinx Kintex UltraScale, XCKU040 • 提供硬件、FPGA、软件定制服务 高速采集卡是一款 8 位双通道数字化仪器&#xff0c;采集卡最高采样率高达 5 GS/s 模…

客户案例|Zilliz Cloud 助力点石科技转型 AI 智能服务商

福建点石科技网络科技有限公司成立于2010年&#xff0c;是国家高新技术企业&#xff0c;阿里云、蚂蚁金服等大厂海内外生态合作伙伴ISV。在餐饮、零售、酒店、旅游、商圈的行业定制化服务化上有深厚积累&#xff0c;在境内外做了大量标杆性软件项目&#xff0c;如东南亚RWS圣淘…

如何将HTTP升级成HTTPS?既简单又免费的方法!

在当今数字化时代&#xff0c;网络安全已成为用户和企业关注的焦点。HTTPS作为一种更加安全的网络通信协议&#xff0c;正逐渐取代传统的HTTP成为新的标准。对于许多网站管理员和内容创作者来说&#xff0c;如何免费升级到HTTPS是一个值得探讨的问题。本文将详细介绍一些免费的…