我的小办公室的服务器昨天和今天都受到攻击,显然这个黑客通过一个弱密码获得了访问权限(也就是我完全责怪)。 当我注意到这一点的时候,我从服务器上断开了连接,并改变了所有用户密码(使用kpasswd)和root密码(使用usermod -p)。
我没有互联网咨询,有点压力,这就是为什么我input明文密码,而不是我应该input的encryption哈希。
有人知道我可以如何“计算”未经过哈希处理的明文吗?
首先,从零开始重新安装服务器是一件好事。
如果你已经在/ etc / shadow中设置了你的encryption根密码,那么就没有有效的方法来猜测它,因为它是使用密码散列函数encryption的。 如果将其设置为明文值,则密码将被视为无效,因此无论如何都不会被接受,因为影子数据库中的密码是以特定格式存储的。
如果你有物理访问服务器的权限,你可以通过绕过内核选项single (或Ubuntu的init=/bin/bash )在单用户模式下重启,这里有一个教程 。 然后你可以通过使用passwd和reboot系统来像往常一样改变你的root密码。
最好的做法是避免通过ssh进行root访问,并使用sudo获得超级用户权限。 您也可以禁用OpenSSH的密码authentication并切换到公钥authentication 。
UPD:我没有足够的信誉回答你的评论,所以更新答案:你可以通过改变bootloader中的内核启动参数来启动到单用户模式。 除非你为Grub设置了密码,否则不需要密码。 请查看我上面提到的教程来执行单用户引导。