前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >一日一工具|ssh加固之fail2ban

一日一工具|ssh加固之fail2ban

作者头像
追马
发布于 2020-07-06 08:41:21
发布于 2020-07-06 08:41:21
70000
代码可运行
举报
文章被收录于专栏:一日一工具一日一工具
运行总次数:0
代码可运行

1 安装部署

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 创建 roles, 为的是一劳永逸,编写一次,到处运行

ansible-galaxy init fail2ban-init

# 然后编写 palybook, 目录结构如下
   tree fail2ban
fail2ban
├── README.md
├── defaults
│   └── main.yml
├── files
├── handlers
│   └── main.yml
├── meta
│   └── main.yml
├── tasks
│   ├── install.yml
│   ├── main.yml
│   ├── reboot.yml
│   └── sync-config.yml
├── templates
│   └── config.j2
├── tests
│   ├── inventory
│   └── test.yml
└── vars
    └── main.yml

2 安装部署

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
   ansible-playbook -i hlist deploy.yml -uroot -k
[WARNING]: log file at /var/log/ansible.log is not writeable and we cannot create it, aborting

SSH password:

PLAY [hlists] **********************************************************************************************************************
Tuesday 12 May 2020  16:06:40 +0800 (0:00:00.197)       0:00:00.197 ***********

TASK [fail2ban : install fail2ban] *************************************************************************************************
ok: [192.168.1.25]

Tuesday 12 May 2020  16:06:47 +0800 (0:00:06.949)       0:00:07.146 ***********

TASK [fail2ban : sync config to remote machine] ************************************************************************************
ok: [192.168.1.25]
Tuesday 12 May 2020  16:06:49 +0800 (0:00:01.740)       0:00:08.887 ***********

TASK [fail2ban : restart fail2ban service] *****************************************************************************************
changed: [192.168.1.25]

PLAY RECAP *************************************************************************************************************************
192.168.1.25               : ok=3    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0

Tuesday 12 May 2020  16:06:51 +0800 (0:00:02.310)       0:00:11.198 ***********
===============================================================================
fail2ban : install fail2ban ------------------------------------------------------------------------------------------------- 6.95s
fail2ban : restart fail2ban service ----------------------------------------------------------------------------------------- 2.31s
fail2ban : sync config to remote machine ------------------------------------------------------------------------------------ 1.74s

3 检测服务状态和测试功能

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@zhuima ~]# systemctl status fail2ban
● fail2ban.service - Fail2Ban Service
   Loaded: loaded (/usr/lib/systemd/system/fail2ban.service; enabled; vendor preset: disabled)
   Active: active (running) since Tue 2020-05-12 16:06:51 CST; 1s ago
     Docs: man:fail2ban(1)
  Process: 11967 ExecStop=/usr/bin/fail2ban-client stop (code=exited, status=0/SUCCESS)
  Process: 11971 ExecStartPre=/bin/mkdir -p /run/fail2ban (code=exited, status=0/SUCCESS)
 Main PID: 11973 (f2b/server)
   Memory: 9.3M
   CGroup: /system.slice/fail2ban.service
           └─11973 /usr/bin/python -s /usr/bin/fail2ban-server -xf ...

May 12 16:06:51 zhuima systemd[1]: Starting Fail2Ban Se...
May 12 16:06:51 zhuima systemd[1]: Started Fail2Ban Ser...
May 12 16:06:51 zhuima fail2ban-server[11973]: Server r...
Hint: Some lines were ellipsized, use -l to show in full.

客户端主机

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 # fail2ban 的设置是 ssh 服务的最大尝试次数 为 52  ssh root@192.168.1.25
root@192.168.1.25's password:
Permission denied, please try again.
root@192.168.1.25'
Permission denied, please try again.
root@192.168.1.25's password:
root@192.168.1.25: Permission denied (publickey,password).SIG(127)  ssh root@192.168.1.25
root@192.168.1.25'
Permission denied, please try again.
root@192.168.1.25's password:
Permission denied, please try again.
root@192.168.1.25'









^C

# 再次访问的时候提示拒绝
 ↵ SIGINT(2)  ssh root@192.168.1.25
ssh: connect to host 192.168.1.25 port 22: Connection refused

 ↵ SIG(127)  ssh root@192.168.1.25
ssh: connect to host 192.168.1.25 port 22: Connection refused

fail2ban 机器

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@zhuima ~]# fail2ban-client status
Status
|- Number of jail:  1
`- Jail list:  ssh-iptables
[root@zhuima ~]#
[root@zhuima ~]#
[root@zhuima ~]# fail2ban-client status ssh-iptables
Status for the jail: ssh-iptables
|- Filter
|  |- Currently failed:  0
|  |- Total failed:  5
|  `- File list:  /var/log/secure
`- Actions
   |- Currently banned:  1
   |- Total banned:  1
   `- Banned IP list:  192.168.1.153

4 目地

很多时候,常识性的认知会让我们觉得我机器没有公网 IP,只对外映射特定的端口出去,安全等级会上升很高,殊不知很多时候,内部员工的一些操作(在开发机器上下载未知来源的软件,安装一些比较偏门的工具) 很有可能会导致安全问题的发生,而且局域网安全防护相对入口来说还是比较薄弱的,使用fail2ban 加固 ssh 是一个不错的选择,当然 fail2ban 的功能不单单局限于作用于 ssh 服务~

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-05-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 链上追马 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
用Fail2ban 实现动态防火墙防暴力破解
从CentOS7开始,官方的标准防火墙设置软件从iptables变更为firewalld。为了使Fail2ban与iptables联动,需禁用自带的firewalld服务,同时安装iptables服务。因此,在进行Fail2ban的安装与使用前需根据博客CentOS7安装和配置iptables防火墙进行环境配置。
好派笔记
2021/09/13
9600
fail2ban 防止暴力破解
[root@zmedu63 ~]# yum -y install epel-release
互联网老辛
2019/05/17
2.2K0
fail2ban 防止暴力破解
fail2ban保护linux安全
一、下载安装 #wget http://cdnetworks-kr-2.dl.sourceforge.net/project/fail2ban/fail2ban-stable/fail2ban-0.8.4/fail2ban-0.8.4.tar.bz2 #tar xvfj fail2ban-0.8.4.tar.bz2 #cd fail2ban-0.8.4 #python setup.py install #cd files # cp ./redhat-initd
小小科
2018/05/02
1.1K0
centos7 之 sshd,iptables,firewall,fail2ban 常用操作
# 在原端口 22 下,新增 sshd 端口 20000,并 开启账号密码登录、开启 root 账号登录
卓越笔记
2023/02/17
6710
使用fail2ban增强Linux安全防护
同一个用户在不断的尝试用各种用户来登录你的机器。 fail2ban可以很有效的阻止这种频繁的试图登录你的机器的尝试
EltonZheng
2021/01/22
5870
使用 fail2ban 和 FirewallD 黑名单保护你的系统
如果你运行的服务器有面向公众的 SSH 访问,你可能遇到过恶意登录尝试。本文介绍了如何使用两个实用程序来防止入侵者进入我们的系统。
用户8639654
2021/09/22
1.9K0
如何使用 fail2ban 防御 SSH 服务器的暴力破解攻击
对于SSH服务的常见的攻击就是暴力破解攻击——远程攻击者通过不同的密码来无限次地进行登录尝试。当然SSH可以设置使用非密码验证验证方式来对抗这种攻击,例如公钥验证或者双重验证。将不同的验证方法的优劣处先放在一边,如果我们必须使用密码验证方式怎么办?你是如何保护你的 SSH 服务器免遭暴力破解攻击的呢?
胡齐
2019/09/23
2.8K0
如何使用 fail2ban 防御 SSH 服务器的暴力破解攻击
使用Fail2ban保护你的Linux服务器
你是否在担心你的服务器被暴力破解?你是否还在担心恶意频繁请求导致你的服务不可用?今天带给大家一款开源防护工具 “Fail2ban” ,从此让你睡个安稳觉,起因是因为自己家里开了公网IP,对外映射了一个内网都Linux机器,方便自己从外面访问到家里,今天一看日志,好家伙,ssh登录失败上千次,作为注重安全的哦,必须想办法阻止这一切。
Lcry
2023/08/09
6.9K0
Confluence 6 使用 Fail2Ban 来限制登录尝试
我们需要在我们网站中防止密码的暴利破解。Fail2Ban 是一个 Python 的应用来查看日志文件,使用的是正则表达式,同时还可以与Shorewall (或者 iptables)直接工作来来启用临时黑名单。当一定的密码破解规则被使用后,就可以使用上面的方法了。我们可以用这个来限制给定的 URL 来访问 Confluence 的登录界面的次数。
HoneyMoose
2019/01/30
5420
Debian 安装 fail2ban 方式SSH爆破攻击
使用 Debian 这么久,影响最深的小软件莫过于 fail2ban 了。对多数服务器而已,对外开放的服务中,风险相对较高的莫过于 SSH 服务了, fail2ban 是一个轻量、有效、便捷的保护服务器免受暴力攻击的工具。 Fail2ban 使用 iptables 来阻止攻击者。
Debian中国
2020/01/21
2.8K0
如何在CentOS 7上使用Fail2Ban保护SSH
虽然通过SSH连接到服务器可能非常安全,但SSH守护程序本身是一种必须暴露给Internet才能正常运行的服务。这带来了一些固有的风险,并为潜在攻击者提供了一个攻击媒介。
编程男孩
2018/10/19
3.2K0
如何在Ubuntu 14.04上使用Fail2Ban保护Nginx服务器
在操作Web服务器时,必须实施安全措施来保护您的站点和用户。使用防火墙策略保护您的网站和应用程序并使用密码身份验证限制对某些区域的访问是保护系统安全的一个很好的起点。但是,任何可公开访问的密码提示都可能会吸引恶意用户和机器人的暴力尝试。
林岑影
2018/10/16
1.8K0
用fail2ban阻止密码尝试攻
有些开放外网端口的主机,疯狂的遭遇密码尝试入侵,虽然密码设置的较为复杂,但是长时间的密码尝试会给/var/logs/secure写入大量日志,从而也会增加系统负担。fail2ban就可以很好的解决这个问题,设置最大尝试的次数,当超过指定次数时,fail2ban会调用iptables把尝试探测的IP加入到黑名单,并且锁定一断时间,次数和锁定时间可以根据自己设置,需要启动iptables,以下是一键配置脚本:
星哥玩云
2022/07/04
2570
如何在Ubuntu 14.04上使用Fail2Ban保护Apache服务器
在操作Web服务器时,必须实施安全措施来保护您的站点和用户。使用防火墙策略保护您的网站和应用程序并使用密码身份验证限制对某些区域的访问是保护系统安全的一个很好的起点。但是,任何可公开访问的密码提示都可能会吸引恶意用户和机器人的暴力尝试。
丰一川
2018/10/19
9980
Fail2Ban 使用技巧和心得汇总
通过【使用 Fail2Ban 保护 Nginx、WordPress 简单又高效】一文的梳理,明月基本上已经是彻底的明白和吃透了 Fail2Ban 的原理了,说白了 Fail2Ban 就是一个日志 IP 的过滤筛选器,根据不同的监狱规则从日志中找出这些“行为不端”的 IP,一旦这些 IP 发送了触犯监狱规则的请求达到阈值就会在 iptables 里直接封禁屏蔽,并且可以设置屏蔽这个 IP 的时间长久来避免误伤造成的危害过大。
明月登楼的博客
2019/07/11
4.3K0
Fail2Ban 使用技巧和心得汇总
如何使用Fail2Ban保护SSH服务
Fail2Ban扫描/var/log/auth.log之类的日志文件,并禁止IP地址进行过多的失败登录尝试。它通过更新系统防火墙规则以在可配置的时间内拒绝来自那些IP地址的新连接来实现此目的。 Fail2Ban开箱即用,可以读取许多标准日志文件,例如sshd和Apache的文件,并且可以轻松配置为读取您选择的任何日志文件,以解决所需的任何错误。
星哥玩云
2022/07/28
9060
如何使用Fail2Ban保护SSH服务
Linux防暴力破解工具Fail2ban的日志接入到GrayLog并实现GeoIP展示
在GrayLog的marketplace上有搜到关于Fail2ban日志Grok以及Pipeline的套件包
yuanfan2012
2022/03/31
1.1K0
Linux防暴力破解工具Fail2ban的日志接入到GrayLog并实现GeoIP展示
CentOS7部署fail2ban
修改ssh日志 ssh日志默认存放在/var/log/secure文件中,修改默认存放的位置 vim /etc/ssh/sshd_config SyslogFacility local1 vim /etc/rsyslog.conf local1.* /var/log/sshd.log systemctl restart rsyslog systemctl restart sshd 安装fail2ban yum install epel-release yum install fail2ban 修改f
陳斯托洛夫斯記
2022/10/27
5610
如何在Ubuntu 14.04上使用Fail2Ban保护WordPress
WordPress是一个非常强大的内容管理系统(CMS),是免费和开源的。因为任何人都可以发表评论,创建一个帐户,并在WordPress上发帖,许多恶意行为者已经创建了机器人和服务器网络,这些网络通过暴力攻击来破坏和篡改WordPress网站。Fail2ban工具可用于防止未经授权访问腾讯CVM和WordPress站点。它注意到可疑或重复登录失败,并通过修改腾讯CVM的防火墙规则主动禁止这些IP。
林岑影
2018/10/19
1K0
CentOS 7安装fail2ban + Firewalld防止爆破与CC攻击
fail2ban可以监视你的系统日志,然后匹配日志的错误信息执行相应的屏蔽动作。网上大部分教程都是关于fail2ban + iptables组合,考虑到CentOS 7已经自带Firewalld,并且使用Firewalld作为网络防火墙更加简单方便,分享下fail2ban + Firewalld使用方法。
星哥玩云
2022/08/13
3.3K0
CentOS 7安装fail2ban + Firewalld防止爆破与CC攻击
推荐阅读
相关推荐
用Fail2ban 实现动态防火墙防暴力破解
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验