本文摘自PHP中文网,作者巴扎黑,侵删。
很多情况下,你可能需要在Linux下屏蔽IP地址。比如,作为一个终端用户,你可能想要免受间谍软件或者IP追踪的困扰。如果你是一名系统管理员,你可能想要禁止垃圾IP地址访问你们的公司邮件服务器。或者你因一些原因想要禁止某些国家访问你的web服务。在许多情况下,然而,你的IP地址屏蔽列表可能会很快地增长到几万的IP。该如何处理这个?解决方案: ipset + iblocklist2ipset
安装:
官方网站:http://ipset.netfilter.org/install.html
最简单的方法就是yum安装,但是该方法版本比较低,缺少一些使用的模块参数等,所以不大推荐;
编译安装:
1.依赖环境:
1 | yum install libmnl libmnl-devel kernel-devel libtool-devel -y
|
(新版本的安装方法:git pull git://git.netfilter.org/libmnl.git 运行./autogen.sh)
(备注:如果只安装libmnl时,会出现下面的报错:
1 2 3 4 5 6 7 8 | checking for libmnl... configure: error: Package requirements (libmnl >= 1) were not met:
No package 'libmnl' found
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
Alternatively, you may set the environment variables libmnl_CFLAGS
and libmnl_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
)
|
在编译的时候可能提示找不到/lib/modules/2.6.32-431.el6.x86_64/source
经过排查发现这个软连接/lib/modules/2.6.32-431.el6.x86_64/build -->/usr/src/kernels/2.6.32-431.el6.x86_64 不存在
解决办法:重新建立软连接
1 | ln -sb /usr/src/kernels/2 .6.32-573.3.1.el6.x86_64 /lib/modules/2 .6.32-431.el6.x86_64 /build
|
在运行 ./autogen.sh时报错:
找不到 /usr/share/libtool/
解决办法:安装libtool-devel工具包即可 yum install libtool-devel
2.编译安装ipset (linux kernel source code (version >= 2.6.32))
1 2 3 4 5 6 7 8 | wget -P /usr/local/src http: //ipset .netfilter.org /ipset-6 .26. tar .bz2
cd /usr/local/src && tar xjf ipset-6.26. tar .bz2 && cd ipset-6.26
. /autogen .sh
. /configure
make
make modules
make install
make modules_install
|
注意:不同linux内核使用不同版本的源码包
附注:linux kernel source code (version >= 2.6.16 or >= 2.4.36)
编译安装:
1 2 3 4 | wget -P /usr/local/src http: //ipset .netfilter.org /ipset-4 .5. tar .bz2
cd /usr/local/src && tar xf ipset-4.5. tar .bz2 && cd ipset-4.5
make KERNEL_DIR=http: //img .xue163.com /lib/modules/ $(shell uname -r) /build
make KERNEL_DIR=http: //img .xue163.com /lib/modules/ $(shell uname -r) /build install
|
常用使用命令:
阅读剩余部分
相关阅读 >>
Linux怎么查看cpu占用率(使用率)?
Linux中什么是shell
Linux与android的区别
Linux终端乱码解决方法
Linux grep与正则表达式的简单介绍
如何在Linux中使用mv命令重命名文件?(代码示例)
增加过安全组规则之后修改安全组入方向规则的描述信息
总结Linux环境下的last和lastb的命令
Linux tar命令如何使用
Linux中查看ip地址的命令是什么
更多相关阅读请进入《Linux》频道 >>
转载请注明出处:木庄网络博客 » Linux下批量屏蔽恶意IP地址防攻击的方法详解