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

2024-06-08 22:36

本文主要是介绍网络安全快速入门(十五)(下)手动创建用户及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文件,说明该命令执行成功!!

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

这篇关于网络安全快速入门(十五)(下)手动创建用户及su,sudo命令的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1043498

相关文章

Android 悬浮窗开发示例((动态权限请求 | 前台服务和通知 | 悬浮窗创建 )

《Android悬浮窗开发示例((动态权限请求|前台服务和通知|悬浮窗创建)》本文介绍了Android悬浮窗的实现效果,包括动态权限请求、前台服务和通知的使用,悬浮窗权限需要动态申请并引导... 目录一、悬浮窗 动态权限请求1、动态请求权限2、悬浮窗权限说明3、检查动态权限4、申请动态权限5、权限设置完毕后

使用Python快速实现链接转word文档

《使用Python快速实现链接转word文档》这篇文章主要为大家详细介绍了如何使用Python快速实现链接转word文档功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 演示代码展示from newspaper import Articlefrom docx import

TP-Link PDDNS服将于务6月30日正式停运:用户需转向第三方DDNS服务

《TP-LinkPDDNS服将于务6月30日正式停运:用户需转向第三方DDNS服务》近期,路由器制造巨头普联(TP-Link)在用户群体中引发了一系列重要变动,上个月,公司发出了一则通知,明确要求所... 路由器厂商普联(TP-Link)上个月发布公告要求所有用户必须完成实名认证后才能继续使用普联提供的 D

Python创建Excel的4种方式小结

《Python创建Excel的4种方式小结》这篇文章主要为大家详细介绍了Python中创建Excel的4种常见方式,文中的示例代码简洁易懂,具有一定的参考价值,感兴趣的小伙伴可以学习一下... 目录库的安装代码1——pandas代码2——openpyxl代码3——xlsxwriterwww.cppcns.c

使用Python在Excel中创建和取消数据分组

《使用Python在Excel中创建和取消数据分组》Excel中的分组是一种通过添加层级结构将相邻行或列组织在一起的功能,当分组完成后,用户可以通过折叠或展开数据组来简化数据视图,这篇博客将介绍如何使... 目录引言使用工具python在Excel中创建行和列分组Python在Excel中创建嵌套分组Pyt

Oracle数据库如何切换登录用户(system和sys)

《Oracle数据库如何切换登录用户(system和sys)》文章介绍了如何使用SQL*Plus工具登录Oracle数据库的system用户,包括打开登录入口、输入用户名和口令、以及切换到sys用户的... 目录打开登录入口登录system用户总结打开登录入口win+R打开运行对话框,输php入:sqlp

解决IDEA使用springBoot创建项目,lombok标注实体类后编译无报错,但是运行时报错问题

《解决IDEA使用springBoot创建项目,lombok标注实体类后编译无报错,但是运行时报错问题》文章详细描述了在使用lombok的@Data注解标注实体类时遇到编译无误但运行时报错的问题,分析... 目录问题分析问题解决方案步骤一步骤二步骤三总结问题使用lombok注解@Data标注实体类,编译时

Redis的Zset类型及相关命令详细讲解

《Redis的Zset类型及相关命令详细讲解》:本文主要介绍Redis的Zset类型及相关命令的相关资料,有序集合Zset是一种Redis数据结构,它类似于集合Set,但每个元素都有一个关联的分数... 目录Zset简介ZADDZCARDZCOUNTZRANGEZREVRANGEZRANGEBYSCOREZ

MySQL分表自动化创建的实现方案

《MySQL分表自动化创建的实现方案》在数据库应用场景中,随着数据量的不断增长,单表存储数据可能会面临性能瓶颈,例如查询、插入、更新等操作的效率会逐渐降低,分表是一种有效的优化策略,它将数据分散存储在... 目录一、项目目的二、实现过程(一)mysql 事件调度器结合存储过程方式1. 开启事件调度器2. 创

mysql外键创建不成功/失效如何处理

《mysql外键创建不成功/失效如何处理》文章介绍了在MySQL5.5.40版本中,创建带有外键约束的`stu`和`grade`表时遇到的问题,发现`grade`表的`id`字段没有随着`studen... 当前mysql版本:SELECT VERSION();结果为:5.5.40。在复习mysql外键约