博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux下检测SSH暴力破解攻击与防护功能
阅读量:6495 次
发布时间:2019-06-24

本文共 2274 字,大约阅读时间需要 7 分钟。

  hot3.png

网络上无聊的人一大堆,SSH端口密码扫描破解的人也很多,如果你的VPS被攻破那么会被用来攻击别人(如DDOS攻击),那么遇到严格的服务商,那么就会被关闭或者永久关闭,下面微饭给大家推荐个检测SSH破解及防护方法。

SSH暴力破解检测方法
如果你CPU/内存异常爆表,连接速度极慢,有异常进程等情况,有可能你的VPS被人扫描破解或者已经沦陷。。
可以用此方法检测下多少人在“盯着”你的VPS

# cat /var/log/secure | awk '/Failed/{print $(NF-3)}' | sort | uniq -c | awk '{print $2" = "$1;}'

通过上面的命令可以查看有哪些IP尝试过连接和破解次数,如下所示:

109.74.209.197 = 9113.195.145.70 = 740113.195.145.85 = 1038115.197.42.232 = 3115.239.212.132 = 19115.239.212.133 = 14115.239.212.134 = 17115.239.212.135 = 18115.239.212.136 = 16115.239.212.137 = 23115.239.212.138 = 16

DenyHosts安装与配置演示:

1、下载DenyHosts 并解压

# wget http://soft.vpser.net/security/denyhosts/DenyHosts-2.6.tar.gz# tar zxvf DenyHosts-2.6.tar.gz# cd DenyHosts-2.6

2、安装、配置和启动

安装前建议执行:

$ echo "" > /var/log/secure && service rsyslog restart # 清空以前的日志并重启一下rsyslog# python setup.py install

因为DenyHosts是基于python的,所以要已安装python,大部分Linux发行版一般都有。默认是安装到/usr/share/denyhosts/目录的,进入相应的目录修改配置文件

# cd /usr/share/denyhosts/# cp denyhosts.cfg-dist denyhosts.cfg# cp daemon-control-dist daemon-control

默认的设置已经可以适合centos系统环境,你们可以使用vi命令查看一下denyhosts.cfg和daemon-control,里面有详细的解释

接着使用下面命令启动denyhosts程序

# chown root daemon-control# chmod 700 daemon-control# ./daemon-control start

如果要使DenyHosts每次重起后自动启动还需做如下设置:

# ln -sf /usr/share/denyhosts/daemon-control /etc/init.d/denyhosts# chkconfig --add denyhosts# chkconfig --level 2345 denyhosts on

或者执行下面的命令加入开机启动,将会修改/etc/rc.local文件:

# echo "/usr/share/denyhosts/daemon-control start" >> /etc/rc.local

DenyHosts配置文件/usr/share/denyhosts/denyhosts.cfg说明:

SECURE_LOG = /var/log/secure#sshd日志文件,它是根据这个文件来判断的,不同的操作系统,文件名稍有不同。 HOSTS_DENY = /etc/hosts.deny#控制用户登陆的文件 PURGE_DENY = 5mDAEMON_PURGE = 5m#过多久后清除已经禁止的IP,如5m(5分钟)、5h(5小时)、5d(5天)、5w(5周)、1y(一年) BLOCK_SERVICE = sshd#禁止的服务名,可以只限制不允许访问ssh服务,也可以选择ALL DENY_THRESHOLD_INVALID = 5#允许无效用户失败的次数 DENY_THRESHOLD_VALID = 10#允许普通用户登陆失败的次数 DENY_THRESHOLD_ROOT = 5#允许root登陆失败的次数 HOSTNAME_LOOKUP=NO#是否做域名反解 DAEMON_LOG = /var/log/denyhosts

为防止自己的IP被屏蔽,可以:echo “你的IP” >> /usr/share/denyhosts/allowed-hosts 将你的IP加入白名单,再重启DenyHosts:/etc/init.d/denyhosts ,如果已经被封,需要先按下面的命令删除被封IP后再加白名单。

如有IP被误封,可以执行下面的命令解封:wget http://soft.vpser.net/security/denyhosts/denyhosts_removeip.sh && bash denyhost_removeip.sh 要解封的IP
查看攻击ip 记录

# cat /etc/hosts.deny

转载于:https://my.oschina.net/yehun/blog/871110

你可能感兴趣的文章
Linux 内核链表
查看>>
git学习------>Git 分支管理最佳实践
查看>>
括号和出栈所有序列问题
查看>>
第一次操刀数据库分表的教训与经验
查看>>
录音声音小
查看>>
Ubuntu 12.04 安装 Chrome浏览器
查看>>
java 反射
查看>>
ORACLE物化视图(物理视图)
查看>>
android 读取json数据(遍历JSONObject和JSONArray)(转)
查看>>
UIScrollView中的手势
查看>>
递归和迭代的差别
查看>>
基于jquery的可拖动div
查看>>
可以简易设置文字内边距的EdgeInsetsLabel
查看>>
[詹兴致矩阵论习题参考解答]习题1.3
查看>>
Android Fragment的使用
查看>>
mysql半同步复制实现
查看>>
沙朗javascript总结一下(一)---基础知识
查看>>
js深入研究之函数内的函数
查看>>
LeetCode:4_Median of Two Sorted Arrays | 求两个排序数组的中位数 | Hard
查看>>
uva-12657 - Boxes in a Line(双向链表)
查看>>