iptables防火墙简易教程
#首先全部允许数据包通过,防止默认丢包的话下面删除规则造成数据包全部丢掉
#允许所有进来的包
iptables -P INPUT ACCEPT
#允许所有出去的包
iptables -P OUTPUT ACCEPT
#初始化iptables 清空所有规则和组
#删除所有规则
iptables
-F
#删除所有组
iptables -X
#这里才是正式开始配置iptables
#创建新的定义firewall_in
iptables -N firewall_in
#指定firewall_in组应用到INPUT chain,类似于应用组
iptables
-A INPUT -j firewall_in
#指定firewall_in组应用到FORWARD chain,类似于应用组。
iptables -A FORWARD -j firewall_in
#这里开始增加规则,这里例子里规则都是添加到firewall_in组
#localhost数据包全部允许通过
iptables -A firewall_in -i lo -j ACCEPT
#所有已经建立连接的数据包全部通过
iptables -A firewall_in -m
state –state RELATED,ESTABLISHED -j ACCEPT
#所有地址开放tcp 80端口
iptables -A firewall_in -p
tcp -m tcp –dport 80 -j ACCEPT
#ping数据包允许每秒通过1个
iptables -A firewall_in -p
icmp -m limit –limit 1/s –limit-burst 10 -j ACCEPT
#向10.1.1.0/255.255.255.0网段开放eth0网卡上面并且目的ip地址为10.1.1.1的22端口(这是一个功能示例:网卡、协议类型、源地址组、目的地址、目的端口都有体现)
iptables -A firewall_in -i eth0 -p tcp -m tcp -s
10.1.1.0/255.255.255.0 -d 10.1.1.1 –dport 22 -j ACCEPT
#下面这2行是ftp server的pasv模式开放示例,因为ftp的pasv模式端口是随机打开的所以需要另外设置ftp
server的pasv端口范围为60000-60004
iptables -A
firewall_in -p tcp -m tcp -s 10.1.1.2 –dport 21 -j ACCEPT
iptables -A
firewall_in -p tcp -m tcp -s 10.1.1.2 –dport 60000:60004 -j ACCEPT
#丢弃不符合规则的其它tcp和udp数据包,如果处于调试的最好先不要用这2行,万一规则错了就麻烦了
iptables -A firewall_in -p tcp -m tcp -j DROP
iptables
-A firewall_in -p udp -m udp -j DROP
#清除规则匹配数据包计数信息
iptables -Z
#禁止所有进来的包,iptables是从上往下匹配的,如果有符合的话就结束匹配了,这里丢弃和上面规则里面的丢弃相比更加彻底。
#同样如果处于调试的最好先不要用这2行,万一规则错了就麻烦了
iptables -P INPUT DROP
#应许所有出去的包,这个防火墙只是简单的进行入站包的过滤,如果需要出站包也要过滤话可以给OUTPUT
chain单独一个组然后把参考上面把出站规则写到对应的组里
iptables -P OUTPUT
ACCEPT
#最后保存iptables,这样重启后也能应用
/etc/init.d/iptables
save
虽然iptables可以通过命令进行修改插入和删除操作,但是这里极不推荐新手这样来修改iptables,我推荐大家是把我上面的这样的命令(去掉注释)保存下来,一方面是做好记录,另一方面在下次修改的时候可以很方便的修改文本,然后把命令全部粘贴进命令行就行。
另外查看目前iptables的内容指令:
iptables -L
-vn
#允许所有进来的包
iptables -P INPUT ACCEPT
#允许所有出去的包
iptables -P OUTPUT ACCEPT
#初始化iptables 清空所有规则和组
#删除所有规则
iptables
-F
#删除所有组
iptables -X
#这里才是正式开始配置iptables
#创建新的定义firewall_in
iptables -N firewall_in
#指定firewall_in组应用到INPUT chain,类似于应用组
iptables
-A INPUT -j firewall_in
#指定firewall_in组应用到FORWARD chain,类似于应用组。
iptables -A FORWARD -j firewall_in
#这里开始增加规则,这里例子里规则都是添加到firewall_in组
#localhost数据包全部允许通过
iptables -A firewall_in -i lo -j ACCEPT
#所有已经建立连接的数据包全部通过
iptables -A firewall_in -m
state –state RELATED,ESTABLISHED -j ACCEPT
#所有地址开放tcp 80端口
iptables -A firewall_in -p
tcp -m tcp –dport 80 -j ACCEPT
#ping数据包允许每秒通过1个
iptables -A firewall_in -p
icmp -m limit –limit 1/s –limit-burst 10 -j ACCEPT
#向10.1.1.0/255.255.255.0网段开放eth0网卡上面并且目的ip地址为10.1.1.1的22端口(这是一个功能示例:网卡、协议类型、源地址组、目的地址、目的端口都有体现)
iptables -A firewall_in -i eth0 -p tcp -m tcp -s
10.1.1.0/255.255.255.0 -d 10.1.1.1 –dport 22 -j ACCEPT
#下面这2行是ftp server的pasv模式开放示例,因为ftp的pasv模式端口是随机打开的所以需要另外设置ftp
server的pasv端口范围为60000-60004
iptables -A
firewall_in -p tcp -m tcp -s 10.1.1.2 –dport 21 -j ACCEPT
iptables -A
firewall_in -p tcp -m tcp -s 10.1.1.2 –dport 60000:60004 -j ACCEPT
#丢弃不符合规则的其它tcp和udp数据包,如果处于调试的最好先不要用这2行,万一规则错了就麻烦了
iptables -A firewall_in -p tcp -m tcp -j DROP
iptables
-A firewall_in -p udp -m udp -j DROP
#清除规则匹配数据包计数信息
iptables -Z
#禁止所有进来的包,iptables是从上往下匹配的,如果有符合的话就结束匹配了,这里丢弃和上面规则里面的丢弃相比更加彻底。
#同样如果处于调试的最好先不要用这2行,万一规则错了就麻烦了
iptables -P INPUT DROP
#应许所有出去的包,这个防火墙只是简单的进行入站包的过滤,如果需要出站包也要过滤话可以给OUTPUT
chain单独一个组然后把参考上面把出站规则写到对应的组里
iptables -P OUTPUT
ACCEPT
#最后保存iptables,这样重启后也能应用
/etc/init.d/iptables
save
虽然iptables可以通过命令进行修改插入和删除操作,但是这里极不推荐新手这样来修改iptables,我推荐大家是把我上面的这样的命令(去掉注释)保存下来,一方面是做好记录,另一方面在下次修改的时候可以很方便的修改文本,然后把命令全部粘贴进命令行就行。
另外查看目前iptables的内容指令:
iptables -L
-vn
以下是小技巧
修改防火墙配置文件:
vi /etc/sysconfig/iptables
Linux iptables 开放Mysql端口允许远程访问
增加下面一行:
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT
如果想开通21等端口,只需要将3306换成21等要开放的端口就可以了。
配置后,必须先运行/etc/init.d/iptables save保存一下规则
然后重新启动iptable
service iptables restart
这时就可以从其他机器访问Mysql了。
注意:
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
是拒绝icmp访问,对于其它的报文返回一个主机禁止访问的错误
开通3306 端口的行必须在icmp-host-prohibited前
顶(0)
踩(0)
- 最新评论
