Linux下如何编译安装iptables实例:
先卸载系统已经安装的iptables,卸载前需备份三个文档:iptables启动脚本,iptables-config配置文档,以及已经建立好的iptables规则文档
[root@linuxidc ~]# cp /etc/init.d/iptables ~/iptables #复制iptables启动脚本
[root@linuxidc ~]# cp /etc/sysconfig/iptables-config ~/ #复制iptables配置文档
[root@linuxidc ~]#cp /etc/sysconfig/iptables ~/iptables.rules#复制已建立的iptables规则文档
[root@linuxidc ~]# service iptables stop #停止iptables服务
清除防火墙规则: [确定]
把 chains 设置为 ACCEPT 策略:filter [确定]
正在卸载 Iiptables 模块: [确定]
[root@linuxidc ~]# chkconfig iptables off #关闭开机自启动iptables
[root@linuxidc ~]# rpm -e iptables-ipv6 iptables iptstate --nodeps #卸载iptables相关包
至少需卸载上述三个包,--nodeps强制卸载忽略依赖关系。
warning: /etc/sysconfig/iptables-config saved as /etc/sysconfig/iptables-config.rpmsave
[root@linuxidc ~]# ls #查看下载的iptables源码包和netfilter包
dev ip_forwarz~ mbox utility etc iptables proc
winmail.dat init iptables-1.4.6.tar.bz2 readme netfilter-layer7-v2.23.tar.gz
[root@linuxidc ~]# tar jxvf iptables-1.4.6.tar.bz2 -C /usr/src #解压包到指定路径/usr/src
[root@linuxidc ~]# tar zxvf netfilter-layer7-v2.23.tar.gz -C /usr/src #解压包到指定路径/usr/src -C指定加压缩路径
[root@linuxidc ~]# cd /usr/src/
[root@linuxidc src]# pwd
/usr/src
[root@linuxidc src]# ls
iptables-1.4.6 kernels linux-2.6.38 netfilter-layer7-v2.23 RedHat
[root@linuxidc src]# cp netfilter-layer7-v2.23/iptables-1.4.3forward-for-kernel-2.6.20forward/libxt_layer7.* iptables-1.4.6/extensions/ #把netfilt目录中libxt_1ayer7.*所有文件复制到iptables中的extensions目录中
[root@linuxidc src]# ln -s linux-2.6.38 linux #生成软链接为linux
[root@linuxidc src]#ls
iptables-1.4.6 kernels linux linux-2.6.38 netfilter-layer7-v2.23 redhat
[root@linuxidc src]#cd iptables-1.4.6/
[root@linuxidc iptables-1.4.6]# pwd
/usr/src/iptables-1.4.6
[root@linuxidc iptables-1.4.6]# ./configure --prefix=/usr --with-ksource=/usr/src/linux #编译--prefix指定安装路径 --with-ksource指定关联的源路径
.......
config.status: executing depfiles commands
config.status: executing libtool commands
[root@linuxidc iptables-1.4.6]# make
[root@linuxidc iptables-1.4.6]# make install
[root@linuxidc iptables-1.4.6]# which iptables #查看刚安装的iptables路径
/usr/sbin/iptables
[root@linuxidc iptables-1.4.6]# cd
[root@linuxidc ~]# vim iptables #需修改2个路径跟刚才安装的iptables一致
[root@linuxidc ~]# cp iptables /etc/init.d/
[root@linuxidc ~]# chkconfig --add iptables #加入到开机启动列表中
[root@linuxidc ~]# chkconfig iptables on #设置开机启动
[root@linuxidc ~]# cp iptables-config /etc/sysconfig/
[root@linuxidc ~]# service iptables start
下载l7-protocols-2009-05-28.tar.gz:
[root@linuxidc ~]# ls
l7-protocols-2009-05-28.tar.gz utility iptables-1.4.6.tar.bz2 readme
etc iptables netfilter-layer7-v2.23.tar.gz
[root@linuxidc ~]#tar xvf l7-protocols-2009-05-28.tar.gz
[root@linuxidc ~]# cdl7-protocols-2009-05-28
[root@linuxidc l7-protocols-2009-05-28]#make install #直接编译安装
mkdir -p /etc/l7-protocols
cp -R * /etc/l7-protocols
[root@linuxidc l7-protocols-2009-05-28]# service iptables restart
[root@linuxidc l7-protocols-2009-05-28]#cd
[root@linuxidc ~]# iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -j SNAT --to-source 172.16.100.7 #原地址转换成172.16.100.7
[root@linuxidc ~]#iptables -A FORWARD -s 192.168.10.0/24 -m layer7 --l7proto qq -j REJECT
#禁止原地址为192.168.10.0/24的主机,登录qq服务
iptables-1.4.6.tar.bz2 与l7-protocols-2009-05-28.tar.gz 下载地址:
可以到Linux公社资源站下载:
------------------------------------------分割线------------------------------------------
具体下载目录在 /2017年资料/4月/8日/Linux下编译安装iptables/
------------------------------------------分割线------------------------------------------