用Linux防火墙构建软路由

本文主要介绍利用Linux自带的Firewall软件包来构建软路由的一种方法,此方法为内部网与外部网的互连提供了一种简单、安全的实现途径。Linux自带的Firewall构建软路由,主要是通过IP地址来控制访问权限,较一般的代理服务软件有更方便之处。

一、防火墙

防火墙一词用在计算机网络中是指用于保护内部网不受外部网的非法入侵的设备,它是利用网络层的IP包过滤程序以及一些规则来保护内部网的一种策略,有硬件实现的,也有软件实现的。

运行防火墙的计算机(以下称防火墙)既连接外部网,又连接内部网。一般情况下,内部网的用户不能直接访问外部网,反之亦然。如果内部网用户要访问外部网,必须先登录到防火墙,由防火墙进行IP地址转换后,再由防火墙发送给外部网,即当内部网机器通过防火墙时,源IP地址均被设置(或称伪装,或称欺骗)成外部网合法的IP地址。经伪装以后,在外部网看来,内部网的机器是一个具有合法的IP地址的机器,因而可进行通信。外部网用户要访问内部网用户时,也要先登录到防火墙,经过滤后,仅通过允许的服务。

由此可见,防火墙在内部网与外部网之间起到了两个作用:

(1)IP包过滤——保护作用;

(2)路由——网络互连作用。

二、防火墙的安装

1.硬件安装

运行Linux防火墙的计算机上必须安装有两块网卡或一块网卡、一块Modem卡。本文以两块网卡为例。安装网卡,正确设置中断号及端口号,并为各网卡分配合适的IP地址。

配置以后的防火墙模型。

2.安装网关

安装网关的方法有两种:一种是运行linuxconf,进入ROUTINGANDGATEWAYS选项,配置网关;另一种是修改rc.inet1文件。下面介绍修改rc.inet1文件的方法安装网关。

进入/etc/rc.d/目录,键入virc.inet1回车,参照下面内容修改:

IPADDR="202.114.194.130"#第一块卡的外部网IP地址

NETMASK="255.255.255.128"#第一块卡的外部网子网掩码

NETWORK="202.114.194.0"#第一块卡的外部网网段

BROADCAST="202.114.194.255"#第一块卡的外部网广播地址

GATEWAY="202.114.194.129"#第一块卡的外部网网关,也是

默认网关

IPADDR1="192.168.0.1"

#第二块卡的内部网IP地址

NETMASK1="255.255.255.0"

#第二块卡的内部网子网掩码

NETWORK1="192.168.0.0"

#第二块卡的内部网网段

BROADCAST1="192.168.0.255"

#第二块卡的内部网广播地址

/sbin/ifconfigeth0${IPADDR}

broadcast${BROADCAST}metmask${NETMASK}

#设置第一块卡

/sbin/ifconfigeth1${IPADDR1}

broadcast${BROADCAST1}metmask$

{NETMASK1}

#设置第二块卡

/sbin/routeadd-net${NETWORK}

netmask${NETMASK}

/sbin/routeadddefaultgw$

{GATEWAY}metric1

/sbin/routeadd-net${NETWORK1}

netmask${NETMASK1}

要测试网关设置情况,可以用“ifconfig”命令测试,运行该命令后,会显示出eth0和eth1及上面我们修改的相关内容,如果没有显示这些相关信息,说明设置不正确,还要重新再来一次。

三、构建软路由

1.IP地址转换

IP地址转换也称为IP地址伪装或IP地址欺骗,也就是指当内部网机器登录到防火墙上时,防火墙将内部网IP(不合法的外部网IP地址)伪装成合法的外部网IP地址,再与外部网通信。IP地址伪装的命令格式如下:

ipfwadm-F-amasquerade-D0.0.0.0/0-Weth0

其中“-D0.0.0.0/0”表示允许对所有内部网IP地址进行转换,“-Weth0”表示内部网IP地址是通过网卡1进行转换的。

IP地址伪装设置完毕后,就可以在内部网机器上ping一下外部网的机器,如果防火墙上的forwarding没有被关闭的话,就可以ping通了,说明配置一切正确。

2.设定访问外部网的权限

为了加强对网络的管理,有时要对内部网访问外部网进行一定的限制,这种限制包括:(1)允许哪些机器可以上网;(2)允许访问哪些站点。

限制上网机器可以参照以下脚本:

ipfwadm-F-pdeny#全部拒绝内部网机器上网

ipfwadm-F-am-S192.168.0.5/32

-d0.0.0.0/0#允许192.168.0.5机器对

外部网的访问

限制访问站点,可以这样设置:

ipfwadm-O-ireject-D0.0.0.0/0

#对外部网的所有站点加以

拒绝

ipfwadm-O-iaccept-D202.114.0.0/16

#允许访问202.114.0.0~

202.114.255.255内的所有站点

上述设置中,“0.0.0.0/0”表示全部网址,“202.114.0.0/16”表示202.114.0.0至202.114.255.255的所有站点。

3.统计IP包流量

IP包流量记账的设置如下:

ipfwadm-A-f

/sbin/ipfwadm-A-f

/sbin/ipfwadm-Aout-I-S192.168.0.0

/32-D0.0.0.0/0

#对所有流出包

统计

/sbin/ipfwadm-Ain-I-S192.168.0.0

/32-D0.0.0.0/0

#对所有流入包

统计

所在记账的统计都存放于/proc/net/ip_acct文件中,其所有IP地址均为16进制表示。

以上所有脚本,既可放置在/etc/rc.d文件中,也可单独设立shell脚本,用命令sh执行。

以上设置均在RedHat5.1上运行通过。

时间: 2024-08-22 14:10:24

用Linux防火墙构建软路由的相关文章

用Linux防火墙构建DMZ

防守在网络安全中的重要性不必多说.保护网络最常见的方法就是使用防火墙.防火墙作为网络的第一道防线,通常放置在外网和需要保护的网络之间.最简单的情况是直接将防火墙放置在外网和企业网络之间,所有流入企业网络的数据流量都将通过防火墙,使企业的所有客户机及服务器都处于防火墙的保护下.这对于一些中小企业来说是简单易行的,而且这种解决方法在某些情况下也表现不错.然而这种结构毕竟比较简单.企业中有许多服务器.客户机等资源需要保护,不同的资源对安全强度的要求也不同.不能用对待客户机的安全级别来对待服务器,这样服

2017年6款最值得推荐的免费Linux防火墙

本文讲的是2017年6款最值得推荐的免费Linux防火墙, 简介 试想一下,当你深夜走在一条黑暗的小巷中,突然有人跳出来并强迫你交出护照.信用卡.钱包以及车钥匙等所有值钱物品,这是多么恐怖的一件事情.其实互联网的世界跟这种假设的情景很像,每个角落中都潜伏着不可预知的危险.只要你今天在线,你的上网行为就可能被潜在暗处的窃贼窥探,而这一切你都毫无察觉. 为了实现计算机安全,防火墙就扮演了这个可以保护你安全的"保镖"一角,时刻护你周全.大多数现代路由器中都内置了防火墙,虽然很有用但是却苦于难

《Linux防火墙(第4版)》——导读

前言 欢迎阅读本书.本书介绍了在运行Linux的计算机上建立防火墙所需要的各方面内容.在开始介绍Linux下的防火墙iptables以及最新的nftables之前,本书会介绍一些基础的内容,包括网络.IP以及安全. 本书是构建Linux防火墙的权威指南,包括如何使用Linux iptables/nftables来实现防火墙安全的主题.本书共分三大部分.第1部分为数据包过滤以及基本的安全措施,其内容有:数据包过滤防火墙的预备知识.数据包过滤防火墙概念.传统的Linux防火墙管理程序iptables

一个免费、方便的Linux防火墙

Linux下的防火墙(firewall)从诞生到现在,防火墙主要经历了四个发展阶段:第一阶段:基于路由器的防火墙:第二阶段用户化的防火墙工具套:第三阶段:建立在通用操作系统上的防火墙:第四阶段:具有安全操作系统的防火墙.目前世界上大多数防火墙供应商提供的都是具有安全操作系统的软硬件结合的防火墙,象著名的NETEYE.NETSCREEN.TALENTIT等.在Linux操作系统上的防火墙软件也很多,有些是商用版本的防火墙,有的则是完全免费和公开源代码的防火墙.大多数Linux教程都提到了如何在Li

linux防火墙基础知识以及如何管理设置iptables规则

一.linux防火墙基础 防火墙分为硬件防火墙和软件防火墙. 1.概述 linux 防火墙体系主要工作在网络层,针对TCP/IP数据包实施过滤和限制,属于典型的包过滤防火墙. 包过滤机制:netfilter 管理防火墙规则命令工具:iptables netfilter 指linux内核中实现包过滤防火墙的内部结构,不依程序或文件的形式存在,属于"内核态"的防火墙功能体系 iptables 指管理linux防火墙的命令工具,属于"用户态"的防火墙管理体系 2.ipta

三大开源Linux防火墙生成器

对所有的Linux系统和网络管理员来说,一个最基本的技巧是知道如何从头开始编写一个强健的iptables防火墙,并且知道如何修改它,使其适应多种不同的情况.然而,在现实世界中,这看起来似乎少之又少.对iptables的学习并非是一个简单的过程,不过笔者在这里向您推荐外网上如下资料,这样使用起来你就得心应手了. 笔者认为所有的管理员都应彻底地理解Iptables,不过,另外一个可选择的方法是运用出色的开源Linux防火墙生成工具. Firewall Builder 第一个出场的便是Firewall

Linux防火墙Iptables新手教程(非常的详细)

首先我们要弄明白,防火墙将怎么对待 这些数据包.这些数据包会经过一些相应的规则链,比如要进入你的计算机的数据包会首先进入INPUT链,从我们的计算机发出的数据包会经过 OUTPUT链,如果一台计算机做一个网络的网关(处于内网和外网两个网络连接的两台计算机,这两台计算机之间相互通讯的数据包会经过这台计算机,这台计 算机即相当于一个路由器),可能 会有很多数据经过这台计算机,那么这些数据包必经FORWARD链,FORWARD链即数据转发链.明白了这些"链"的概念我们才能进一步学习使用 ip

Linux防火墙伪装机制帮您抵抗恶意黑客

  防火墙可分为几种不同的安全等级.在Linux中,由于有许多不同的防火墙软件可供选择,安全性可低可高,最复杂的软件可提供几乎无法渗透的保护能力.不过,Linux核心本身内建了一种称作"伪装"的简单机制,除了最专门的黑客攻击外,可以抵挡住绝大部分的攻击行动. 当我们拨号接连上Internet后,我们的计算机会被赋给一个IP地址,可让网上的其他人回传资料到我们的计算机.黑客就是用你的IP来存取你计算机上的资料.Linux所用的"IP伪装"法,就是把你的IP藏起来,不让

软盘里的Linux防火墙

Linux 下的防火墙(firewall)从诞生到现在,防火墙主要经历了四个发展阶段:第一阶段:基于路由器的防火墙:第二阶段用户化的防火墙工具套:第三阶段:建立在通用操作系统上的防火墙:第四阶段:具有安全操作系统的防火墙.目前世界上大多数防火墙供应商提供的都是具有安全操作系统的软硬件结合的防火墙,象著名的NETEYE.NETSCREEN.TALENTIT等.在Linux操作系统上的防火墙软件也很多,有些是商用版本的防火墙,有的则是完全免费和公开源代码的防火墙.大多数Linux教程都提到了如何在L