移动接入身份认证介绍
身份认证技术
- 六种固定的认证方式(主认证
- 本地用户名/密码(微信扫码登录)
- LDAP服务器
- Radius服务器
- CA认证
- AD域单点登录
- HTTP(S)第三方接口对接
- 多种动态的认证方式(辅认证)
- 硬件特征码
- 动态令牌(飞天诚信、Google软令牌、HTTP(S)第三方接口对接)
- 短信认证(云短信平台,短信网关、HTTP(S)第三方接口对接)
SSL VPN身份认证方式
用户
- 登录SSL VPN的账号,分为公有用户和私有用户。
- 私有用户只能同时一人登录,公有用户允许多人同时登录。
用户组
- 由“用户”组成,每个“用户”必须属于唯一的“用户组”。
- root根组和默认用户组无法删除。
移动接入身份认证技术
本地账户认证技术原理
用户组:是用户集合,每个用户归属于唯一的用户组
账户类型:私有用户、公有用户
- 根据终端用户认证的账户信息存储位置,可以将认证分为本地认证和外部认证:
- 本地认证:认证的账户信息保存在设备本地
- 外部认证:认证的账户信息保存在外部系统
数字证书认证技术原理
数字证书是一般包含:
- 用户身份信息
- 用户公钥信息
- 身份验证机构数字签名的数据
从证书用途来看,数字证书可分为签名证书和加密证书。
- 签名证书:
- 主要用于对用户信息进行签名,以保证信息的真实性和不可否认性。
- 加密证书:
- 主要用于对用户传送的信息进行加密,以保证信息的机密性和完整性。
一个经证书授权中心数字签名的包含公开密钥拥有者信息和公开密钥的文件
LDAP认证技术原理
LDAP(Lightweight Directory Access Protocol)是轻量级目录访问协议。在LDAP中目录是按照树型结构组织,目录由条目组成,条目相当于关系数据库中表的记录;条目是具有区别名DN(Distinguished Name)的属性(Attribute)集合。
可以这样理解,LDAP在认证场景中,它是存储了用户账户信息数据库的一个账户系统,可以通过标准的LDAP协议与该系统进行交互,实现验证终端身份的需求。
LDAP是一种开放标准,LDAP协议是跨平台的Interent协议
常见的LDAP系统有:
- MS-LDAP:Active Directory(常称为“AD域”)
- Open LDAP
- Other LDAP
LDAP外部认证过程原理
- LDAP用户把用户名和密码提交给SSL VPN设备
- SSL VPN设备把用户名和密码提交给LDAP服务器进行验证
- LDAP服务器在本地进行验证,并把结果返回给用SSL VPN设备
- SSL VPN设备把结果返回给用户
- OU:组织单位 Dc:DZP dc:com
HTTP/HTTPS 主/辅认证技术原理
- 通过客户处其他系统的HTTP/HTTPS的自定义开放接口来实现的认证过程,在用户登录认证中,既可以作为主认证方式,也可作为辅助认证方式,(具体看对接的服务器是短信网关还是令牌网关或认证网关)
- 在HTTP/HTTPS认证中,可以根据对端的接口要求构造请求发送到HTTP/HTTPS认证服务上,由HTTP/HTTPS进行响应并返回,然后根据他们返回的结果来判断是否认证成功。
- 即若需要使用HTTP/HTTPS认证需要提前获取到HTTP/HTTPS认证服务器的接口文档。
- 支持单次/多次认证(最多五次)请求,支持GET、POST两种请求方式,根据配置需要可设置请求URL参数、请求头部、请求Cookie等参数。
- 通过解析服务器的返回内容(Json、XML)来判断是否通过认证,并匹配对应的组/角色权限。
硬件特征码认证技术原理
- 通过硬件特征码认证技术可实现用户帐号和电脑硬件特征信息的绑定,某账号只能通过指定的电脑登录。即便用户账号意外泄露,由于非法用户无法使用与此账号事先绑定的那台计算机,因而不会造成非法终端用户接入。确保了终端用户接入的安全性。
- 在用户登录认证中,硬件特征码认证属于辅助认证,必须结合主要认证使用。
短信验证码认证技术原理
目前有4种方式获得短信验证码:
- 短信网关
- 阿里云短信认证
- 腾讯云短信认证
- HTTP/HTTPS 短信认证
TOTP动态令牌认证技术
- OTP是One-Time Password的简写,表示一次性密码。
- TOTP是Time-based One-Time Password的简写,表示基于时间戳算法的一次性密码。
- 是时间同步,基于客户端的动态口令和动态口令验证服务器的时间比对,一般每30或60秒产生一个新口令,要求客户端和服务器能够十分精确的保持正确的时钟,客户端和服务端基于时间计算的动态口令才能一致。
- TOTP其核心内容包括以下三点:
- 一个共享密钥(一个比特序列);
- 当前时间输入;
- 一个签署函数。
本地认证安全设置功能
- 通过本地密码认证设置,可以对本地用户名密码认证的策略,进一步提升本地密码验证的安全性,具体可设置项包括:密码不能包含用户名、新旧密码不能相同、密码最小位数限制、密码有效期设置、是否必须修改初始密码、密码强度设置等
- 同时提供软键盘输入密码和防暴力破解选项,软键盘支持字母以及数字的随机变化,防暴力破解包含单一用户尝试次数显示验证码、单用户锁定、单IP锁定等
移动接入资源发布技术
资源分类
- 资源是指远程接入SSL VPN后授权终端允许访问的网络服务
- 根据实现机制和应用服务的不同将资源分为3类:
- WEB应用
- TCP应用
- L3VPN应用
WEB应用技术原理
WEB应用通过SSL设备反向代理技术实现用户访问内网服务器。
支持应用类型:HTTP,HTTPS。优点:客户端免控件,所有浏览器均支持。
建议: 使用到泛域名解析技术,需要客户提前注册泛域名。
注意:客户端接入SSL VPN访问WEB应用,不能打开新窗口输入地址访问,只能点击链接或者利用WEB全网服务的地址栏访问。
TCP应用技术原理
TCP应用的实现是通过在Client安装Proxy控件,由控件抓取访问服务器的TCP连接并对数据进行封装,将普通的TCP连接转换成SSL协议数据实现的。
支持应用类型:所有基于TCP传输协议的应用。
优点:适用范围广,仅自动在Client安装一个小控件
建议: 所有基于TCP的应用,建议首选添加TCP应用
L3VPN技术原理
L3VPN应用的实现是通过在Client安装虚拟网卡,虚拟网卡在客户端生成路由表指向虚拟网卡,由虚拟网卡抓取访问服务器的数据,进行封装后通过虚拟网卡和SSL设备建立的隧道将数据传递到Server。
支持应用类型:支持所有基于TCP、UDP、ICMP的应用
特点:Client需安装虚拟网卡,较TCP的控件包大一些。首次登录接入SSL VPN需安装虚拟网卡,实现方式类似于IPsec的移动客户端。
建议: 基于UDP,ICMP的应用或Server需主动访问Client端的应用的时候使用L3VPN资源。
虚拟IP池
用户登录上SSL VPN后会从虚拟IP池中给该用户分配虚拟IP,虚拟IP需要和设备网口的网段非同一网段。
在虚拟IP池中可以设置指定的IP范围给指定的组,也可以在用户管理中编辑用户,指定某个虚拟IP给固定用户,若都未设置,则在分配给任意组的IP端随机分配一个给用户。
实验步骤:
LDAP外部认证实验步骤:
- AD域,域控服务器,可以进行集中化的处理
- 先远程登录AD域服务器
- 下载安装AD域(Active Directory域服务)
- 配置部署域
- 下一步,设置密码
- 重启远程登录 用户名用administrator@dzp.com 密码还是原来得登录密码
- 打开管理工具,进入AD用户和计算机,创建用户组,用户名,设置密码
- 然后来到跳板机 进入SSL VPN设置-认证设置
- LDAP认证,设置名称,服务器地址,端口默认就是389,登录用户名administrator@dzp.com,创建的密码 搜索入口,选择刚刚AD用户和计算机李创建的用户组,用户,然后点击组映射,自动映射到\根目录下,保存,立即生效
- 然后点击导入用户到本地,导入创建得用户组,用户到\根目录下
- 点击SSL VPN设置-用户管理,会出现刚刚导入得用户组,用户,没有就点上面导入
硬件特征码实验步骤:
- 创建用户,设置密码,辅助认证勾选上硬件特征码验证,保存
- pc2去登录验证绑定
- 会出现这个弹窗,就成功了
- 再点进创建得用户,会看到MAC地址,计算机名,特征码