linux防火墙与路由设置
2010-11-11 23:09
302 查看
当网络数据包通过网络适配器之后,都要通过路由和防火墙才能到达目的主机或网络(多网卡时),当一个应用发送一个数据时,内核创建的数据包也要通过路由和防火墙。Linux内核定义了三种过滤规则或链(chains):INPUT、OUTPUT和FORWORD。在2.4内核后,Linux对这三种规则做了很大的调整,简化了过滤逻辑,我在这里只写2.4内核的规则。所有网卡接收到的数据包,都先要通过路由,路由之后的数据包如果到达本机,则要通过INPUT的过滤,而到达其他网卡的数据包要通过OUTPUT过滤。对于本机发送的数据包要先通过OUTPUT过滤,才进行路由。
Linux 2.4内核用iptables替换了之前的ipchains,即用iptables设置网络过滤。与设置防火墙相关的文件有三个:
1. /sbin/目录下的应用程序
2. /etc/sysconfig/目录下的配置文件
3. /etc/init.d/目录下的启动脚本(/etc/init.d是/etc/rc.d/init.d的符号链接)
修改防火墙规则可以使用iptables命令,要永久保存防火规则,运行service iptables save,将新规则写到/etc/sysconfig/iptables(也可以直接修改这个文件)。一般如果要定义自己的防火墙,可以在/etc/init.d/下编写自己的启动脚本,再用chkconfig加到启动项。iptables的一些使用有:
1. #iptables -F 清除所有路由规则
2. #iptables -P INPUT DROP 默认INPUT处理方式为丢弃
3. iptables -A INPUT -i eth0 -p tcp -s 209.200.200.10 --sport 1024:65535
-d MY.NETWORK.IP.ADDR --dport 22 -j ACCEPT 接收209.200.200.10的SSH连接。
4. iptables -A INPUT -i eth0 -p tcp ! --syn -s EMAIL.NET.IP.ADDR --sport 25
-d MY.NETWORK.IP.ADDR --dport 1024:65535 -j ACCEPT 允许发送e-mail。! --syn是一个安全选项,确保这个数据包是对之前数据包的回应。
5. iptables -A INPUT -i eth0 -p icmp -d MY.NETWORK.IP.ADDR -j ACCEPT 允许所有icmp包,也可以自定义所匹配的ICMP类型。
6. /sbin/iptables -A INPUT --match state --state ESTABLISHED,RELATED -j ACCEPT 允许已经建立连接的数据包,即所有回应本机主动连接的应用都会允许。
修改路由规则使用route命令:
1. #/sbin/route add --net 172.24.150.0 netmask 255.255.0.0 dev eth0
2. #/sbin/route add -host 192.168.150.33 gw 172.24.150.1
3. #/sbin/route add default gw 209.100.100.1
查看路由规则的命令:
1. #netstat -rn
2. #route -n
3. #ip route list
Linux 2.4内核用iptables替换了之前的ipchains,即用iptables设置网络过滤。与设置防火墙相关的文件有三个:
1. /sbin/目录下的应用程序
2. /etc/sysconfig/目录下的配置文件
3. /etc/init.d/目录下的启动脚本(/etc/init.d是/etc/rc.d/init.d的符号链接)
修改防火墙规则可以使用iptables命令,要永久保存防火规则,运行service iptables save,将新规则写到/etc/sysconfig/iptables(也可以直接修改这个文件)。一般如果要定义自己的防火墙,可以在/etc/init.d/下编写自己的启动脚本,再用chkconfig加到启动项。iptables的一些使用有:
1. #iptables -F 清除所有路由规则
2. #iptables -P INPUT DROP 默认INPUT处理方式为丢弃
3. iptables -A INPUT -i eth0 -p tcp -s 209.200.200.10 --sport 1024:65535
-d MY.NETWORK.IP.ADDR --dport 22 -j ACCEPT 接收209.200.200.10的SSH连接。
4. iptables -A INPUT -i eth0 -p tcp ! --syn -s EMAIL.NET.IP.ADDR --sport 25
-d MY.NETWORK.IP.ADDR --dport 1024:65535 -j ACCEPT 允许发送e-mail。! --syn是一个安全选项,确保这个数据包是对之前数据包的回应。
5. iptables -A INPUT -i eth0 -p icmp -d MY.NETWORK.IP.ADDR -j ACCEPT 允许所有icmp包,也可以自定义所匹配的ICMP类型。
6. /sbin/iptables -A INPUT --match state --state ESTABLISHED,RELATED -j ACCEPT 允许已经建立连接的数据包,即所有回应本机主动连接的应用都会允许。
修改路由规则使用route命令:
1. #/sbin/route add --net 172.24.150.0 netmask 255.255.0.0 dev eth0
2. #/sbin/route add -host 192.168.150.33 gw 172.24.150.1
3. #/sbin/route add default gw 209.100.100.1
查看路由规则的命令:
1. #netstat -rn
2. #route -n
3. #ip route list
相关文章推荐
- linux防火墙iptables常用规则(屏蔽IP地址、禁用ping、协议设置、NAT与转发、负载平衡、自定义链)
- OpenWRT(RT5350) 路由客户模式(Routed Client) ,设置防火墙开放UDP指定端口
- linux中iptables设置详细(防火墙)
- Linux:静态IP配置与防火墙设置
- Linux 下iptables 防火墙设置
- 3G设置linux路由-iptables配置
- linux系统对外开放80、8080等端口,防火墙设置
- linux下iptables防火墙设置
- Linux防火墙下的简单路由配置与端口映射
- Linux下设置防火墙命令
- Linux防火墙设置
- linux 防火墙设置、selinux禁用
- Linux下设置防火墙(开启端口)
- Linux设置有效的防火墙策略禁止所有非法的请求
- Linux防火墙设置
- linux设置iptables防火墙的详细步骤(centos防火墙设置方法)
- openwrt 3g路由,设置防火墙
- LINUX防火墙设置
- linux防火墙及端口开关设置
- linux下防火墙设置