防火墙的作用

它是一种位于内部网络与外部网络之间的网络安全系统。一项信息安全的防护系统,依照特定的规则,允许或是限制传输的数据通过,有纯软件的防火墙,最常见就是集成在系统内核当中的防火墙。还有企业常用的硬件防火墙,硬件上装有操作和管理的程序。也就是说防火墙就是一个位于计算机和它所连接的网络之间的软件硬件。该计算机流入流出的所有网络通信数据包均要经过此防火墙。

操作系统上的防火墙,例如Internet连接防火墙(ICF),它就是用一段代码墙把电脑和Internet分隔开,时刻检查出入防火墙的所有数据包,决定拦截或是放行那些数据包。

防火墙是如何防火的

常常提到的防火墙有两类:主机防火墙和网络防火墙

工作在主机或者网络的边缘,防火墙和杀毒软件又是两回事,防火墙主要和网络×××相关,与病毒没有直接的关系。对于进入本主机或者本地网络的报文根据事先定义好的规则匹配检测,对于能匹配到的报文,做拒绝或者放行的处理。

我们到底使用主机防火墙或者网络防火墙取决于我们需要对主机进行保护还是对一个网络进行防火,它到底是硬件还是软件,都可,可以是软件,可以是硬件,也可以是两者相结合。边缘就是网络进出的位置,tcp/ip协议栈在内核当中实现,网卡做为接收报文在硬件,只能由内核通过驱动程序进行访问,所以主机防火墙在内核空间,但是内核空间的什么位置呢?驱动程序中吗?肯定不是,因为驱动程序只能驱动硬件进行工作,并不能理解协议,所以防火墙应该放在可以理解协议的机制上的,防火墙是架构在TCP/IP协议栈当中的。

思科ASA防火墙

image.png

安全区域

安全区域的概念是为了对流来源进行安全等级的划分

outbounnd(出站),从高安全级别到低安全级别,默认允许

inbountd(入站),从低安全级别到高安全级别,默认不允许,可通过ACL放行

上图中,inside的等级为100R250R30,所以R1可以telnet通任意一个路由器,从高到低嘛而R2只能连通R3而不能连接R1,原因是R2R1是从低到高不允许,而R2R3是从高到低,所以没问题。R2谁都不能连接,原因同前。

所有的ping都不能用,为什么?

因为防火墙只记录基于TCPUDP的记录。

级别高的可以telnet级别低的,但是级别低的不能telnet级别高的。

接口配置

此验用到了思科防火墙的842的镜像和GNS

第一步:打开GNS3,拉出3host主机,三个主机分别接入到VM128个网卡上

第二步:打开命名管道并使用telnet连接上,给防火墙留下打开防火墙的给三个接口配置好

第二步:给三个路由配置好地址并保证能够与防火墙的三个接口通信,并且都指定默认路由到对应的防火墙接口。

 

int g0

nameif inside                          #第一步就是给接口命令,相当于划分区域,使用inside级别默认就是100

securty-level 100         #设定接口的级别

ip address 192.168.0.1 255.255.255.0

no sh

 

show conn detail             查看连接状态表

show nameif # 查看安全区域和安全等级

ssh远程连接ASA

telnet用来从内网连接防火墙,telnet是明文是不安全的,outside区域默认是不允许使用telnet连接的,但是我们如果出差在外地的话,需要调整公司内网的防火墙的怎样办?当前,有两种办法:

第一种:通过***连接到内网,通过telnet连接,这是可以的。

第二种:毫无疑问,防火墙肯定是支持从外网连接的,只不过不是telnet而是ssh,下面我们就介绍一下使用ssh通过ssh,也就是外网连接到防火墙的。

 

第一步:在防火墙起名字和配置域名

hostname  sdxh           #给主机起一个名字

domain-name  sdxh-cn               #再配置一个域名

第二步:生成非对称密钥

crypto key generate rsa modulus 1024   #生成密钥并指明1024位,这一点与思科路由器一样的。

第三步:允许谁连接,这里就允许是outside连接,这样就解决了telnt不能使用outside连接的问题

ssh 0.0.0.0 0.0.0.0 outside         #0.0.0.0  0.0.0.0  也就代表了任意地址都可以

第三步:配置ssh的认证,因为ssh基于用户和密码的认证,所以要通过aaa认证

aaa authentication ssh console LOCAL    #aaa认证里面启动本地的用户认证

第四步:默认本地是没有普通用户的,所以我们需要在aaa认证退出来增加一个用户并指定其权限。

username  sdxh  password  cba-123  privilege 15  #用户是sdxh,密码是cba-123  ,级别为15

NOTE:完成以上几步就可以通过outside进行连接了,但是ssh仅支持ssh1的版本,当连接上之后可以在防火墙通过show  ssh session来查看ssh的会话。

华为防火墙

 

image.png

配置区域

firewall  zone trust   #进入到这个区域

set pro 85   #设置安全级别

add interface g0/0/1   #把接口加入到这人区域里面   dis this查看

[USG6000V1]dis zone trust   #除了dis this 之外的查看命令

 配置接口

当配置完IP地址之后需要手动启动ping服务

int g1/0/0

ip add 192.168.100.123 255.255.255.0    #配置地址

service-manage ping permit                              #打开ping服务

dhcp select interface                                          #打开dhcp功能,通常这个在trust接口开启,用于给内网分配地址

dhcp server  ip-range  192.168.100.90 192.168.100.100   #建立dhcp的地址池

dhcp server.dns-list.192.168.100.123          #dhcp分配的dns服务器

默认路由

ip route-static 0.0.0.0 0.0.0.0 1.1.1.254 preference 1    #调整默认路由的优先级为1,默认为60

不加preference 是为单单添加默认路由,一般也不会调整优先级。

步骤一:

[USG6000V1]nat-policy     #配置nat策略

[USG6000V1-policy-nat]rule name policy_nat_1.1   #给此策略起一个名字,名字最好要有意义

[USG6000V1-policy-nat-rule-policy_nat_1.1]source-zone trust  #trust区域

[USG6000V1-policy-nat-rule-policy_nat_1.1]source address 192.168.1.1 24  #trust区域的ip

[USG6000V1-policy-nat-rule-policy_nat_1.1]destination-zone untrust   #untrst区域

[USG6000V1-policy-nat-rule-policy_nat_1.1]action nat easy-ip   #使用easy-ipnat方式,相当于PAT

步骤二:

[USG6000V1]security-policy     #定义一个安全策略

[USG6000V1-policy-security]rule name policy_sec_nat   #给安全策略起一个名字

[USG6000V1-policy-security-rule-policy_sec_nat]source-zone trust   #说明其源区域

[USG6000V1-policy-security-rule-policy_sec_nat]source-address 192.168.1.1 24  #说明源区域的IP

[USG6000V1-policy-security-rule-policy_sec_nat]destination-zone untrust  #说明目标区域

[USG6000V1-policy-security-rule-policy_sec_nat]action permit   #动作是允许放行

 

nat和安全策略一个都不可少,而思科不同,思科只配置nat即可,不用配置安全策略,因为思科默认从高区域到低区域就是允许的。