1.如何为用户设定密码,又如何修改密码?

2.用户的创建流程? [扩展了解]

3.用户组如何管理?

4.普通用户无权限怎么办? 切换身份 or 提权? su 切换用户 sudo 提权

5.为用户添加密码 [root才能执行]

6.为新用户添加密码{只能是root} {密码尽可能的复杂} [0-9][a-Z][aZ] [!@#$%^&]

7.为用户变更密码

8.为用户变更密码 1.为自己修改密码 (ok) 直接使用passwd 注意密码需要复杂一 点,并达到8位

[root@oldboyedu ~]# passwd oldxu Changing
password for user oldxu. New password: BAD
PASSWORD: The password is a palindrome
Retype new password: passwd: all authentication
tokens updated successfully.

passwd --stdin 非交互式设定密码

[root@oldboyedu ~]# echo "123" | passwd --stdin
oldxu Changing password for user oldxu. passwd:
all authentication tokens updated successfully.

批量创建用户,并设定固定密码

 [root@oldboyedu ~]# cat user.sh for i in {1..100}
do useradd test$i
echo "123456" | passwd --stdin test$i done

9.为别人修改密码 (root) passwd username

10.密码怎么才算复杂

总结:

1.为新用户添加密码 只有root权限才可以

2.为用户变更密码也只有root才可以

3.普通用户只能修改自己的密码,..无法修改其他人的密码

4.密码的修改方式有两种,一种是交互式 非交互

4.用户的创建流程

1.在用户创建的过程需要参考 /etc/login.defs 和/etc/default/useradd 这两 个文件,默认参考.

如果在创建用户时指定了参数,则会覆盖 (默认 /etc/login.defs 和/etc/default/useradd)

[root@oldboyedu ~]# echo $RANDOM | md5sum |cut -c 5-15 9320a6f282d

2.mkpasswd生成随机字符串, -l设定密码长度,-d数子,-c小写字母,C大写字母,-s特殊字符

[root@oldboyedu ~]# mkpasswd -l 10 -d 2 -c 3 -C 3 -s 2 mQR1u^=q5Y

lastpass 在线   支持 windows MacOS Iphone 浏览器插件   Android

[root@oldboyedu ~]# grep "^[a-Z]" /etc/login.defs MAIL_DIR    /var/spool/mail

创建的邮箱所在的位置 PASS_MAX_DAYS 99999

密码最长使用的天数 PASS_MIN_DAYS 0 ####密码最短时间的天数

5.用户组的管理

PASS_MIN_LEN 5 #密码的长度
PASS_WARN_AGE 7 #密码到期前7天警告
UID_MIN 1000 #uid 从1000开始
UID_MAX 60000 #uid从6w结束
SYS_UID_MIN 201 #系统用户的uid 从201
开始
SYS_UID_MAX 999 #系统用户的uid最大到
999
GID_MIN 1000
GID_MAX 60000
SYS_GID_MIN 201
SYS_GID_MAX 999
CREATE_HOME yes #给用户创建家目录,创建
在/home
UMASK 077
USERGROUPS_ENAB yes
ENCRYPT_METHOD SHA512 [root@baozexu ~]# cat /etc/default/useradd

useradd defaults file

GROUP=100 #当用户创建用户时不指定组,并
且/etc/login.defs中USERGROUPS_ENAB为no时, 用户默认创建给分
配一个gid为100的组.
HOME=/home #用户默认的家目录
INACTIVE=-1 #用户不失效
EXPIRE= #过期时间
SHELL=/bin/bash #默认登录shell
SKEL=/etc/skel #默认用户拷贝的环境变量
CREATE_MAIL_SPOOL=yes #创建邮箱

1.创建组 groupadd [-g GID] groupname

2.修改组 groupmod

3.删除组 如果要删除基本组,需要先删除基本组中的用户才可以删除 该组。

[root@oldboyedu ~]# groupadd zhuzhu
[root@oldboyedu ~]# groupadd -g 6666 gougou
[root@oldboyedu ~]# grep "6666" /etc/group
gougou:x:6666:

创建系统组

 [root@oldboyedu ~]# groupadd -r maomao
[root@oldboyedu ~]# grep "maomao" /etc/group
maomao:x:993:

-g 修改组gid

 [root@oldboyedu ~]# groupmod -g 7777 gougou
[root@oldboyedu ~]# grep "7777" /etc/group gougou:x:7777:

-n 修改组名称

 [root@oldboyedu ~]# groupmod gougou -n gg
[root@oldboyedu ~]# grep "7777" /etc/group gg:x:7777:
[root@oldboyedu ~]# groupadd dawang
[root@oldboyedu ~]# groupadd laowang
[root@oldboyedu ~]# useradd xiaowang
[root@oldboyedu ~]# useradd gb -g laowang
[root@oldboyedu ~]# usermod xiaowang -G laowang,dawang

6.用户提权

su 切换用户 如果切换用户,需要知道用户的密码,不是很安全

sudo 提权( root事先分配好权限 --> 关联用户 ) 安全 方便 但是复杂

基本概念

    [root@oldboyedu ~]# id xiaowang
uid=6775(xiaowang) gid=7778(xiaowang)
groups=7778(xiaowang),
7779(dawang),7780(laowang)
[root@oldboyedu ~]# userdel -r xiaowang
[root@oldboyedu ~]# groupdel dawang
[root@oldboyedu ~]# userdel -r gb
[root@oldboyedu ~]# groupdel laowang

1.交互式 需要不停的交互 2.非交互式 3.登录式shell 需要用户名以及密码开启bash窗口 4.非登录式shell 不需要用户名和密码即可开启bash窗口

su - username属于登陆式shell,su username属于非登陆式shell,区别 在于加载的环境变量不一样。

su 切换有缺点 需要知道用户对应的密码 说明不是很安全

su - username 属于登录式shell 会加载全部的环境变量 #su   username 属于非登录式shell   会加载部分环境变量(很有 可能就会出现错误清空)

sudo提权 1.预先分配好权限 2.在关联对应的用户

3.提升的权限太大,能否有办法限制仅开启某个命令的使用权限?其 他命令不允许?

第一种方式:使用sudo中自带的别名操作, 将多个用户定义成一个组

    [root@bgx ~]# visudo

1.使用sudo定义分组,这个系统group没什么关系 User_Alias OPS = oldboy,oldgirl User_Alias DEV = alex

2.定义可执行的命令组,便于后续调用 Cmnd_Alias NETWORKING = /sbin/ifconfig, /bin/ping Cmnd_Alias SOFTWARE = /bin/rpm, /usr/bin/yum Cmnd_Alias SERVICES = /sbin/service, /usr/bin/systemctl start Cmnd_Alias STORAGE = /bin/mount, /bin/umount Cmnd_Alias DELEGATING = /bin/chown, /bin/chmod, /bin/chgrp Cmnd_Alias PROCESSES = /bin/nice, /bin/kill, /usr/bin/kill, /usr/bin/killall

3.使用sudo开始分配权限 OPS  ALL=(ALL) NETWORKING,SOFTWARE,SERVICES,STORAGE,DELEGATING,PROCES SES DEV  ALL=(ALL) SOFTWARE,PROCESSES

第二种方式:使用groupadd添加组,然后给组分配sudo的权限,如果有新 用户加入,直接将用户添加到该组.*

4.登陆对应的用户使用 sudo -l 验证权限

1.添加两个真实的系统组, group_dev group_op

[root@www ~]# groupadd group_dev
[root@www ~]# groupadd group_op

2.添加两个用户,     group_dev(user_a user_b)   group_op(user_c user_d)

  [root@www ~]# useradd user_a -G group_dev
[root@www ~]# useradd user_b -G group_dev
[root@www ~]# useradd user_c -G group_op
[root@www ~]# useradd user_d -G group_op

3.记得添加密码

 [root@www ~]# echo "1" | passwd --stdin user_a
[root@www ~]# echo "1" | passwd --stdin user_b
[root@www ~]# echo "1" | passwd --stdin user_c
[root@www ~]# echo "1" | passwd --stdin user_d

4.在sudo中配置规则

   [root@www ~]# visudo
  Cmnd_Alias NETWORKING = /sbin/ifconfig,
/bin/ping   Cmnd_Alias SOFTWARE = /bin/rpm,
/usr/bin/yum   Cmnd_Alias SERVICES =
/sbin/service, /usr/bin/systemctl start  
Cmnd_Alias STORAGE = /bin/mount, /bin/umoun
Cmnd_Alias DELEGATING = /bin/chown,
/bin/chmod, /bin/chgrp   Cmnd_Alias
PROCESSES = /bin/nice, /bin/kill, /usr/bin/kill,
/usr/bin/killall

%group_dev ALL=(ALL) SOFTWARE  

%group_op ALL=(ALL) SOFTWARE,PROCESSES

5.检查sudo是否配置有错

[root@www ~]# visudo -c /etc/sudoers: parsed OK

6.检查user_a,和user_d的sudo权限

 [user_a@www.oldboyedu.com ~]$ sudo -l
User user_a may run the following commands on www:   (ALL) /bin/rpm, /usr/bin/yum
[user_d@www.oldboyedu.com ~]$ sudo -l
User user_d may run the following commands on
www:   (ALL) /bin/rpm, /usr/bin/yum, /bin/nice,
/bin/kill, /usr/bin/kil

Day 10 用户的提权,用户组的创建删除的更多相关文章

  1. Linux 曝出严重安全漏洞,受限用户亦可提权至 Root 身份运行任意命令!(内附解决方案)

    本文首发于:微信公众号「运维之美」,公众号 ID:Hi-Linux. 「运维之美」是一个有情怀.有态度,专注于 Linux 运维相关技术文章分享的公众号.公众号致力于为广大运维工作者分享各类技术文章和 ...

  2. WIN7/8/10下批处理提权工具

    ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 自动添加批处 ...

  3. Linux 用户管理和提权

    Linux ⽀持多个⼈使⽤同⼀个⽤户登录系统, Windows 在修改组策略的情况下,也可以多个⼈使⽤同⼀个⽤户登录 远程连接Linux的⽅式:SSH协议 远程连接Windows的⽅式:RDP协议 安 ...

  4. linux 安全基本防护 用户提权 ssh访问控制

    linu安全应用 信息安全分类: 物理安全:主机/机房环境 系统安全:操作系统 应用安全:各种网络服务,应用程序 网络安全:网络访问控制,防火墙规则 数据安全:信息的备份与恢复,加密解密 管理安全:保 ...

  5. Linux用户的基本操作3 (组的基本管理,用户提权)

    目录 组的基本原理 用户身份切换 5.用户身份提权 组的基本原理 组账户信息保存在/etc/group 和/etc/gshadow 两个文件中. /etc/group组账户信息 [root@zls ~ ...

  6. 小白日记24:kali渗透测试之提权(四)--利用漏洞提权

    利用漏洞提权实例 前提:已渗透进一个XP或2003系统 一.实验目标漏洞:Ms11-080 补丁:Kb2592799 漏洞信息:https://technet.microsoft.com/librar ...

  7. MySQL-based databases CVE -2016-6663 本地提权

    @date: 2016/11/3 @author: dlive 0x01 漏洞原文 翻译水平不高求轻喷 感觉作者在写文章的时候有些地方描述的也不是特别清楚,不过结合poc可以清晰理解漏洞利用过程 0x ...

  8. [提权]Windows COM组件提权漏洞 (CVE-2017-0213)

    0x01 简介 COM组件是微软开发的一种新软件开发技术,在这个COM框架的下,可以开发出多功能的组件,可以根据自己的需求进行定制开发,替换旧的组件,多个功能组件组合到一起,从而形成了一个复杂的定制化 ...

  9. [6期]Webshell提权服务器登录

    这一期内容较少,分享一点资料给大家吧:https://www.bilibili.com/video/av27708518/?spm_id_from=333.788.b_636f6d6d656e74.9 ...

随机推荐

  1. c++智能指针介绍

    C++11标准引入了boost库中的智能指针,给C++开发时的内存管理提供了极大的方便.接下来这篇文件介绍shared_ptr/weak_ptr内部实现原理及使用细节. C++不像java有内存回收机 ...

  2. python画混淆矩阵(confusion matrix)

    混淆矩阵(Confusion Matrix),是一种在深度学习中常用的辅助工具,可以让你直观地了解你的模型在哪一类样本里面表现得不是很好. 如上图,我们就可以看到,有一个样本原本是0的,却被预测成了1 ...

  3. Java多线程之线程的状态迁移

    Java多线程之线程的状态迁移 下图整理了线程的状态迁移.图中的线程状态(Thread.Stat 中定义的Enum 名)NEW.RUNNABLE .TERMINATED.WAITING.TIMED_W ...

  4. (二)快速搭建 ASP.net core Web 应用

    目录 1. 新建项目并上传Github 2. 关联Jenkins实现持续集成 3. 已经磨好枪了,开始写代码 1. 新建项目并上传Github 新建 ASP.NET Core Web 应用程序,勾选“ ...

  5. [转]Android ImageView的scaleType属性与adjustViewBounds属性

    Android ImageView的scaleType属性与adjustViewBounds属性   ImageView的scaleType的属性有好几种,分别是matrix(默认).center.c ...

  6. linux命令名 用法及参数 功能注解

    命令名   用法及参数   功能注解         1 文件管理   #   ls   ls -a   列出当前目录下的所有文件,包括以.头的隐含文件            文件管理   #   l ...

  7. JS函数提升和变量提升

    1.1什么是函数提升和变量的提升? JS引擎在运行整个JS代码的过程中,分为俩步. 第一步是读取和解析JS代码,第二部是执行. 在引擎解析JS代码的时候,当解析器遇见变量声明(var 变量名)和函数声 ...

  8. 消息中间件——RabbitMQ(九)RabbitMQ整合Spring AMQP实战!(全)

    前言 1. AMQP 核心组件 RabbitAdmin SpringAMQP声明 RabbitTemplate SimpleMessageListenerContainer MessageListen ...

  9. codeforces 27 E. Number With The Given Amount Of Divisors(数论+dfs)

    题目链接:http://codeforces.com/contest/27/problem/E 题意:问因数为n个的最小的数是多少. 题解:一般来说问到因数差不多都会想到素因子. 任意一个数x=(p1 ...

  10. hdu 3966 Aragorn's Story(树链剖分+区间修改+单点查询)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3966 题意:给一棵树,并给定各个点权的值,然后有3种操作: I C1 C2 K: 把C1与C2的路径上 ...