​​【认证篇 / 远程】(7.0) ❀ 05. SSL 拨入由域帐户验证 ❀ FortiGate 防火墙

2023-10-30 15:10

本文主要是介绍​​【认证篇 / 远程】(7.0) ❀ 05. SSL 拨入由域帐户验证 ❀ FortiGate 防火墙,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  【简介】当我们用LDAP连接域服务器后,可以取得域服务器的组内的帐户信息,当我们需要进行验证的时候,远程读取组内帐户信息进行验证,最常用的运行环境就是SSL VPN。

  SSL准备

  在配置SSL之前,先要做个准备工作。

  ① 防火墙默认有一个SSLVPN_TUEEL_ADDR1地址对象,定义拨号后生成的IP地址。我们可以直接使用,默认范围200~210,共11个IP,如果不够用可以修改。新建一个或多个内网IP地址,用来允许拨号后访问限制。

  ② 新建一个域用户组。具体方法参考上一篇文章。

   SSL门户

  准备好后,就可以配置SSL门户了。

  ① 选择菜单【VPN】-【SSL-VPN门户】,默认有三个门户,通常使用第一个,选择第一个门户,点击【编辑】。

  ② 隧道模式下,启用隧道分割,选择【基于策略目标启用】,这样只有指定的流量会通过SSL VPN隧道,而不是所有流量。隧道分割地址选择前面建立的内网地址对象。这样只有访问192.168.198.0的流量会通过SSL VPN隧道。源IP地址选择防火墙默认存在的SSLVPN_TUNNEL_ADDR1地址对象,SSL拨号生成这个源IP地址。其它默认,点击【确认】。

   SSL设置

  配置好门户后,就可以开始设置SSL VPN了。

  ① 选择菜单【VPN】-【SSL-VPN设置】,首先选择接口,可以选择多个宽带接口,要求宽带IP能够远程访问。默认端口为443,与防火墙默口端口冲突,这里改成10443。超时时间默认5分钟,没有操作就断开连接。

  ② 只有禁用隧道分割,客户端才会获取到DNS,因为禁用隧道分割,所有流量都走SSL VPN隧道,再获得DNS,就可以通过防火墙的宽带接口上网了。认证/Portal映射新建一条用户组为LDAP域用户组,门户为刚才编辑的full-access,这样限制隧道模式只能访问172.16.198.0网段,而且必须通过域用户组验证。全部其他用户/组,选择web-access就可以了。

   SSL策略

  完成SSL VPN门户、设置后,就可以建立访问策略了。

  ① 在SSL-VPN 配置窗口最上面,有一个创建策略链接,点击链接。

   ② 流入接口默认是SSLVPN生成的虚拟接口ssl.root,输入自定义的策略名称,流出接口选择要访问的接口,可以是内网接口,也可以是宽带接口(禁用隧道分割的情况下)。

   ③ 源地址选择SSLVPN_TUNNEL_ADDR1,应该还记得这是在full-access门户设置有选择过吧。这样就能对上了。除了源地址要能对上外,还需要核对用户。

  ④ 选择【用户】,选择域用户组。这样也就和SSL VPN设置最下的认证/Portal映射对上了。

  ④ 目标地址不能选择all,因为我们启用了隧道分割,选择full-access门户设置里选择的允许访问的内网IP地址。服务选择【ALL】,因为我们要访问的172.16.198.0网段与port7口是同一网段,因此不用启用NAT。点击【确认】,这样所有配置就都完成了。

   SSL验证

  SSL配置完成了,我们来看看是否能通过域服务器进行验证。

  ① 最简单的方法,就是通过Web浏览器登录SSL VPN,在登录的时候输入域帐户名称和密码,看看是否通过。在SSL-VPN设置窗口,有一个Web模式访问链接,点击这个链接。

  ② 第一次访问会出现安全提示,点击【高级】。

  ③ 点击【继续前往...】。

   ④ 然后弹出登录界面,注意看颜色和形状,和我们的防火墙登录界面不同,所以这里不是填写防火墙的登录帐号,而是SSL VPN用户帐号,由于我们配置的是域用户组,因此这里是填写域服务器内的用户帐号和密码。然后防火墙会通过LDAP与域服务器进行效验。用户名的填写格式与标识符有关,这个是标识符cn下的登录方式。

  ⑤ 当LDAP设置里标识符是sAMAccountName是,以这种格式输入用户名。

  ⑥ 标识符不同,读取的域帐户字段不同。

  ⑦ 能登录,说明通过域服务器的验证了。点击【快速连接】。

  ⑧ 选择【Ping】,输入Ping包测试的内网服务器IP地址。

  ⑨ 能Ping通,说明SSL VPN配置是成功的。


这篇关于​​【认证篇 / 远程】(7.0) ❀ 05. SSL 拨入由域帐户验证 ❀ FortiGate 防火墙的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/308774

相关文章

java如何通过Kerberos认证方式连接hive

《java如何通过Kerberos认证方式连接hive》该文主要介绍了如何在数据源管理功能中适配不同数据源(如MySQL、PostgreSQL和Hive),特别是如何在SpringBoot3框架下通过... 目录Java实现Kerberos认证主要方法依赖示例续期连接hive遇到的问题分析解决方式扩展思考总

python实现简易SSL的项目实践

《python实现简易SSL的项目实践》本文主要介绍了python实现简易SSL的项目实践,包括CA.py、server.py和client.py三个模块,文中通过示例代码介绍的非常详细,对大家的学习... 目录运行环境运行前准备程序实现与流程说明运行截图代码CA.pyclient.pyserver.py参

VScode连接远程Linux服务器环境配置图文教程

《VScode连接远程Linux服务器环境配置图文教程》:本文主要介绍如何安装和配置VSCode,包括安装步骤、环境配置(如汉化包、远程SSH连接)、语言包安装(如C/C++插件)等,文中给出了详... 目录一、安装vscode二、环境配置1.中文汉化包2.安装remote-ssh,用于远程连接2.1安装2

Xshell远程连接失败以及解决方案

《Xshell远程连接失败以及解决方案》本文介绍了在Windows11家庭版和CentOS系统中解决Xshell无法连接远程服务器问题的步骤,在Windows11家庭版中,需要通过设置添加SSH功能并... 目录一.问题描述二.原因分析及解决办法2.1添加ssh功能2.2 在Windows中开启ssh服务2

Python实现局域网远程控制电脑

《Python实现局域网远程控制电脑》这篇文章主要为大家详细介绍了如何利用Python编写一个工具,可以实现远程控制局域网电脑关机,重启,注销等功能,感兴趣的小伙伴可以参考一下... 目录1.简介2. 运行效果3. 1.0版本相关源码服务端server.py客户端client.py4. 2.0版本相关源码1

浅析Spring Security认证过程

类图 为了方便理解Spring Security认证流程,特意画了如下的类图,包含相关的核心认证类 概述 核心验证器 AuthenticationManager 该对象提供了认证方法的入口,接收一个Authentiaton对象作为参数; public interface AuthenticationManager {Authentication authenticate(Authenti

Spring Security基于数据库验证流程详解

Spring Security 校验流程图 相关解释说明(认真看哦) AbstractAuthenticationProcessingFilter 抽象类 /*** 调用 #requiresAuthentication(HttpServletRequest, HttpServletResponse) 决定是否需要进行验证操作。* 如果需要验证,则会调用 #attemptAuthentica

C++ | Leetcode C++题解之第393题UTF-8编码验证

题目: 题解: class Solution {public:static const int MASK1 = 1 << 7;static const int MASK2 = (1 << 7) + (1 << 6);bool isValid(int num) {return (num & MASK2) == MASK1;}int getBytes(int num) {if ((num &

C语言 | Leetcode C语言题解之第393题UTF-8编码验证

题目: 题解: static const int MASK1 = 1 << 7;static const int MASK2 = (1 << 7) + (1 << 6);bool isValid(int num) {return (num & MASK2) == MASK1;}int getBytes(int num) {if ((num & MASK1) == 0) {return

easyui同时验证账户格式和ajax是否存在

accountName: {validator: function (value, param) {if (!/^[a-zA-Z][a-zA-Z0-9_]{3,15}$/i.test(value)) {$.fn.validatebox.defaults.rules.accountName.message = '账户名称不合法(字母开头,允许4-16字节,允许字母数字下划线)';return fal