多语言展示
当前在线:1534今日阅读:19今日分享:20

纯手工整理Linux系统笔计之iptables防火墙篇

参考目录:linuxiptables防火墙一,防火墙过滤技术。二,nat网络地址转换技术。1.iptables过滤规则2.snat源地址转换3.pat4.dnat目地地址转三、OSI七层模型:A,人与应用程序:应用层————>七层表示层————>六层会话层————>五层B,源与目的端口:传输层————>四层C,源与目的IP:网络层————>三层D,源与目的MAC:数据链路层——>二层E,通讯介质:物理层————>一层四,防火墙分类:1.网络层防火墙:核心网络层产品:iptables,f5防火墙,nokia,pix防火墙,asa防火墙,ciscoacl软防火墙2.应用层防火墙:核心应用层产品:iptables,f5防火墙,pix防火墙,asa防火墙,squid访问控制3,iptables防火墙功能:1.网络层防火墙2.应用层防火墙4,iptables防火墙组成:1.表filter表|nat表|mangle表2.链input链|output链|forward链|prerouting链|postrouting链3.规则4.动作-jDROP|ACCEPT|REJECT|SNAT|DNAT|MARSQUERADE|5,iptables各表中的链:1.filter表:1)input2)output3)forward2.nat表:1)prerouting2)postrouting3)output3.mangle表:1)input2)output3)forward4)prerouting5)postroutingiptables缺省具有5条规则链SNAT源地址转换技术filter过滤DNAT目的地址转换在postrouting链上发生过snat技术,在prerouting链路上发生过dnat技术.五、linux下的iptables防火墙:iptables服务启动脚本/etc/rc.d/init.d/iptablesiptables配置文件与策略设置文件iptables配置文件:/etc/sysconfig/iptables-config策略设置文件:/etc/sysconfig/iptablesiptables服务的启动与停止#serviceiptablesstart/stop六、iptables防火墙基本操作:1,查看防火墙规则(默认查看的是filter表)#iptables-L-n==#iptables-tfilter-L-n*-n指显示原协议号。#iptables-tnat-L*查看nat表中的规则。2,清空防火墙规则(默认清空的是filter表里面的所有链内的规则)#iptables-F==#iptables-tfileter-F3,保存防火墙操作:#serviceiptablessave*否则下次重启又还原了。#iptables-restore*恢复到之前配置。4,在linux上打开路由功能:#route-n*查看路由表。#routeadddefaultgw192.168.200.1*增加默认网关。#routedeldefault*删除默认路由。/proc/sys/net/ipv4/ip_forward*路由开关功能配置文件。#echo1>/proc/sys/net/ipv4/ip_forward*原值为0关闭。5,iptables参数规律:与链有关都是大写,动作是大写,其他的参数都是小写。1>表:filter过滤|nat地址转换|mangle设置网络流量整形等应用(修改数据包的特殊信息)2>链:-L查询|-F清空|-A在链最后追加|-I在链最前插入|-D删除链某条规则|-P改变链的最后默认规则。#iptables-tfilter-LINPUT*查询filter表中INPUT进的规则。#iptables-tfilter-FINPUT*清空链INPUT内的规则。#iptables-tfilter-AFORWARD*在链的最后追加规则。#iptables-tfilter-IFORWARD*在链的最前面插入规则。#iptables-tfilter-IFORWARD3-s192.168.1.4-jDROP*在3号规则下添加一条:来自1.4的所有包丢弃。#iptables-tfilter-DFORWARD4*删除filter表中的第4条规则。3>规则:-n*直接显示协议号。--line-n*显示规则编号--line-numbers。-s*源IP地址。-d*目的IP地址。-ptcp--dport80*目的端口为:tcp:80-pudp*udp协议。-picmp--icmp-type8|0*ping请求(echo-request|8)和ping回应(echo-reply|0)--icmp-type8|0==--icmp-typeecho-request|echo-reply4,动作:-jDROP|ACCEPT|REJECT|SNAT|DNAT|MARSQUERADEDROP*丢弃ACCEPT*允许REJECT*拒绝SNAT*源地址转换DNAT*目的地址转换MARSQUERADE*与pat(端口绑定)结合,实现SNAT技术。5,示例命令:#iptables-AINPUT-ieth0-s192.168.100.0/24-jACCEPT*允许eth0接口来自1.0/24所有的数据包。#iptables-DINPUT-ieth0-s192.168.100.0/24-jACCEPT *删除INPUT规则表中已有的规则。#iptables-PINPUTDROP*将INPUT规则链的缺省策略设置为“DROP”七、实验模拟:模拟私网和公网环境?一、需求:不让XP去访问外部的WEB服务器。内网Xp:192.168.100.2<---100.1iptables防火墙200.1---->外网WEB:200.2Xp———iptables————WEB服务器1,在Linux下打开Iptables上打开路由功能并设置规则:#echo1>/proc/sys/net/ipv4/ip_forward#iptables-tfilter-AFORWARD-s192.168.100.2-d192.168.200.2-jDROP*只要是到200.2的包就丢弃二、需求2:不让xp去访问外部的web服务器的web服务#iptables-tfilter-AFORWARD-s192.168.100.2-d192.168.200.2-ptcp--dport80-jDROP*仅到200.2的WEB服务(即80)丢弃,其他正常。三、需求3:iptables可以ping通web服务器,但是web服务器不能ping通iptables防火墙#iptables-tfilter-AINPUT-s192.168.2.2-picmp--icmp-typeecho-request-jDROP四、需求4:内部员工可以上网,去访问公网web服务器#iptables-tnat-APOSTROUTING-s192.168.1.0/24-jSNAT--to192.168.2.1五、需求5:外部的拨号用户外口的公内部的私有web服务器(服务器发布)#iptables-tnat-APREROUTING-d192.168.1.1-jDNAT--to192.168.2.2六、.利用iptables实现多个用户通过adsl共享上网,并且开机自拨号和配置iptablesnat命令:#vi/etc/rc.d/rc.local/sbin/adsl-startecho1>/proc/sys/net/ipv4/ip_forward/sbin/iptables-tnat-APOSTROUTING-oppp0-jMASQUERADE七、禁止客户机上不健康的网站:#iptables-IFORWARD-dwww.baidu.com-jDROP#iptables-tfilter-LFORWARD八、禁止客户机访问ftp:#iptables-IFORWARD-s192.168.1.2-ptcp--dport21-jDROP#iptables-tfilter-LFORWARD九、让客户机强制访问192.168.0.5这台服务器:#iptables-tnat-IPREROUTING-ieth0-ptcp--dport80-jDNAT--to192.168.0.5:80#iptables-tnat-LPREROUTING(1),只能使用网站的ip地址(2),不能使用虚拟主机技术十、禁止外网计算机ping到nat服务器的ppp0接口,但允许内网客户机ping通外网主机:#iptables-IINPUT-ippp0-picmp-jDROP#iptables-tfilter-LINPUT(1),内网能ping通外网,是因为它走的是PREROUTING>FORWARD>POSTROUTING这条通道链十一、发布内网192.168.0.5的web服务,使外网用户通过访问nat服务器的ppp0的地址即可访问到内网的服务:#iptables-tnat-IPREROUTING-ippp0-ptcp--dport80-jDNAT--to-destination192.168.0.5:80#iptables-tnat-LPREROUTING十二、智能DNS服务,如从nat服务器的eth0接口进入的dns请求都发送到192.168.0.5这台服务器进行解析:#iptables-tnat-IPREROUTING-ieth0-pudp--dport53-jDNAT--to-destination192.168.0.5:53#iptables-tnat-IPREROUTING-ieth0-ptcp--dport53-jDNAT--to-destination192.168.0.5:53#iptables-tnat-LPREROUTING十三、设置主机防火墙策略使用iptables命令设置防火墙策略#iptables-F*清空filter规则#iptables-X*删除#iptables-Z#iptables-PINPUTDROP*设置默认规则为所有包DROP#iptables-AINPUT-ilo-jACCEPT*添加回环网步为允许。#iptables-AINPUT-ieth0-ptcp--dport21-jACCEPT*添加eth0允许21端口#iptables-AINPUT-ieth0-ptcp--dport80-jACCEPT*添加eth0允许80端口#iptables-AINPUT-ieth0-ptcp--dport23-jACCEPT *添加eth0允许23端口#serviceiptablessave*保存设置。(到/etc/sysconfig/iptables)
推荐信息