在windows中用上类似Fail2ban的防爆破功能

前言:我的服务器为了可以用rdp进行远程控制,但是坏人多,一直扫,导致admin账户被封,一直不能登录,一直等,原本准备采用白名单形式,但是ip经常变动。

下面就为了防御密码爆破,找到的一个win可用的。

直接上链接:fail2ban-win: Windows版本的fail2ban

iamverygood/fail2ban-win: fail2ban for windows

这是gitee和github的开源代码本站直接备份复用原文内容。

背景

 

Linux下面使用fail2ban防止服务器被暴力破解很方便,Windows下未找到合适的相关软件,所以决定自己做一个。

2.开发编译环境

 

  • VS2022
  • c#
  • sqlite 3
  • .net framework 2.0

使用VS2022打开项目,直接编译即可。

3.项目说明

 

3.1.ServiceManager

 

服务安装管理工具,用于将程序安装成Windows服务,并支持服务的启动、停止、卸载。

3.2.fail2ban-win

 

服务主程序

4.2.下载安装

 

从以下地址下载安装程序:

https://gitee.com/iamverygood/fail2ban-win/releases/tag/v0.1

我用百度备份的:fail2ban-win-20221112.zip 链接: https://pan.baidu.com/s/1KL9kd78dJXXjX4I0yqV1NQ?pwd=7w8y 提取码: 7w8y

5.安装配置

 

5.1.安装

 

鼠标双机运行ServiceManager.exe,点击安装服务按钮完成安装。

在windows中用上类似Fail2ban的防爆破功能

5.2.配置

 

主配置文件fail2ban-win.ini,如果不存在,可以手动创建,文件配置内容:

[fail2ban-win]
# 白名单
ignoreip = 127.0.0.1
# 1年:1y,30分钟:30m,10小时:10h
bantime  = 24h
# 5分钟内失败5次,就被禁ip
findtime = 5m
maxretry = 5
firewallnameprefix=fail2ban-win-

日志配置文件NLog.config,如果不存在,可以手动创建,文件配置内容:

<?xml version="1.0" encoding="utf-8" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

  <!-- 
  See http://nlog-project.org/wiki/Configuration_file 
  for information on customizing logging rules and outputs.
   -->
  <targets>
    <target name="file" xsi:type="File"
        layout="${longdate} ${logger} ${message}${exception:format=ToString}"
        fileName="${basedir}/logs/fail2ban-win-${level}-${shortdate}.txt"
        maxArchiveFiles="1000"
        archiveAboveSize="1024000"
        archiveEvery="Day" />
  </targets>

  <rules>
    <logger name="*" minlevel="Info" writeTo="file" />
  </rules>
</nlog>

6.运行状态

 

6.1.运行日志

 

程序运行后,会在工作目录下创建日志子目录logs

在windows中用上类似Fail2ban的防爆破功能

在windows中用上类似Fail2ban的防爆破功能

默认的日志级别为Info,可自行调整NLog.config配置文件中的日志级别。

6.2.运行数据库

 

程序运行后,会在工作目录下生成运行数据库fail2ban-win.db,为sqlite3格式,可使用相应管理工具打开。

6.3.防火墙规则

 

当某个IP多次尝试登陆失败被封闭后,会自动在操作系统的防火墙中添加1条条阻止规则:

在windows中用上类似Fail2ban的防爆破功能

注意:防火墙需要自行开启,如果未开启,软件添加的规则也将不会生效,建议配置:

域配置文件、专用配置文件、公用配置文件均开启。

搜索