DirectAdmin增加封禁IP功能

作者:袖梨 2022-06-30

这里我们将为DirectAdmin面板增加IP封禁的功能,这样在DirectAdmin的超级监控中就可以将可以的IP地址直接列入黑名单,禁止此IP访问网站和后台,也增加了检测log文件的功能,发现可疑的信息也将会列入黑名单。

第一部分我们先设置防火墙,一下的操作适用于CentOS/Fedora类型的系统,没有在Debian和FreeBSD系统上面测试过,是否可用并不清楚。
 

 代码如下 复制代码
cd /etc/init.d
mv iptables iptables.backup
wget http://files.directadmin.com/services/all/iptables
chmod 755 iptables

此处我们先将原来的iptables重新命名,这样可以最大限度的减少防火墙的配置错误,出现错误还原即可,否则可能会出现一些意想不到的情况。

fanghuo_1jquery1395210524796="20" />

    注意:此防火墙配置默认的SSH为22端口,所以要么自己手动修改登录端口,或者手动修改防火墙配置。

下面我们将重新启动iptables,使得刚刚配置的防火墙生效。

 代码如下 复制代码

 
/etc/init.d/iptables restart

fanghuo_2

此时我们再次确认一下所有的端口和链接正常,包括正常的后台链接能够打开,否则请关闭此防火墙配置,进行还原。因为上次我们修改了DirectAdmin的默认登录端口为12345,这里小站测试了一下,这个防火墙规则封掉了这个端口,所以我们重新将端口修正为2222,不会修改的朋友请看“DirectAdmin的汉化和端口的修改”,修改之后我们正常的打开了DirectAdmin的登陆面板。

接下来第二部分就是安装DirectAdmin的block_ip.sh模块用来创建一个文件来列出被封禁的IP,具体命令如下:

 

 代码如下 复制代码
cd /usr/local/directadmin/scripts/custom
wget http://files.directadmin.com/services/all/block_ip.sh
wget http://files.directadmin.com/services/all/show_blocked_ips.sh
wget http://files.directadmin.com/services/all/unblock_ip.sh
chmod 700 block_ip.sh show_blocked_ips.sh unblock_ip.sh

这时候登陆DirectAdmin就可以封禁IP地址了。

    管理员-->强力监控-->Block IPs

在此之前我们要创建两个文件,一个是IP黑名单,一个是IP白名单,具体作用大家都知道,命令如下:

 代码如下 复制代码

 
touch /root/blocked_ips.txt
touch /root/exempt_ips.txt

之后就可以直接封IP了。
fanghuo_3

从上图可以看到总是有一些无聊的人喜欢疯狂的登陆DirectAdmin的后台。所以我们将其一一添加到黑名单。

fanghuo_4

最后一部分是可选的,以上的所有操作都是靠管理员自己手动来封IP的,要想实现自动封禁IP,就需要这部分的操作,这部分也就是让DirectAdmin自动检测log等相关文件,用来实现可疑的IP自动填到黑名单,在操作之前要自己先测试和操作顺利之后才实施此项操作,避免DirectAdmin将自己的IP添加到黑名单。

 代码如下 复制代码

 
cd /usr/local/directadmin/scripts/custom
wget http://files.directadmin.com/services/all/brute_force_notice_ip.sh
chmod 700 brute_force_notice_ip.sh

上面命令执行完成之后,DirectAdmin就会自己检测可以的IP了,此项功能经小站测试,功能还是不错的,小站的IP黑名单一直在增加,确实是很实用的功能。

原文来自:www.defel.net

相关文章

精彩推荐