open Euler安全加固

openEuler安全加固

1. grub加密

openEuler默认就是设置了Grub加密的,默认密码是openEuler#12,这个密码就是在你进入单用户模式的时候要你去提供的,如果用户名和密码不正确,那么是无法进入单用户模式的

[root@oe01 ~]# vim /boot/grub2/grub.cfg

 71 set superusers=root
 72 password_pbkdf2 root grub.pbkdf2.sha512.10000.5A45748D892672FDA02DD3B6F7    AE390AC6E6D532A600D4AC477D25C7D087644697D8A0894DFED9D86DC2A27F4E01D925C46    417A225FC099C12DBD3D7D49A7425.2BD2F5BF4907DCC389CC5D165DB85CC3E2C94C8F9A3    0B01DACAA9CD552B731BA1DD3B7CC2C765704D55B8CD962D2AEF19A753CBE9B8464E2B1EB    39A3BB4EAB08

在这里是设置了grub的密码的,如果想要去掉密码直接注释这2行就可以了

我们先打开,看看效果

image-20240712203107612

当我们在这里按e键的时候,红帽的系统是不需要密码的,来看看openEuler的

image-20240712203152166

在open Euler这里,他是需要我们输入用户名和密码的,这个用户名和密码并不是你登陆系统用的用户名和密码,是刚刚在grub.cfg文件里面看见的单独设置的密码

1.1 修改grub密码

要修改grub的密码你就得先知道当前grub的密码,由于我们没有修改默认密码,所以密码还是openEuler#12,然后我们来修改密码

[root@oe01 ~]# grub2-set-password 
Enter Current password:      # 这里输入openEuler#12
Enter password:              # 这里输入要修改的密码,要求设置强密码
Confirm password:            # 再来一遍

然后你的grub密码就改好了,非常的简单,接下来我们看看如何取消grub加密

1.2 取消grub加密

想要取消grub加密的话也是很轻松,直接在grub.cfg里面注释掉那2行内容即可

[root@oe01 ~]# vim /boot/grub2/grub.cfg
 71 #set superusers=root
 72 #password_pbkdf2 root grub.pbkdf2.sha512.10000.5A45748D892672FDA02DD3B6F7    AE390AC6E6D532A600D4AC477D25C7D087644697D8A0894DFED9D86DC2A27F4E01D925C46    417A225FC099C12DBD3D7D49A7425.2BD2F5BF4907DCC389CC5D165DB85CC3E2C94C8F9A3    0B01DACAA9CD552B731BA1DD3B7CC2C765704D55B8CD962D2AEF19A753CBE9B8464E2B1EB    39A3BB4EAB08

71和72是行数,直接将第71行和第72行注释掉即可,然后将/boot/grub2/user.cfg给移走或删除

[root@oe01 ~]# mv /boot/grub2/user.cfg /opt

重启系统看看还需要密码不

image-20240712204346149

直接按e就进入到这里了,不再需要密码了,这样grub的密码就被取消了

2. 重置root密码

当root密码忘记的时候我们可以通过这种方式来重置密码,但是有一个前提条件,那就是没有grub密码或者你知道当前的grub密码,刚刚我们取消了grub的密码,所以这里我们直接操作

2.1 重启系统

如果系统就是关机的可以直接开机就可以

image-20240712203107612

在这个界面按一下键盘上的e

image-20240712204346149

然后就会进入这个界面,在这里我们用方向键控制光标往下,找到以linux开头的行

image-20240712204843341

2.2 进入单用户模式(救援模式)

在linux开头的这一行内容的末尾加上红框里面内容,然后按Ctrl + x启动

然后你就会进入这个页面

image-20240712204945984

在这里由于我们的根文件系统是只读挂载的,所以无法直接修改密码,我们还需要重新挂载

2.3 重新挂载根文件系统

bash-5.1# mount -o remount,rw /

image-20240712205046501

这下面会有一个回显,这个并不是报错。此时我们的文件系统就可写了,接下来我们修改密码

2.4 修改密码

# 以名文的方式修改
bash-5.1# echo 123 |passwd --stdin root
# 交互式修改
bash-5.1# passwd root 

这2种方式任选其一即可,修改完之后如果你的selinux是开启状态的话需要去touch一个文件,让selinux进行重新打标签,如果没有这一步的话,你的系统是进不去的,尽管你把以前的密码想起来了也不行,如果你不知道你的selinux是否开启,那你就做这一步,没有开启做了这一步是没事的

bash-5.1# touch /.autorelabel

万事大吉了,接下来启动系统就可以了

bash-5.1# exec /sbin/init

然后使用启动的时候可能会有一点慢,因为selinux会重新打标签,等待他进度条跑满100即可,然后使用新密码登录系统

2. su

openEuler默认也是对这个命令做了限制,不允许普通用户su切换到root,也不允许切换到其他的普通用户,即使你的密码输入的是正确的,他会报错权限拒绝,大概就是这样,从root可以切到普通用户是没有问题的

[root@oe01 ~]# useradd test
[root@oe01 ~]# echo 123 | passwd --stdin root
[root@oe01 ~]# us - test 
[test@oe01 ~]$ su  test
Password:       # 这里我输入的123
su: Permission denied

对吧,我连切换到自己都不可以的哦,更别说其他的用户了,原因是因为,openEuler只允许wheel这个组内的用户可以使用su去切换,想要某个用户可以切换用户的话则需要将他加入到这个组内

2.1 允许某个用户使用su

# 我们先查看wheel的gid是多少
[root@oe01 ~]# cat /etc/group|grep wheel
wheel:x:10

通过命令可以查到这个组的gid是10,那么我们将test用户加入到这个组

[root@oe01 ~]# usermod -G 10 test

然后再来尝试使用su命令

[root@oe01 ~]# su - test
[test@oe01 ~]$ su - root
Password:    # 输入root的密码
[root@oe01 ~]# 

你会发现可以切换到root了,这样这个用户就可以使用su命令的,而对于没有加入到wheel组的用户依然是不可以使用su命令的

2.2 允许所有用户使用su

如果需要这样做的话我们可以直接将配置文件里面的配置给注释掉,然后所有的用户就都可以使用su了

[root@oe01 ~]# vim /etc/pam.d/su
#auth           required        pam_wheel.so use_uid

将这一行给注释掉,同理,如果你的其他操作系统想要禁止使用su的话那么你就直接加上这一行

posted @ 2024-07-12 22:01  FuShudi  阅读(374)  评论(0编辑  收藏  举报