你好,欢迎来到电脑编程技巧与维护杂志社! 杂志社简介广告服务读者反馈编程社区  
合订本订阅
 
 
您的位置:杂志经典 / 计算机安全与维护
嵌入式Linux防火墙系统(三)
 

三、防火墙配置实现

touch命令在/etc/rc.d/目录下建立firewall脚本文件,然后更改文件属性执行chomd u+x firewall,最后为确保设备启动后自动执行该脚本,编辑/etc/rc.d/rc.local文件,在末尾加上/etc/rc.d/firewall

根据以上访问控制策略,利用Iptables设定防火墙过滤规则[8],主要代码如下:

    #!/bin/sh

echo “starting from iptables……

# 开启内核转发功能

echo “1” >/proc/sys/net/ipv4/ip_forward

# 可以定义几个变量

IPT=/sbin/iptables

WWW-SERVER=198.168.1.254

IP_RANGE=“198.168.1.0/24”

# 刷新所有的链的规则

     $IPT –F

# 首先禁止任何数据包策略,然后针对各网络间访问策略逐一实现。

     $IPT -P INPUT DROP

     $IPT -P OUTPUT DROP

     $IPT -P FORWARD DROP

   

#####web服务端口为80。设置访问防火墙和内网的www服务器,内网FTP等。####

# 对于防火墙本身,有自己的web服务器,设置访问规则

$IPT –A INPUT –P tcp –dport 80 –j ACCEPT

$IPT –A OUTPUT –P tcp –dport 80 –j ACCEPT

# 规则为:eth0=>允许目的为内部网WWW服务器的包

$IPT –A FORWORD –p tcp –d $WWW-SERVER –dport www –i eth0 –j ACCEPT

# 允许外网用户访问内网的 FTP 服务器

$IPT -A FORWARD -p tcp -d 198.168.80.13 –dport ftp -i eth0 -j ACCEPT

# 允许内网用户采用消极模式访问 Internet FTP 服务器

    $IPT -A FORWARD -p tcp -s 0/0 \ --sport ftp-data -d 192.168.0.0/24 -i eth0 \ -j ACCEPT

 

###### 通过NAT进行源地址转换实现内网通过防火墙访问外网。#####

# 首先配置本地回送接口loopback

ifconfig lo 127.0.0.1

route add –net 127.0.0.0 netmask 255.255.255.0 lo

# 配置网卡ip和路由

ifconfig eth0 192.168.0.17 netmask 255.255.255.0

route add –net 192.168.0.0 eth1 netmask 255.255.255.0

route add default gw 192.168.0.1

  # 该命令确定接收并转发所有来自内部网络端口eth1的数据包。

$IPT –A FORWARD –i eth1 –j ACCEPT

  # 把来自源地址为192.168.10.0/24的内部子网通过eth0出去的访问请求做NAT,实现IP

# 伪装,把发送到外部数据包的源地址修改为192.168.0.17eth0)。

$IPT –t nat –A POSTROUTING -o eth0 -j MASQUERADE

  ######下面设置针对Intranet客户的过滤规则##########

# 对于InternetIntranet客户的返回包,定义如下规则

# ①接受来自Internet的非连接请求tcp

$IPT –A FORWORD –p tcp –d 198.168.80.0/24 ! –syn –i eth0 –j ACCEPT

# ②接受所有udp包,主要是针对oicq等使用udp的服务

$IPT –A FORWORD –p utp –d 198.168.80.0/24 –i eth0 –j ACCEPT

# ③然后接受来自整个Intranet的数据包过滤,定义如下规则

$IPT –A FORWORD –s 198.168.80.0/24 –i eth0 –j ACCEPT

$IPT -A FORWORD –P udp –dport 53 –j ACCEPT

# 处理IP碎片接受所有的IP碎片,但采用limit匹配扩展对其单位时间可以通过的IP# 片数量进行限制,以防止IP碎片攻击

$IPT –A FORWORD –f –m limit --limit 100/s --limit –burst 100 –j ACCEPT

# 说明:对不管来自哪里的IP碎片都进行限制,允许每秒通过100IP碎片该限制触发   

# 的条件是100IP碎片

以上步骤实现了一个具有包过滤网络地址转换等功能的防火墙。

 

四、结语

 防火墙技术是网络安全中的一大关键技术,在 Internet发展中,防火墙技术的发展起到了举足轻重的作用。本文基于ARM9-Ks8695实现了简易的防火墙,分析了防火墙的原理与配置过程。Linux防火墙具有结构清晰、开发成本低、配置Netfilter灵活、功能强大等特点,加上 本身所具备的较高的安全性,适合于中小型规模网络应用。

  推荐精品文章

·2024年9月目录 
·2024年8月目录 
·2024年7月目录 
·2024年6月目录 
·2024年5月目录 
·2024年4月目录 
·2024年3月目录 
·2024年2月目录 
·2024年1月目录
·2023年12月目录
·2023年11月目录
·2023年10月目录
·2023年9月目录 
·2023年8月目录 

  联系方式
TEL:010-82561037
Fax: 010-82561614
QQ: 100164630
Mail:gaojian@comprg.com.cn

  友情链接
 
Copyright 2001-2010, www.comprg.com.cn, All Rights Reserved
京ICP备14022230号-1,电话/传真:010-82561037 82561614 ,Mail:gaojian@comprg.com.cn
地址:北京市海淀区远大路20号宝蓝大厦E座704,邮编:100089