如何在服务器端自动ban掉扫描ssh的IP

京东云开发者
• 阅读 118

作者:京东物流 罗旅帆

现在服务器在网络暴露一段时间就会有人不停的进行扫描各种端口,nginx的80,443,ssh的22等。进行尝试渗透,并且现在有大量框架进行全自动扫描渗透。

为了最大化的阻止扫描,可以利用fail2ban这个框架来把频繁扫描的源IP直接丢进黑名单。让服务器在一定时间内拒绝连接。



1.安装fail2ban:

# Ubuntu sudo apt update && sudo apt install fail2ban

# CentOS yum install fail2ban



我们已经完成了fail2ban的安装, 接下来就是fail2ban的配置

2.配置fail2ban

首先使用vi或者vim打开fail2ban的规则配置文件

vi /etc/fail2ban/jail.conf



按i键插入,复制以下内容:

[DEFAULT]
bantime  = 86400
maxretry = 5
findtime = 600
banaction = firewallcmd-allports
[sshd]
enabled  = true
filter   = sshd
logpath  = /var/log/secure
maxretry = 3

enable = ture filter =sshd # CentOS logpath = /var/log/secure # Ubuntu # logpath = /var/log/auth.log maxretry = 5 # 最大尝试次数 bantime = 86400 #封禁时间,单位s。-1为永久封禁

3.激活fail2ban

在配置完成后, 当然是选择激活它啦

对于CentOS7/8,Fedora

sudo systemctl restart fail2ban

对于Debian, Ubuntu或CentOS6:

sudo service fail2ban restart

如果是第一次启动的话建议把命令中的restart换成start

CentOS7设置fail2ban自启

systemctl enable fail2ban.service

4.检验fail2ban

如果要检验fail2ban有没有正确启动, 可以使用这个命令

sudo fail2ban-client ping

如果正确启动的话fail2ban会以pong作为回应(Server replied: pong), 其他情况就需要看看配置文件的格式正确以及是不是用start命令启动fail2ban什么的…

如果要查看fail2ban目前启用的规则的话

fail2ban-client status

查看某个规则下被封禁的次数以及ip(以[sshd]规则为例)

fail2ban-client status sshd



如果想看iptables的 ban策略生效状态

可以通过

sudo iptables -L INPUT -v -n | less 



总结:

通过以上操作可以看到过去24小时内一共被ban了 很多IP。如下图所示,通过这个策略。可以大幅度缓解ssh 账号密码被暴力破解的进度

如何在服务器端自动ban掉扫描ssh的IP

点赞
收藏
评论区
推荐文章
Johnny21 Johnny21
3年前
漏洞复测系列 -- SSH 支持弱加密算法漏洞
本系列文章旨在对于有一定网络安全基础的人员,在日常工作中扫描出来的各种漏洞,如何进行验证,以区分该漏洞是否存在或是扫描器误报。请勿应用非法途径。一、漏洞描述SSH的配置文件中加密算法没有指定,默认支持所有加密算
Johnny21 Johnny21
3年前
Nessus漏扫
Nessus号称是世界上最流行的漏洞扫描程序,全世界有超过75000个组织在使用它。该工具提供完整的电脑漏洞扫描服务,并随时更新其漏洞数据库。Nessus不同于传统的漏洞扫描软件,Nessus可同时在本机或远端上遥控,进行系统的漏洞分析扫描。Nessus也是渗透测试重要工具之一。所以,本章将介绍安装、配置并启动Nessus。5.1.1安装和配置Ne
Aimerl0 Aimerl0
3年前
网络渗透测试实验一
写在前面现在信安专业老师上课的考核方式也是与时俱进,要求大家都有自己的博客,然后作业啥的都推到博客上,就不用交纸质档或者电子档的作业了,十分省事且与时俱进,好评网络渗透测试实验一:网络扫描与网络侦察实验目的理解网络扫描、网络侦察的作用;通过搭建网络渗透测试平台,了解并熟悉常用搜索引擎、扫描工具的应用,通过信息收集为下一步渗透工作打下基础。系统环境
Stella981 Stella981
3年前
Nessus
一:Nessus的介绍1.1Nessus是什么?Nessus号称是世界上最流行的漏洞扫描程序,该工具提供完整的电脑漏洞扫描服务,并随时更新其漏洞数据库。Nessus不同于传统的漏洞扫描软件,Nessus可同时在本机或远端上遥控,进行系统的漏洞分析扫描。Nessus也是渗透测试重要工具之一下载网址:https://www.t
Wesley13 Wesley13
3年前
mysql千万级大数据SQL查询优化
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在where及orderby涉及的列上建立索引。2.应尽量避免在where子句中对字段进行null值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:selectidfromtwherenumisnull可以在num上设置默认值0,确保表中num列没有
Wesley13 Wesley13
3年前
O2O 行业 IT 系统架构实践分享——预告
主题:O2O行业IT系统架构实践分享时间:4月26日20:00——21:30地点:QingCloud技术分享群报名方式:扫描文末小编二维码添加好友,发送听课,小编拉你进群。讲师:张卫华,青云QingCloud架构和解决方案工程师。本期内容介绍:O2O作为一种新生的商业模式,经过这些年的实践和讨论,已
Easter79 Easter79
3年前
Spring注解@Resource和@Autowired区别对比、spring扫描的默认bean的Id、程序获取spring容器对象
\注解扫面的bean的ID问题0.前提需要明白注解扫描出来的bean的id默认是类名首字母小写,当然可以指定id:
Stella981 Stella981
3年前
Linux应急响应(一):SSH暴力破解
0x00前言SSH是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议,主要用于给远程登录会话数据进行加密,保证数据传输的安全。SSH口令长度太短或者复杂度不够,如仅包含数字,或仅包含字母等,容易被攻击者破解,一旦被攻击者获取,可用来直接登录系统,控制服务器所有权限。0x01应急场景某天,网站
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
新支点小玉 新支点小玉
10个月前
CNAS中兴新支点——源代码审计对企业有哪些好处
源代码扫描,对应用程序进行静态漏洞扫描,分析源代码中存在的安全风险,运行应用于模拟器中对应用进行实时漏洞攻击检测。你是否了解源代码扫描对企业的好处?一、源代码扫描,通常能够帮助企业解决这些问题:1、软件代码中安全漏洞和未声明功能的存在是信息安全事件频繁发生