linux之防火墙设置

Linux2.0内核采用netfilter网络架构实现包过滤防火墙,可以实现硬件防火墙的常用功能,亦可以在应用方案中作为硬件防火墙的替代品.-----------------------------------------------------------------------------
iptables是管理工具
-----------------------------------------------------------------------------
iptables
规则rules:管理员定义的条件,数据包的包头满足什么条件,就怎么样处理数据包
链chain:是数据包传播的路径
默认5个链:
INPUT,
FORWARD,
OUTPUT,
PREROUTING ,
POSTROUTING
表table:提供特定的功能(filter,nat,mangle)
iptables默认的表filter(包含INPUT,FORWARD,OUTPUT链)
Nat(PREROUTING,POSTROUTING,OUTPUT)
Mangle (INPUT,FORWARD,OUTPUT,PREROUTING ,POSTROUTING)
-----------------------------------------------------------------------------
命令语法:
iptables [-t 表] �C命令  匹配条件  操作
service  iptables  restart 规则会恢复原先配置
保存定制的规则:
可以使用iptables-save命令
# cp /etc/sysconfig/iptables /etc/sysconfig/iptables.raw保存现有规则前,将默认规则备份
# iptables-save > /etc/sysconfig/iptables

# service  iptables  save
恢复自己保存的规则
# iptables-restore < /etc/sysconfig/iptables
-----------------------------------------------------------------------------
redhat中支持路由转发:
1.#echo "1"> /proc/sys/net/ipv4/ip_forward
或修改
2./etc/sysconfig/network
    FORWARD_IPV4=false
改为FORWARD_IPV4=true
-----------------------------------------------------------------------------
实际案例:
格式:
iptables [-t 表名] <-A | I | D | R> 链名 [规则名] [-i | o 网卡名] [-p 协议] [-s 源IP地址 | 源子网] [--sport 源端口号] [-d 目标IP地址 | 目标子网] [--dport 目标端口号] <-j 动作>
Exam1:向INPUT中添加一条规则
#iptables -A INPUT -s 192.168.1.200 -j DROP  //来自192.168.1.200的数据报都丢弃
Exam2:向INPUT链中的第2条规则前插入一条规则
#iptables -I INPUT  2 -s 192.168.2.0/24 -p tcp --dport 80 -j DROP
Exam3:删除INPUT链中的第3条规则
#iptables -D INPUT 3
Exam4:替换INPUT链中的第2条规则
#ipbtables -R INPUT 2 -s 192.168.3.0/24 -p tcp --dport 80 -j DROP
Exam5:智能DNS服务:
将所有从eth0接口进入的DNS请求都发送到IP地址为61.144.56.101这台服务器解析
#iptables -t nat -I PREROUTING -i eth0 -p udp --dport 53 -j DNAT --to-destination 61.144.56.101:53
#iptables -t nat -I PREROUTING -i eth0 -p tcp --dport 53 -j DNAT --to-destination 61.144.56.101:53
Exam6:发布内部网络服务器:
发布192.168.16.200主机的WEB服务,internet用户通过访问ppp0的IP地址即可访问主机的WEB服务
#iptables -t nat -I PREROUTING -i ppp0 -p tcp --dport 80 -j DNAT --to-destination 192.168.16.200:80
Exam7:发布内网192.168.16.100主机的终端服务(3389),internet用户通过访问ppp0的IP地址访问该主机的终端服务。
#iptables -t nat -I PREROUTING -i ppp0 -p tcp --dport 3389 -j DNAT --to-destination 192.168.1.100:3389
Exam8:禁止客户访问不见康的网站:
禁止访问 www.playboy.com的网站
#iptables -I FORWARD -d www.playboy.com -j DROP   //速度会很慢
禁止访问202.17.61.4的网站
#iptables -I FORWARD -d 202.17.61.4 -j DROP       //速度快
Exam9:阻入站的数据包目标地址为(netbios,smb,win常用的成为蠕虫攻击目标的端口)
iptables  -A  INPUT  �Ci  eth0  -p  udp  -m  multiport -destination-port  135,136,443,445,137,138,139  -j  DROP
Exam10:禁止80访问
iptables  -A  INPUT  -p tcp  --dport  80  -j  DROP
Exam11:禁止用户访问域名为 www.111.com的网站
#iptables  �CI  FORWARD  �Cd  www.111.com  -j  DROP
Exam12:禁止用户10.0.0.1上网
iptables  -I  FORWARD  -s  10.0.0.1  -j  DROP

你可能感兴趣的:(linux,职场,系统,服务,休闲)