一篇文章带你彻底搞懂用户与组管理

用户管理

服务器系统版本介绍

  1. windows服务器系统:win2000 win2003 win2008 win2012
  2. Linux服务器系统:Redhat,Centos

Redhat:收费,虽然开源但是收的不是代码费用,而是服务费
Centos:免费

  1. Redhat和Centos是同一家公司的,不过Centos是被收购的,当作免费的;就跟以前的甲骨文oracle一样,oracle作为实际上最大的数据库公司之一,但是他的数据库软件太庞大了,也非常贵,不是特别小巧,很多小公司买不起,也不想用它。

  2. 后来甲骨文公司就收购了一个非常小巧的数据库,名字叫做MySQL,阿里巴巴的淘宝后台数据库就是用的MySQL,但是并不是用的免费的MySQL,而是阿里巴巴给甲骨文公司一笔钱,让他按照阿里巴巴的需求,把MySQL数据库进行改造,改造成适合阿里巴巴且非常安全的一个数据库,然后阿里巴巴就基于MySQL去对功能进行加固和更新,相当于就是花钱买服务,这些都是题外话了;

  3. 现在绝大部分企业都选择用Linux的服务器系统,因为Linux系统是开源的,全球的工程师都可以去编写,所以Linux的漏洞更少,攻击面更少,但缺点是只能用命令操作;windows系统不是开源的,还嘎嘎贵,时不时卡一下来点bug啥的,漏洞相对来说更多,因为除了微软外别的人是不知道这个系统的源代码的,所以修复的程度没有Linux那么高,但是它的图形化的操作界面还是给它留下了大部分忠实的粉丝;

用户概述

  1. 每一个用户登录系统后,拥有不同的操作权限,比如秋寒想用各位的电脑,但是各位害怕秋寒又搞破坏,所以就可以在这台电脑上创建多个用户,你自己作为管理员,秋寒的权限可以被你降低一点,从而限制我不能搞破坏;

  2. 学习用户管理主要还是运用在服务器上,因为在个人电脑上,一般是不需要创建第二个账号的,而服务器就不一样了;

  3. 每个账户都有自己的唯一的SID(安全标识符)(可以理解为身份证号,是唯一的)

  • 系统SID: S-1-5-21-512684513-15461530056-14525198
  • 用户SID: S-1-5-21-512684513-15461530056-14525198-250
  1. 以上的数字不需要记住,只需要能看懂就行;
    每个系统的SID都是随机生成的,用户SID在250之前的就相当于身份证上省份的号码,代表的是系统,这些是随机生成的,而用户UID是:250

值得注意的是,在windows中,系统管理员Administrator的UID固定是500,普通用户(新建的账户)的UID都是从1000开始的,在Linux中管理员Root的UID固定是0

  1. 给账户的权限实际上是赋给SID的,可以把账户理解为秋寒,SID理解为秋寒的身份证;

假设秋寒的身份证号是250,在这个世界上叫秋寒的人多了个去了,但是身份证是250的全球只有一个,假设有一个人也叫秋寒,身份证是250的秋寒不小心穿越了,不在这个世界上了,那么请问跟我同名的秋寒是我吗?明显不是

  1. 所以有一个题目就是,假如你在一台电脑上创建了两个账户,其中一个账户名为秋寒,另外一个随便,给秋寒这个账户的权限是最高的,但是有一天你不小心把秋寒这个账户误删了,然后你一拍脑门,完犊子了,赶紧又重新创建了一个账户名为秋寒,请问这时候新建的账户拥有原来那个秋寒账户的权限吗?

答案是否定的,你得重新设权限,这俩账户仅仅只是名字一样而已,ID是不一样的

  1. 账户密码储存位置:c:\windows\system32\config\SAM 暴力破解/撞库
  2. 但是大概率是加密的,运用的是不可逆加密算法,也就是哈希算法(Hash),在后续文章中学习VPN的时候会用到,这个算法比黑客做勒索病毒还狠,勒索病毒只有黑客自己能解开,但是这个算法是谁也解不开,它自己也解不开,这就是不可逆加密算法,只能正向加密但是反向不能解密,哪怕你是1G的数据,加密以后也只会生成一串4字节的值,主要用于验证完整性,但是有个特点,如果把相同的数据放进去,生成的值就是相同的;

所以在使用密码登录Windows用户的时候,系统是如何验证密码是否正确的呢?

  1. 在设置好密码的那一瞬间,你的密码就被加密生成为了一串4字节的值,在后续进行登录的时候,当你输入密码按下回车以后,那些输入进去的密码就会被电脑再一次进行加密然后生成一串4字节的值,然后将这个值与你原本存储在SAM里面的原密码的加密值进行对比,如果不同那代表输入的密码错误,如果是一样的那代表密码正确;

  2. 这种加密算法目前来看,理论上是没有逆向破解的可能性的,只有暴力破解和撞库才有可能破解开;

  3. 撞库的意思就是,假设有一个网站号称可以破解哈希算法加密后的密码,网站的开发者就收集大量的密码数据,也就是所谓的字典,然后运用哈希算法进行加密得到值,然后当用户利用这个网站对哈希加密后的值进行逆向解密的时候,网站就会将用户输入的值和数据库里的那些值进行比较,如果有发现一样的值,就将这个值所配对的加密前的密码反馈给用户,这就是所谓的撞库,碰对了就对了,碰不对就完犊子了没招了;

比如www.cmd5.com等网站就可以尝试

  1. 暴力破解是什么呢?顾名思义,你电脑有密码是吧,好,秋寒今天一天啥也不干了,就坐在你电脑面前一个一个试,这就是所谓的暴力破解;

在后续可以结合字典,社工,钓鱼等方式来收集信息,直接找出你的密码或者尝试破解你的密码设置偏好规律来进行暴力破解,利用密码生成工具或者密码工具进行破解

  1. 一般来说,在开机的时候这个文件夹是拒绝打开的,所以后续文章中我们会讲到如何利用工具将这个文件夹中的哈希值拿出来,既可以通过撞库来破解,也可以尝试利用社工来暴力破解;

有个面试题需要记住,Windows系统下,默认密码最长有效期是42天,这个时间是可以改变的,在个人系统下可能感觉没那么强烈,但这个默认期是为了强制让服务器定期改密码,防止密码被远程破解,这个改密码的时间在企业中会根据服务器的安全等级来进行要求,不同等级的服务器的密码期限要求是不一样的

内置账户

  1. 给人用的账户:
  • Administrator 管理员账户
  • Guest 来宾账户

Guest账户权限嘎嘎低,格式化删文件是不可能的,哪怕从网上下载东西都保存不住,任何危险性操作都没办法做

以上两个账户是系统自带的,无法删除

  1. Guest账户在个人电脑上默认是禁用的,后续会讲解该如何启用这个账户;
  2. 计算机服务组件相关系统账号:
  • System 系统账户

权限至高无上,比管理员账户权限还高,是系统偷偷运行的

  • Local Services 本地服务账户(权限等于普通)
  • Network Services 网络服务账户(权限等于普通)
  1. 在电脑开机以后,也就是欢迎界面之前,你的电脑在那转圈,在这转圈的过程中就会启动本地服务账户和网络服务账户,把你电脑所有需要运用到的服务账户都启动,为什么能上网也是因为你的电脑有网络服务账户,本地网络服务就是像你电脑声卡等服务的运用,每一种服务都需要匹配一个账户去管理;

那为什么给这些服务设置这么多的账户呢?都用Administrator不就好了吗?

  1. 假设一个黑客找到你的FTP服务漏洞了,然后对你的FTP服务进行了攻击,拿到了你FTP服务账户的权限,但是因为这个账户并不是管理员的账户,所有哪怕他真的拿到了这个账户的权限,对我的系统也造成不了什么危害,但如果都用管理员账户,一旦黑客攻击成功了,那岂不是我的管理员账户的权限就被得到了吗?那基本上完犊子了;

配置文件

  1. 在Windows中叫配置文件,但是在Linux中叫做家(Home),这个配置文件在C盘的用户(User)文件下,每个用户第一次登录这台电脑的时候,这个电脑就会为你这个用户建立一个家。

在这里插入图片描述

那你这个家里面放什么呢?

  1. 放的是你的私人数据,比如说你的桌面,你的上网的浏览器的那个收藏夹,你的文档,你自己的私人小电影等等,包括你自己的垃圾文件都在你自己家里面;
    在这里插入图片描述
  2. 我们在批处理的文章中讲到一个变量叫做userprofile,它的中文翻译就是用户配置文件,而这个就是我们说的userprofile:

在这里插入图片描述
4. 每个用户都有一个自己的配置文件(家目录),在用户第一次登陆时自动产生,路径是:

  • win7 / win2008 c:\用户\
  • winXP / win2003 c:\Documents and Settings\

实验1

  1. 现在来实战一下,先打开虚拟机win2003,然后右键我的电脑打开管理;

在这里插入图片描述

在这里插入图片描述

  1. 双击本地用户和组,打开用户;

在这里插入图片描述

在这里插入图片描述

  1. 打开以后我们可以发现里面有三个用户账号;
    在这里插入图片描述
  2. 前面讲到的内置账户不是有5个吗?这里怎么才3个?

当然并不止5个,前文中只选择了特例;

  1. 刚才我们讲到的给人用的账户只有管理员账户和来宾账户,另外三个是给系统用的,根本不是给人用的,所以不需要我们进行管理,所以在这里就并没有显示,有的哥们又问了,这个又是个什么玩意儿啊?
    在这里插入图片描述
  2. 这个是我们在下载这个系统的时候,自带了一个软件来帮助提供服务的账户,我们试试能不能嘎巴一下给它删了,右键选择删除试试;
    在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
7. 欸嘿,挺爽快的,直接就删除了,反正不是内置账户,删了删了呗,那有的哥们又又又得问了,内置账户能删吗?嘿嘿嘿,试一下不就知道了?

右键Administrator选择删除

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

  1. 我们可以发现删不了,直接就报错了,我们可以发现Guest用户上打了一把叉,说明该账户被禁用了;
    在这里插入图片描述
  2. 新建用户就比较简单了,直接在该页面的空白处右键选择新建用户即可;
    在这里插入图片描述

在这里插入图片描述

  1. 用户名记住不要写中文,全名可以写中文,密码我这就设置为123.com
    在这里插入图片描述
    在这里插入图片描述
  2. 第一排的意思就是,当用户登陆一次以后就会被提醒强制更改密码,但是因为是我们手动新建的用户,权限一般都比较低,但是比Guest账户要高一点,所以这个选项可选可不选;
    在这里插入图片描述
  3. 第二排就是使用这个账户的用户不能对账户密码进行修改,第三排从安全的角度来说一般不建议勾选,因为这样的话密码就永远不过期了,还没人提醒你,哪天直接给你爆破了,第四个就是禁用账户,选了这个以后就代表这个用户刚创建完就会被禁用,然后我们点击创建,关闭以后就会出现新的账户;
  4. 现在我们来查看一下用户有哪些;
    在这里插入图片描述
  5. 该如何验证我们创建的用户呢?

直接退出当前的用户然后登陆一下尝试一下

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

  1. 现在重新登陆界面进行新建用户的登录

在这里插入图片描述

  1. 现在按照刚才我们创建用户的用户名和密码进行登录,然后等待个人信息配置,加载之后就可以发现我们的这个账户的桌面是一个初始化的桌面;

在这里插入图片描述

  1. 现在点击左下角的开始,然后观察弹窗的左上角,我们可以发现我们的名称是煞笔,而我们的用户名是sb,在这里注意不要混淆;

在这里插入图片描述

  1. 现在我们来找我们的,点击C盘下的Docment and Settings文件夹,然后我们可以观察到一个是管理员文件夹Administrator,一个是创建的也就是我们登录的账户文件夹sb

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

在这里插入图片描述

  1. 但是因为我们创建的这个账户权限有限,所以对于管理员文件夹是无法访问的,点击以后会报错提示无法查看;但是对于这个账户自己的是可以查看的;

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

但是如果使用管理员的账户登录,对于sb的账户的就是可以查看的,管理员的权限高啊

  1. 普通用户的权限非常低,低到连自主关机的权限都没有,因为服务器是不能随便关机的,所以在设计的时候针对于普通用户的权限上,并没有关机的权限;

在这里插入图片描述

在这里插入图片描述

点击关机以后,下拉选项发现只有注销但并没有关机的选项,除非赋予权限

  1. 当然,这个账户的权限低的表现不止这些,比如接下来我们先把网上邻居这些图标调出来以后,不能禁用网卡;不能配置IP地址,甚至连系统的时间都没有办法改变:

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

当然,普通账户的权限还是比Guest来宾账户的权限要高,从网上下载东西是可以的;至于来宾账户,这些操作都是不可以的,并且在登录的时候虽然系统也会给来宾账户创造一个Home,但是在这个账户注销的时候,这个Home也会被系统自动删除掉

  1. 如果在某一天,sb这个账户的人找到管理员说自己的密码忘记了,作为管理员也是可以对这些账户的密码进行设置的,甚至可以进行重命名等一系列操作,只需要管理员在刚才的用户与组中,对着目标账户右键就可以操作了,在这里秋寒就不做过多的展示了;

用户管理命令

  1. 到这我们就已经完成了用户的创建,接下来讲解一下关于用户管理的相关命令;
  2. 在这里我们需要记住net user,因为用户管理命令基本上都会用到这个命令来开头,但是如果我们只用这个命令,我们先打开cmd命令窗口,输入net user回车看看有什么效果?

在这里插入图片描述

在这里我们可以看到,单纯的这个命令就是把所有的用户列出来,总共有三个账户:管理员,来宾,sb

  1. 如果我们输入net user sb,大家可以猜猜这个命令是什么意思?

我们后面只是多跟了一个用户,但是并没有别的命令来指定对这个账户的别的操作,所以这个命令就只是来查看这个用户的详细信息的

在这里插入图片描述

  1. 如果我们在上一条命令的基础之上在后面跟上数字或者是密码数字字母组合等,就是给指定的账户更改密码;

net user sb 321.com就是将sb这个账户的密码更改成321.com;这个命令只有管理员才可以使用,比较方便,根本不需要这个账户的旧密码。

  1. 假如我们输入命令net user abc 123.com,那么这个命令按照前面讲解的就是给账户abc的密码更改成123.com;但是刚才我们可以看见我们根本没有abc这个账户,所以可以输入net user abc 123.com /add,这条命令的意思就是创建一个账户abc并给这个账户的密码设置成123.com;

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

如何验证我们的abc账户是否创建成功?使用net user就可以查看我们的用户列表,使用net user abc就可以查看abc这个账户的详细信息

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

  1. 输入net user abc /del就是将abc这个用户删除掉,验证方法依旧是使用net user来查看用户列表以此来验证;

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

  1. 输入net user 用户名 /active:yes是激活账户,输入net user 用户名 /active:no是禁用账户;

禁用账户意味着,被禁用账户本人哪怕用正确的账号密码登录也无法登录,因为已经被禁用了,在用户管理图形化界面上,如果这个账户的右下有一个红色的小叉,那就说明被禁用了,没有就代表是激活状态即可以正常登录使用的状态

组管理

组的基本概念

  1. 组的作用:简化权限的赋予;

怎么理解呢?

  1. 现在我们是个人账户,管理员下面的账户也就那么几个,赋予权限可以一个一个的去操作,但是如果是在公司,比如干系统运维的活,一个公司几千号人,也就是有几千个用户,这个时候再一个一个的去赋予权限就会很繁琐;所以就有了的概念,因为在一个公司里面,不可能说是每个用户的权限都是不一样的,总有一部分账户的权限是相同的,这 个时候我们就可以创建组,也就是创建一个容器,把想用权限需求的用户全部放到组里面进行管理,这个时候去操作就会简化很多,我们只需要对一个组进行权限的赋予,那么在这个组里面的所有成员都会同时继承组的权限设置,关于如何给组赋权限在后续文章中会讲解;

赋予权限的方式:
用户----组----赋权限;用户----赋权限

内置组

  1. 我们自己创建的组是空的,并且权限也没有赋予,需要自己手动操作,但是内置组就是所谓的系统自带的,内置在系统之内的组,这些内置组的权限默认已经被系统赋予了权限;
  2. 常见内置组:
  • administrators 管理员组
  • guests 来宾组
  • users 普通用户组,默认新建用户都会被放到普通用户组
  • network 网络配置组
  • print 打印机组
  • Remote Desktop 远程桌面组

假如秋寒是管理员,我的一个手下叫sb,sb想让我把他的权限提升,那我可以把他直接放进管理员组,那他就可以拥有管理员的权限了;或者是我直接新建一个账号,把这个新建的账号放到管理员组里面,然后让sb直接用这个账号,也能让他拥有管理员的权限,并且会让他比原来的账号用起来更快,因为原来的那个账号使用时间太长了,产生了一大堆垃圾,所以新账号用起来会比旧帐号更快。

  1. 我们知道,一个用户可以加入多个组,相当于我们把不同的权限设置成了不同的组,当这些用户加入不同的组就意味着这些用户拥有了不同的权限;

比如,秋寒今天出差了,我想让sb帮我管理一下我服务器的网卡,帮我配置一下IP什么的,但我又不想把我的管理员的账号密码给他,害怕他给我干坏事,所以我就可以直接让sb加入网络配置组(network),只让他拥有相关的权限,其他的权限没有,这样就可以解决秋寒的烦恼还可以让sb帮忙管理了

  1. 我们双击打开,可以发现,这里有很多,值得注意的是,这些两个人头的就是组,但是在用户里面,就只有一个人头;
    在这里插入图片描述
    在这里插入图片描述

  2. 我们双击打开组里的Users,可以看见sb也在里面;
    在这里插入图片描述
    在这里插入图片描述

  3. 观察上图中的左下角,我们也可以把别的用户添加进去,当然也可以选中某个用户进行删除;打开管理员组,我们可以发现这个组里面只有管理员,没有别的用户;

说明用户一定是单个的,而组里的用户不一定是单个的,一个组里面可以有很多用户,也可以只有一个用户,所以有一个组并不代表一定就有多个用户;

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

  1. 当然,我们如果把sb添加进管理员组,那sb也就变成管理员了,我们直接选择左下角进行添加没啥意思,这里给大家展示如何用命令进行添加:
  • net localgroup 列出所有本地组的列表
  • net localgroup administrators 查看管理员组的成员
  • net localgroup administrators sb /add 把sb加到管理员组里
  • net localgroup A /add 自定义一个名为 A 的没有成员没有权限的空组

需要后期人工拉用户并赋予权限

  • net localgroup administrators sb /del 把sb从管理员组中删除

因为尽管sb确实在管理员组里面,权限提升为管理员了,但是他的权限仍然不能跟真正的Administrator相比较,有很多权限是Administrator独特具有的,比如删除用户,虽然sb也能做到,但是sb不能删除administrator,但是administrator可以删除sb;

  1. 练习:
  • 练习图形界面和cmd命令中的用户管理,包括但不限于创建,修改密码等;
  • 按照上期文章中的批处理教程,制作一个批处理脚本,可以通过互动实现创建用户或者是修改密码等功能;

以上为本期分享的所有内容,主要介绍了用户与组管理以及相关命令,更多内容会在后续文章进行分享!感兴趣的朋友们可以点个关注,每周持续分享技术文章!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值