第五周-day22-权限体系补充和用户管理的知识

在这里插入图片描述

补充、权限如何让系统安全

文件名存放在文件所在目录的block
文件访问过程-详解运维大神之详解

※一、权限如何让系统安全

1.单台服务器

1.网站运行的时候使用www(虚拟用户)
2.网站站点目录/app/blog
文件
644 root root
目录
755 root root

3.用户上传的目录 如/uploads
文件
644 www www
目录
755 www www

4.程序代码限制 指定类型(图片或压缩包)
5.上传禁止运行(NFS)

2.、如何让系统安全

1.最小化

安装系统的时候
操作最小化
		rm -f 尽量别加r
		开启服务

2.保护root

禁止root远程登录系统
修改远程连接(sshd)默认端口号
制作指纹认证md5sum※

※md5sum指纹认证

1.大家拿到的东西是否一致
2.对比文件是否发生变化

记录指纹信息

[16:48 root@oldboy ~]# find /oldboy/ -type f -name '*.txt'|xargs md5sum
d41d8cd98f00b204e9800998ecf8427e  /oldboy/old.txt
d41d8cd98f00b204e9800998ecf8427e  /oldboy/old1.txt
d41d8cd98f00b204e9800998ecf8427e  /oldboy/lidao/lidao01.txt
d41d8cd98f00b204e9800998ecf8427e  /oldboy/lidao/lidao02.txt
d41d8cd98f00b204e9800998ecf8427e  /oldboy/lidao/lidao03.txt
d41d8cd98f00b204e9800998ecf8427e  /oldboy/lidao/lidao04.txt
d41d8cd98f00b204e9800998ecf8427e  /oldboy/lidao/lidao05.txt
d41d8cd98f00b204e9800998ecf8427e  /oldboy/lidao01.txt
d41d8cd98f00b204e9800998ecf8427e  /oldboy/lidao02.txt
d41d8cd98f00b204e9800998ecf8427e  /oldboy/lidao03.txt
d41d8cd98f00b204e9800998ecf8427e  /oldboy/lidao04.txt
d41d8cd98f00b204e9800998ecf8427e  /oldboy/lidao05.txt
[16:49 root@oldboy ~]# find /oldboy/ -type f -name '*.txt'|xargs md5sum >/tmp/oldboy.md5
[16:49 root@oldboy ~]# md5sum -c /tmp/oldboy.md5 
/oldboy/old.txt: OK
/oldboy/old1.txt: OK
/oldboy/lidao/lidao01.txt: OK
/oldboy/lidao/lidao02.txt: OK
/oldboy/lidao/lidao03.txt: OK
/oldboy/lidao/lidao04.txt: OK
/oldboy/lidao/lidao05.txt: OK
/oldboy/lidao01.txt: OK
/oldboy/lidao02.txt: OK
/oldboy/lidao03.txt: OK
/oldboy/lidao04.txt: OK
/oldboy/lidao05.txt: OK

1.找出/oldboy目录下面 以.txt结尾的文件 制作md5 存放在/tmp/oldboy.md5
2.对比 md5sum -c
查找oldboy下的.txt文件的md5sum

※二、文件系统权限(属性)

  1. chattr —>修改隐藏属性
		chattr -i oldboy.txt 
		-----i---------- oldboy.txt
    参数:
	  a  append 让文件或目录只能追加用途
	  i  immutable  无敌的 不得任意更动文件或目录 只能查看

2.lsattr 查看文件隐藏属性

		lsattr oldboy.txt
		----i----------- oldboy.txt

修改隐藏属性

三、Linux特殊权限

suid (setuid) ---->s

	某个文件在所有者上有s,suid
	拥有suid的命令,任何用户执行的时候都相当于root (文件所有者的权限) 

※#chmod u+s /bin/ls或者chmod 4755 /bin/ls来添加特殊权限,除了/tmp/和/passwd是共享的

特殊权限-没有添加s权限特殊权限-没有添加s权限切换用户下使用 ls查看切换用户下使用 ls查看用chmod u+s给添加 s 权限后变红用chmod u+s给添加 s 权限后变红去oldboy用户下ls就可以查看目录了去oldboy用户下ls就可以查看目录了
在oldboy下删除 rm -f /root/oldboy.txt 也就可以执行了

在添加特殊权限后,查看是否添加成功suid ll -d 看权限中是否有s

chmod u+s  /bin/ls
chmod 4755 /bin/ls  ----> stat /bin/passwd
chmod u-s /bin/ls
passwd

粘滞位 sticky

每个人都可以在这个目录下面创建文件或删除 /tmp
每个人只能管理自己的文件

/tmp权限: 1777/tmp/image.png

※四、用户管理

UID: 用户 id 号

用户分类
UID
 root
普通用户
虚拟用户(1-999)---->保证各种进程/服务正常运行

1.核心文件和目录

文件

查看以下的文件

[17:43 oldboy@oldboy ~]$ ll /etc/passwd /etc/shadow /etc/group /etc/shadow
-rw-r--r-- 1 root root  689 Apr 24 13:53 /etc/group
-rw-r--r-- 1 root root 1176 Apr 24 13:53 /etc/passwd    
---------- 1 root root  851 Apr 24 13:53 /etc/shadow
---------- 1 root root  851 Apr 24 13:53 /etc/shadow

核心文件
/etc/passwd 用户信息 ※※※※
/etc/shadow 存放密码信息
/etc/group 用户组信息
/etc/gshadow 用户组密码信息

image.png

※常用的命令解释器:

/bin/bash

※/sbin/nologin #虚拟用户的命令解释器
[18:09 oldboy@oldboy ~]$ cat /etc/shells 
/bin/sh  \\只是bash的软链接
/bin/bash
/usr/bin/sh
/usr/bin/bash

然后我们来做一下:

找出/etc/passwd中的虚拟用户,显示这个用户名的名字和uid
awk -F: ‘/nologin/{print $1, 3 , 3, 3,NF}’ /etc/passwd|column -t #column -t 是用来对齐的#
所有虚拟用户的信息

目录

/etc/skel/的作用

解释:

.bash_logout  和/etc/profile类似(PS1字体颜色 LANG字符集 PATH命令的位置)
.bash_profile	
.bashrc		/etc/bashrc

我们尝试还原一个故障模拟:

【企业故障案例】:命令行提示符-bash-4.1$或-bash-4.2$

1.修改/etc/profile 给PS1加上注释(测试完后记得改回来~)
[root@oldboyedu59 ~]# tail -1 /etc/profile
#export PS1="[[\e[34;1m]\u@[\e[0m][\e[32;1m]\H[\e[0m] [\e[31;1m]\w[\e[0m]]\$ "
source /etc/profile 让它生效

2.添加的用户
useradd alex

3.切换用户
[root@oldboyedu59 ~]# useradd alex
useradd: user ‘alex’ already exists
[root@oldboyedu59 ~]# su - alex
[alex@oldboyedu59 ~]$

4.检查是否有suid
ls -l /bin/rm (如果有chmod u-s /bin/rm)

5.尝试下删根~
rm -fr /*

6.重新登录alex
image.png

原因:

当前用户的环境变量的配置文件.bash_profile .bashrc 被删除

恢复办法:

记得logout退出shell后再重连一下alex用户就恢复了

2.用户管理命令

操作用户:
①useradd 创建用户
※  -u  指定uid
※  -s  知道用户使用的命令解释器,创建虚拟用户  配合使用
※  -M  创建用户的 不创建家目录              配合使用

-c  指定用户的说明信息
-g  指定用户组
	主要组
-G  指定多个用户组
	附加组
例:添加用户oldboy888 指定uid为888 不可登录系统 不创建家目录

useradd oldboy888 -u 888 -s/sbin/nologin -Mimage.png

②※su 和-su的区别
switch user
 - 
	切换用户的时候更新用户的环境变量
-c
	只能root用户可以使用,切换到某个用户执行命令,执行命令后自动退出这个用户
③passwd 修改密码

–stdin---->只能root用户使用

echo 123456|passwd --stdin oldboy   从前面获取到密码

从管道获取密码
非交互式设置密码

别人用history可以查看到历史,容易泄露,
所以 用history -c 用来清除历史命令记录

④userdel 删除用户

删除用户 默认不会删除家目录,目的是为了保护一些文件,安全一些。

删除用户替代方法:

/etc/passwd中给用户签名加上#  井号把它注释掉

-r    删除用户和用户家目录(少用)
⑤usermod 修改用户信息(uid 命令解释器 组)

和useradd基本一样(可以命令干什么的就可以了)

	-g   添加到其他组
	-G  设置主要组
	-u  修改uid
	-s  修改命令解释器

把lidao用户分给多个组

下节课内容

 查询用户命令
id
w
whoami
last
lastlog
保护用户密码
批量添加用户并设置随机密码
sudo
	用户查看日志/var/log/messages secure

定时任务
	定时任务格式
	每天晚上12点打包备份/etc目录到/tmp下

未完待续…

·

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值