前言

在很多时候想控制客户端上网,只能去找对应客户端所在的网段,查找到对应的IP或者MAC地址,在进行控制,而且IP并不能代表具体的某个“谁”,如果想知道“谁”做了什么,就只能通过IP去判断,在查找上面会有很大的限制。用户认证的出现用用户名代替了IP,防火墙可以不去关心你IP、MAC是多少,只看你的用户名,通过用户名来控制访问的权限、查看操作了什么,而这个用户最终关联到具体的某个主体上面去。

将IP地址识别为用户

作者:网络之路一天  首发公众号:网络之路博客(ID:NetworkBlog)

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_用户名

用户与认证

用户与认证是相辅相成的,两个需要配合一起工作来完成对用户的最终验证。

(1)用户

创建对应的用户名给具体的主体(比如某员工),这个用户名就代表的这个主体,后续这个主体通过这个用户来完成认证。用户分为两种形式

  • 上网用户:用于认证通过后,顺利通过防火墙访问网络资源,通常是内网用户认证后访问外网。
  •  接入用户:指外网访问防火墙身后的内资源,通常在部署L2TP、SSL的方式接入过来,这个在远程办公系列讲解到了,用了本地的账号密码。

(2)认证

认证是防火墙来验证访问者的身份,访问者需要提供用户信息,只有验证成功才能访问网络资源,防火墙支持多种对接方式。

  • 本地认证:利用防火墙本地的用户数据库进行认证
  • 服务器认证:用户的数据不存放在本地,直接发给第三方的服务器(比如radius、AD),防火墙作为中转。
  • 单点登录:服务器直接把用户名密码发送给服务器,防火墙只记录认证者的身份信息以及结果。

用户认证的好处

  • 基于用户进行策略的可视化制定,提高策略的易用性。(不在基于IP控制,直接使用用户控制)
  • 基于用户进行威胁、流量的报表查看和统计分析,实现对用户网络访问行为的追踪审计。(可以根据用户关联的主体直接追踪溯源)
  • 解决了IP地址动态变化带来的策略控制问题,即以不变的用户应对变化的IP地址。

实验感受一下基于本地的portal用户认证

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_用户名_02

本地portal认证是最基础也是最简单的一种,在防火墙开启portal认证后,当访问者访问某个网页(注意是HTTP形式,防火墙并不支持HTTPS的流量跳转)或者主动访问认证界面,会被防火墙重定向到认证阶段,来完成对访问者的身份验证,当访问者的用户通过后,可以访问穿越防火墙访问各种资源以及外网。

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_IP_03

模拟器是可以完成的,但是搭建相对比较麻烦,理想环境是三个网卡

  • 装VM虚拟机,会自动是生成一个VM1跟VM8的网卡
  • 本身电脑自己有一个物理网卡
  • 生成一个环回口网卡(可以参考下第四篇内容)

这里是VM1绑定虚拟机的(Windows7测试机子),环回口用于WEB管理,物理网卡用于桥接到真实网络,这样测试机子可以过防火墙进行测试了。

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_用户名_04


虚拟机关联到VM1,然后ENSP里面的云关联这个VM1,跟防火墙的G1/0/0连接,这样就方便测试了。因为认证是需要打开浏览器跳转到认证界面来进行认证的。

1、基础配置

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_用户认证_05

接口划入基本的接口,G1/0/1为外网口,模式是DHCP,G1/0/0是trust,对接内网测试机子,设置了一个网关192.168.10.254

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_用户认证_06

内网部分是开了Ping之类的管理的。

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_用户名_07

测试电脑手动设置了个地址,因为防火墙没开DHCP

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_用户名_08

ping网关也没任何问题,那接下来配置用户认证。

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_用户名_09

安全策略暂时全放,后续来看怎么合理的放行。

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_用户认证_10

配置个NAT策略允许上网。

2、创建用户信息

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_IP_11

点击对象--用户--default-新建用户,这里呢 分两种,可以直接建立用户,这个适合小场景,用户不多的情况下,如果是多部门的,那么建议建立用户组,然后用户加入到对应组,后期调用的话,只需要调用组即可,更加方便。

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_用户名_12

这里建立了一个组(办公区1),然后用户名office1,加入了办公区1。

3、创建认证策略

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_IP_13

默认情况下,是存在一条默认的default策略的,就是不认证,也就是所有数据包穿越防火墙的时候默认是不认证的,需要管理用自己在认证策略列表里面定义这个认证规则。

比如这里希望 192.168.10.0的用户进行认证,而192.168.20.0网段的用户不认证。

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_用户名_14


(1)名称建议起一个相对匹配该策略作用的,后续方便看

(2)源目安全区域:数据包进入与出去的方向

(3)源地址:这个很重要,用于匹配出来哪些地址 /网段需要进行认证(或者其他操作)

(4)认证动作:新建策略默认是portal认证,其他的认证根据需求在进行选择。

4、测试

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_用户认证_15

默认浏览器的地址是自动跳转到www.baidu.com,会发现无法跳转。

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_用户认证_16


当输入了163.com后,浏览器就自动跳转到https://192.168.10.254:8887(这个地址后面会重点说),然后还会出现一个安全证书存在问题的提示,这个在之前讲解SSL的时候介绍过,自签名证书是不可信任的,所以会提示,这里直接继续即可。

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_用户名_17

输入账号密码

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_用户认证_18


IP限制不靠谱?试试防火墙用户认证(本地portal认证)_IP_19


这个时候会自动的把office1跟192.168.10.1去关联了。

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_用户认证_20

这个时候打开网页什么的就都正常了。

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_IP_21

在线用户里面会现实当前在线的用户名跟所属组以及IP地址等,包括在线的时长。

用户认证关心的几个问题

(1)如果同一个用户名被多个用户机子登录会发生什么?

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_IP_22

这里在开出一台虚拟机,用同样的账号来登录。

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_用户名_23

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_IP_24

这个就根据情况而定了,比如一个客户它有多个终端,电脑需要认证、手机、IPAD都需要上网,会启用一个用户名对应多个机器的情况(一般是给高层使用)如果只想一个用户名给一个机器使用,那这个时候在创建用户名的时候要注意一下。

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_用户认证_25

默认创建的时候,是允许多人同时使用该账号登录的,如果不希望这个账号同时登录则去掉,去掉后在来测试下。

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_用户认证_26

全部注销,用office2来试下。

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_用户认证_27

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_IP_28

登录成功后,后台有office2的记录了,另外一台机子在用office2的账号登录。

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_IP_29


也登录成功了,那是不是账号还是允许多次登录呢?

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_用户名_30

看后台会发现只有一个用户在线,地址变成了10.1,之前是192.168.10.2的,这说明被挤下来了。

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_IP_31

也就是说,当一个用户限制只能登录一次的情况下,后登陆的会把前面登录的挤下去。当然这种方式可以改的,待会会说。

(2)网页触发弹窗问题

从体验来看,如果使用IE浏览器,是识别不到有认证的,需要自己去输入网址才能打开,但是华为防火墙的比较郁闷的是只能识别到HTTP才能弹窗,如果是HTTPS的因为加密的无法识别,则弹窗不了。

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_用户认证_32

但是火狐它是可以识别到的,相对来说会方便点,基于这样的情况,在实际中通常有两种办法

  • 对于认证的用户,不管使用什么浏览器,打开后输入www的网址,比如163.com,ccieh3c.com等,会自动跳转到认证界面。

这种方式叫做会话认证,也就是客户用会话去触发重定向的认证。

  • 对于认证的用户,实现访问认证页面直接通过认证,在访问实际的资源。比如认证页面是https://192.168.10.254:8887,8887是防火墙认证的默认端口号,192.168.10.254是服务器的地址,默认采用https协议,实现直接访问这个打开,然后输入用户名密码通过后在访问其他资源。(这种一般实际中IT会写使用流程教员工使用)

这种方式叫做事前认证,先认证好,在去访问实际的业务资源。

(3)第一次客户端打开会弹出不安全的提示

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_IP_33

这个是防火墙默认的方式,选用的是HTTPS的,而HTTPS由于是自签名证书,浏览器第一次都会提示这样的警告,对于有的客户来说,它会认为这个不方便,这个时候可以在防火墙上面修改成http的方式。

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_用户名_34

在认证选项里面,其实很多可选参数。

  • 默认情况下本地portal认证是开启的,端口号是8887
  • 重定向认证方式默认是HTTPS,可以改成HTTP
  • 认证冲突设置:默认情况下是注销之前的登录,新用户通过,可以改成如果限制用户数登录,后面登录的用户直接登录失败。
  • 认证通过后,默认是不做任何跳转的,也可以让认证成功后跳转到自己需要的方式
  • 页面定制:默认情况下华为防火墙的认证界面比较单调,可以加自己的LOGO等内容。


安全策略如何放行

现在的安全策略是全放的,但是在实际中肯定是放行对应的流量,了解下在用户认证的情况下需要放行哪些流量。

  • 访问者需要访问网页,用网页触发认证,那么网页的访问是需要依赖DNS的,如果DNS的流量都出不去的话,那么解析失败,自然就无法弹出portal页面。  (放行DNS流量)
  • 当解析成功后,网页在访问的过程中会被拦截下来,然后重定向到认证页面,这个页面的端口号是8887。(所以要允许访问者所在的区域访问防火墙local的8887)
  • 访问者通过后的业务流量,由于采用了用户认证,那么安全策略则可以匹配用户名/用户组来进行放行,而其余的流量正常按源目IP进行放行即可。

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_用户名_35

再次测试

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_用户认证_36


IP限制不靠谱?试试防火墙用户认证(本地portal认证)_用户名_37

访问是没问题的。

IP限制不靠谱?试试防火墙用户认证(本地portal认证)_IP_38

作者:网络之路一天  首发公众号:网络之路博客(ID:NetworkBlog)