Centos7重置密码后采用密钥登陆

用于忘记密码后的重置密码,这次是因为内网不知名原因导致密码全部失效,怀疑是被网安的兄弟们搞了,最后发现被ethminer挖矿了执行了非常多的定时任务。这里记录一下重置密码的简洁教程。重置完采用密钥登陆,关闭账户密码登陆真的怕了。

1.重启

直接重启设备,在启动选项选择的时候按e键,进入初始化脚本编辑页面。

Centos7重置密码后采用密钥登陆_第1张图片

2.进入单用户模式

找到这个ro项,替换成rw init=/sysroot/bin/sh,然后按Ctrl+X进入单用户模式
Centos7重置密码后采用密钥登陆_第2张图片

rw init=/sysroot/bin/sh

3.重置密码

输入chroot /sysroot然后回车

#访问系统
chroot /sysroot

#修改成英文,防止乱码
LANG=en

#重置root密码
passwd root

Centos7重置密码后采用密钥登陆_第3张图片

4.重启

先更新系统信息,执行完命令会在/目录下创建一个.autorelabel文件,如果该文件存在,系统在重启时就会对整个文件系统进行relabeling重新标记 。(ps:更新系统信息完记得exit后再reboot)

#更新系统信息
touch  /.autorelabel

#重启系统
reboot

5.SSH密钥登陆

先更新系统信息,执行完命令会在/目录下创建一个.autorelabel文件,如果该文件存在,系统在重启时就会对整个文件系统进行relabeling重新标记 。(ps:更新系统信息完记得exit后再reboot)

#查看目前现存密钥
ls -l ~/.ssh/id_*.pub

#生成密钥(xxx作为注释)
ssh-keygen -t rsa -C "xxx" 
#保存文件的位置,回车就是默认
Enter file in which to save the key (/root/.ssh/id_rsa):
#是否需要安全密码,为空就是不需要
Enter passphrase (empty for no passphrase): 


#把公钥加到authorized_keys(id_rsa根据取名略有不同,我这里用的是默认)
cd /root/.ssh
cat id_rsa.pub >> authorized_keys

#设置文件权限(可以不设置)
chmod 600 authorized_keys
chmod 700 ~/.ssh

#打开密钥登陆功能(默认打开可以不设置)
vim /etc/ssh/sshd_config
PubkeyAuthentication yes

#重启ssh服务
systemctl restart sshd

#拷贝私钥到pc

#关闭账户密码登陆功能(记得要验证完密钥登陆再关闭)
vim /etc/ssh/sshd_config
PasswordAuthentication no
systemctl restart sshd

5.快速重置代码集合

#开机按e
e

#替换--Ctrl+X
rw init=/sysroot/bin/sh

#访问系统
chroot /sysroot

#修改成英文,防止乱码
LANG=en

#重置root密码
passwd root

#更新系统信息
touch  /.autorelabel

#重启系统
reboot

#重启完登陆可能显示bash。输入这两行代码后重启即可
cp /etc/skel/.bashrc /root/
cp /etc/skel/.bash_profile /root/

6.ethminer以太坊挖矿程序清理

top -c

rm -rf /var/tmp/.tmp/./.b4nd1d0
rm -rf /var/tmp/.tmp/./.placi
rm -rf /var/tmp/.tmp/./bin
rm -rf /var/tmp/.ladyg0g0
rm -rf /usr/bin/.locationesclipiciu
rm -rf /usr/bin/.pidsclip
rm -rf /.b4nd1d0
rm -rf /root/.b4nd1d0
rm -rf /root/bin
rm -rf /usr/.SQL-Unix
rm -rf /usr/tmp
rm -rf /usr/bin/sshd
rm -rf /root/ethminer*
rm -rf /var/tmp/.tmp/./ethminer*
userdel -r dudu

vim /etc/passwd
vim /etc/shadow
rm -rf /home/dudu

#清除定时任务
crontab -e

你可能感兴趣的:(服务器运维,bash,linux,开发语言)