lucamauri / wiki2ban
允许在页面保存时将页面内容传输到GitHub
This package is auto-updated.
Last update: 2024-09-18 17:22:31 UTC
README
徽章
Wiki2Ban
Wiki2Ban,简称W2B,是一个MediaWiki扩展,可以生成失败的认证日志,这些日志可以被输入到Fail2Ban中以阻止相关的IP地址。
此扩展受到Extension Fail2Banlog的启发,但此扩展未维护且是为旧版MediaWiki版本构建的。
因此,这是由Luca Mauri从头开始编写的,最初用于Wikitrek:在此将其作为开源发布,以防它对其他人有用。
功能
要求
安装
安装此扩展最简单的方法是使用Composer:它将自动解析所有依赖关系并将它们安装。
将以下示例中的require
配置添加到您mediawiki安装根目录的composer.local.json
中,或者如果尚不存在,则创建该文件
{ "require": { "lucamauri/wiki2ban": "~1.0" }, "extra": { "merge-plugin": { "include": [ ] } }, "config": { } }
然后,在命令提示符中,在您的mediawiki安装根目录中运行Composer
composer install --no-dev
将以下代码添加到网站的LocalSettings.php
中其余扩展加载附近
wfLoadExtension('Wiki2ban');
在此行以下,添加如下所述的配置参数。
配置
在LocalSettigs.php
文件中添加
$wgW2BlogFilePath = "/var/log/mediawiki/wiki2ban.log";
$wgW2BlogFilePath
扩展将写入的日志文件路径,Fail2Ban将读取该路径以执行封禁操作。
Fail2Ban配置
最后,您需要在Fail2Ban中配置一个规则和一个过滤器:此扩展在f2bconf
目录中包含两个文件,显示基本配置。
规则
规则显示在文件中
/f2bconf/w2brule.conf
此文件的内容可以复制到Fail2Ban的主要配置文件(通常是/etc/fail2ban/jail.local
)或作为单独的配置文件保留在jail.d
目录中。请记住使用配置文件中定义的路径自定义参数logpath
(见上文)。
过滤器
过滤器显示在文件中
/f2bconf/w2bfilter.conf
此文件应该复制到Fail2Ban的过滤器目录(通常是/etc/fail2ban/filter.d/
)。
故障排除
要读取详细的日志消息,您可以拦截名为Wiki2Ban
的日志组:例如,在LocalSetting.php
中进行以下配置
$wgShowExceptionDetails = true; $wgDebugLogGroups['Wiki2Ban'] = "/var/log/mediawiki/Wiki2Ban-{$wgDBname}.log";
附加文件
wiki2ban.json
包含在f2bconf
文件夹中,是日志导航器应用程序的定义,如此处所述:https://docs.lnav.org/en/latest/formats.html#defining-a-new-format