Linux系统安全设置之SSH防止被入侵
很多Linux系统的服务器被入侵,以及查看服务器是不是再被攻击。其实攻击服务器的常见的方式也就那几个,比如说文件上传渗透,文件跨目录渗透,SQL注入、ssh暴力破解,还有什么XSS之类的,然后其中好多攻击手段都是针对网站做的,如果在服务器上没有网站的话,其实没什么影响。但是这个 ssh暴力破解它是什么?就相当于很多密码去试你的服务器,然后如果服务器的密码是个弱密码的话,或者在他的字典里有你的密码,黑客很容易就攻击你的服务器。
然后今天我看看我这服务器是不是被攻击了,其实这个为什么要写这一文章,是因为我之前确实被攻击过,那时候确实没把这个东西当一回事,当时是添加了一个用户,然后是弱密码,是个普通用户,然后就是被攻击了,怎么知道服务器是否被攻击了,那时候我是用Zabbix直接监控了我五六台的云服务器,然后那天早上一看我那个手机上就来邮件了,都是我自己的邮箱给我自己来的,说我那个服务器内存满了,然后看了下服务器是一个亚马逊的,亚马逊也给我来短信,给我来报警,一直说我那个内存爆满,然后我登录服务器一看,刚开始还不知道被攻击,后来研究了一下的确被攻击了,赶紧把那用户删了,如果不及时处理的话网站就会收到打不开的影响,然后今天就带大家看一下我们的日志,然后分析一下我服务器上的日志,看看谁在攻击。
我们如果有大家对这个感兴趣的话,或者想知道怎样防护的话,文章后面会告诉大家怎样防御这个SSH密码暴力破解。
其实很简单,好,现在我连上我的服务器,这是一个我在东京的一个服务器,然后我先进到我的日志文件夹,一般在最下面的文件名,我这是Ubuntu系统应该也在这,但是我之前看了一下简单看了一下Ubuntu,好像日志的名字不一样,我这Ubuntu实在是不太喜欢用的也不好,所以给大家讲这个simples看这里面好多日志里边引导什么cron这是计划任务,dmesg这是一个开机的一个记录,mail,这是邮件。然后message。这是你系统的一个一些运行日志,我需要看的是这个secure,这是安全,最主要的就是看lastlog里最后登录的IP,大量的IP尝试登录的话可以执行命令去筛选出来,cat /var/log/secure | awk '/Failed/{print $(NF-3)}' | sort | uniq -c | awk '{print $2" = "$1;}' 通过分析后发现有5个IP位居榜首,这些IP都是国外的IP,并不是我自己地区的IP,而且都是成功的登录,说明的确是被黑客暴力破解登录了SSH。
知道了问题的所在,以及了解了服务器被入侵的原因,那么咱来说说如何防止服务器被暴力尝试登录攻击,第一个是更改默认的SSH端口,第二次是对SSH端口进行端口安全组策略,不对外开放,只运行指定的IP进行连接,再一个就是对root的登录做证书验证,如果发现服务器被入侵的原因是通过网站漏洞上传了脚本后门并执行了提权操作拿到了服务器权限的话,那就得需要网站漏洞修复公司SINE安全对网站进行安全加固,找到代码漏洞并修复,清理掉网站webshell后门来确保服务器的安全。