很早之前写的一篇文章放在别的地方,现在搬过来……
登录服务器,确认用户名和密码都正确,输入三次以后提示:Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).
网上找了各种解决方案,说什么因为在本机ssh目录下生成了,所以需要更服务器进行绑定——并不是,这几个文件,之前就有了,连接服务器也没什么问题,后面又换了台电脑连接服务器,也是不行,至此,可以排除是本机问题了,至于是服务器的问题的话,多次尝试修改密码重启服务器,并且试过阿里云的“管理终端”登录,一样无法登录,无奈之下提交了阿里云的工单,工作人员还是很给力的,很快给了帮忙重置了密码告知可以登录了,并且说我服务器有异常程序,cpu使用不太正常,让我自己看下。
使用htop查看,就发现这么个程序,查了下,minierd这是个挖矿程序
想到之前root账户被暴力破解,当时改了密码,查了下系统以为没问题了,……很明显问题没有解决,这个坑在等着我。
迅速kill掉,结果几分钟以后程序又自动启动了,继续查资料……
删掉这两个文件,……过一会程序依然又自启了
so,又查了定时任务,/etc/crontab,有异常定时任务——删掉,再kill掉miners程序和删掉/opt下的异常文件
依然无用,最后呢,临时找了个解决办法,将/opt/minerd文件去掉执行权限 chmod -x minerd,再kill掉miners程序,暂时miners是不再启动了,就想今天有点晚了明天再看看问题。
……结果很不幸,第二天又出现Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).没办法,又提交了工单(阿里云工作人员好辛苦),然后那边再次帮忙改了下密码,给了密码又可以登录了,实在不能理解,同样是改密码,我是在阿里云控制台改的密码,工作人员说他们是通过password命令改的密码,就都只做了一个改密码操作,难道还有区别?
好吧,继续查问题,登录出现Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).总感觉是因为之前被暴力破解以后,不光被植入了miners程序,应该还被改了什么东西导致的。所以花了大半天的时间把系统上所有觉得有可能的都查了一遍——当然,一切全靠谷歌。
总结了,大概进行了以下操作
1、/etc/crontab 删掉这里的异常任务
2、删掉/var/spool/cron/root和/var/spool/cron/crontabs/root里的异常任务
3、通过ls -atrl /etc/init.d/ 查看有没有什么异常服务(对应了下被暴力破解的时间和查看的服务时间,并没有发现什么异常服务)
4、查看/etc/passwd下有没有什么异常的用户,这边删掉了nap用户,不知道这个是什么用户,但是查资料的时候有人说被开启了lady服务和ntp服务,so,反正这边我也没什么用,安全起见就删了这个用户,userdel -r ntp
附shell脚本:
5、删掉/usr/sbin/ntp和 /usr/local/etc/minerd.conf
6、kill掉minerd程序
7、删掉/opt下的miners和KHK75NEOIq33
8、find / -name miners查看下还有没有遗漏的没删掉
9、htop查看cpu使用情况,等了几分钟,都没看到minerd再次启动,故问题算是解决了。
最后总结呢,追究最开始服务器被暴力破解,查了下相关资料,是跟redis有关,之前为了测试方便,把redis端口开放出去让外网可以连接redis,后面把redis.conf文件修改了下,改了下默认端口,并且不允许外网访问