文档详情

最全的iptables防火墙详解.pdf

发布:2016-03-10约字共27页下载文档
文本预览下载声明
iptables / iptables / iippttaabblleess官方网站:hhttttpp::////nneettffiilltteerr..oorrgg// • 数据包经过防火墙的路径 • 禁止端口 • 强制访问某站点 • 发布内部网络服务器 • 智能DNS • 端口映射 • 通过NAT上网 • IP 规则的保存与恢复 • iptables指令语法 • iptables实例 数据包经过防火墙的路径 图1比较完整地展示了一个数据包是如何经过防火墙的,考虑到节省空间,该图实际上包了三种 情况: 来自外部,以防火墙(本机)为目的地的包,在图1中自上至下走左边一条路径。 由防火墙(本机)产生的包,在图1中从“本地进程”开始,自上至下走左边一条路径 来自外部,目的地是其它主机的包,在图1中自上至下走右边一条路径。 图1 如果我们从上图中略去比较少用的mangle 表的图示,就有图2所显示的更为清晰的路径图. 图2 禁止端口的实例 ssh ssh 禁止sssshh端口 只允许在上使用ssh远程登录,从其它计算机上禁止使用ssh #iptables-A INPUT -s-p tcp--dport22-j ACCEPT #iptables-A INPUT -ptcp--dport22-jDROP 禁止代理端口 #iptables-A INPUT -ptcp--dport3128-j REJECT icmp icmp 禁止iiccmmpp端口 除外,禁止其它人ping我的主机 #iptables-A INPUT -i eth0-s/32-picmp-m icmp--icmp-type echo-request-j ACCEPT #iptables-A INPUT -i eth0-picmp --icmp-typeecho-request –j ?DROP 或 #iptables-A INPUT -i eth0-s/32-picmp-m icmp--icmp-type 8-jACCEPT #iptables-A INPUT -i eth0-picmp -m icmp--icmp-type 8-j DROP 注:可以用iptables--protocolicmp--help 查看ICMP 类型 还有没有其它办法实现? QQ QQ 禁止QQQQ端口 #iptables-D FORWARD-pudp--dport8000-j REJECT 强制访问指定的站点 图3 要使/24网络内的计算机(这此计算机的网关应设为0)强制访问指定的站 点,在做为防火墙的计算机(0)上应添加以下规则: 1. 打开ip包转发功能 echo1 /proc/sys/net/ipv4/ip_forward 2. 在NAT/防火墙计算机上的NAT表中添加目的地址转换规则: iptables-t nat-IPREROUTING -i eth0-ptcp--dport80-j DNAT --to-destination30:80 iptables-t nat-IPREROUTING -i eth0-pudp--dport80-j DNAT--to-destination30:80 3. 在NAT/防火墙计算机上的NAT表中添加源地址转换规则: iptables-t nat-IPOSTROUTING-o eth1-ptcp--dport80-s /24-j SNAT --to-source 0:20000-30000 iptables-t nat-IPOSTROUTING-o eth1-pudp--dport80-s/24-jSNAT --to-source 0:20000-30000 4. 测试:在内部网的任一台计算机上打开浏览器,输入任一非本网络的IP,都将指向IP 为 30的网站. 发布内部网络服务器 图4 要使因特网上的计算机访问到内部网的FTP 服务器、WEB 服务器,在做为防火墙的计算机上应 添加以下规则: 1.echo1/proc/sys/net/ipv4/ip_forward 2. 发布内部网web服务器 iptables-t nat-IPREROUTING -ptcp-i eth1-s/24--dport80-jDNAT --to-destination 5:80 iptables-t nat-IPOSTROUTING-p t
显示全部
相似文档