实验篇(7.2) 17. 站对站安全隧道 - FortiGate作为SSL客户端(SSL) ❀ 远程访问

news2024/12/25 9:30:33

  【简介】虽然常用的站到站的连接用的是IPsec VPN,但是在某些特殊情况下,UDP500或4500端口被阻断,IPsec VPN无法连接,那么还有其它办法实现站到站的连接吗?SSL VPN也可以的。


  实验要求与环境

  OldMei集团深圳总部部署了域服务器和ERP服务器,用来对集团总部进行管理。

  OldMei集团上海分公司需要实时访问深圳总部的域服务器和ERP服务器,上海分公司和深圳总部都部署有FortiGate防火墙,两地防火墙通过宽带创建IPsec VPN连接,访问一直很正常。忽然某日无法远程访问,经排查,两地上网正常,IPsec VPN则一直无法连接。要求尽快恢复远程访问功能。

  解决方案:由于IPsec VPN无法连接,只能另外想办法,FortiGate防火墙FortiOS 7.2支持FortiGate作为客户端使用SSL VPN进行远程访问,但是需要有证书的支持。

  实验目标:笔记本电脑通过网卡上网,可以从上海分公司访问深圳总部的域服务器远程桌面。

  获取证书

  获取证书的方法有很多,这里只介绍在FortiAuthenticator上获取证书的方法,其它方法自行研究。

  ① 登录FortiAuthenticator,选择菜单【Certificate Management】-【Certificate Authorities】-【Local CAs】,点击【Create New】,创建一个新的本地CA证书。

  ② 证书内容很多,这里只要填写证书ID和名称就可以了,其它均保持默认,点击【OK】。

  ③ 这样一个本地CA证书就创建好了,So easy!

  ④ 下一步是创建用户证书,选择【End Entities】-【Users】,点击【Create New】。

  ⑤ 通常会建立多个用户证书,例如有多台设备以星状拓扑连接,所以用户证书ID和名称带上一个序号。Certificate Authority选项会自动出现刚才创建的本地CA证书。

  ⑥ 点击【OK】后用户证书也就创建好了,容易得有点过份哈。要想看证书内容,只要点击证书就可以。

  ⑦ 证书的有效期默认为一年,在生产环境的时候,这个时间可以调大一些。

  ⑧ 下一步是下载用户证书,钩选证书,点击【Export key and Cert】。

  ⑨ 输入两次相同的自定义密码,这个密码在证书导入的时候要用到的,点击【OK】。

  ⑩ 点击【Download PKCS#12 files】。

  ⑪ 证书是以PKCS#12文件格式保存的。

  ⑫ 同样还要下载本地CA证书,选择菜单【Certifate Authorities】-【Local CAs】,钩选证书,点击【Export Certificate】。

  ⑬ 本地CA证书下载成功。

  深圳总部防火墙导入证书

  获得本地CA证书和用户证书后,就可以将证书导入深圳总部防火墙了。

  ① 登录深圳总部防火墙,在菜单上却找不到证书选项,这是因为默认是关闭的。选择菜单【系统管理】-【可见功能】,启用【证书】。

  ② 刷新一下,可以看到出现证书菜单选项,选择菜单【证书】,点击【创建/导导】-【CA证书】。

  ③ 类型选择【文件】,找到CA证书文件,点击【确认】。

  ④ CA证书导入成功,注意看是否有效。

  ⑤ 下一步是导入用户证书,这次是点击【创建/导入】-【证书】。

  ⑥ 出现向导提示,点击【导入证书】。

  ⑦ 由于我们在FortiAuthenticator下载证书保存的是PKCS#12格式,因此在这里选择对应的类型,找到证书文件,输入在下载证书时设置的密码。点击【下一步】。

  ⑧ 提示证书导入成功。

  ⑨ 在本地证书列表上出现导入的证书,状态为有效。

  深圳总部防火墙PKI与用户

  FortiGate防火墙作为SSL VPN客户端使用PSK和PKI客户端证书进行认证。

  ① 点击右上角命令图标,打开CLI控制台,输入命令config user peer,创建PKI,编辑一个PKI用户,用户名可自定义,set ca CA_Cert_1 命令设置CA证书。也就是我们前面导入的CA证书,end命令保存并退出。

  ② 刷新视窗,在用户与认证菜单下多出了一个PKI菜单。选择【PKI】菜单,右边显示刚才用命令的创建的UserCert1,选择并点击【编辑】。

  ③ subject字段输入【CN=UserCert1】,点击【确认】。

  ④ 为啥填这个呀,因为这是证书UserCert1的subject的内容。你也可以复制粘贴。

  ⑤ 然后就要创建一个登录时用到的验证用户了。选择菜单【用户与认证】-【设置用户】。

  ⑥ 出现向导提示,默认是创建本地用户,点击【下一步】。

  ⑦ 输入用户名称和密码,点击【下一步】。

  ⑧ 联系人信息保持默认,点击【下一步】。

  ⑨ 由于这里只有一台FortiGate作为客户端进行连接,所以只创建一个用户,没有创建用户组,如果是多台设备连接,要用到多个用户,建议使用用户组。 

  ⑩ 用户创建完成。

  深圳总部防火墙SSL-VPN门户、设置及策略

  前提条件都准备好了,现在可以配置SSL VPN了。

  ① 选择菜单【VPN】-【SS L-VPN门户】,选择full-access,点击【编辑】。

  ② 门户的主要作用,就是指定什么流量走隧道进来。这里选择【基于策略目标启用】,隧道分离地址选择要访问的服务器地址对象。如果没有,可以创建。其它保持默认。

  ③ 门户设置完后,选择菜单【SSL-VPN设置】,选择拨号进来的宽带接口,修改监听端口,服务器证书这次选择前面导入的UserCert1证书。

  ④ 为了简化操作,我们将【全部其他用户/组】对应的门户设置为【full-access】,SSL-VPN设置就配置完了。

  ⑤ 最后还要创建一条允许SSL虚拟接口访问DMZ接口的策略。这样深圳总部防火墙的所有配置就都完成了。

  上海分公司防火墙配置

  下面我们开始配置上海分公司防火墙。

  ① 用同样的方法导入两个证书文件,具体操作步骤就不再重复了。

  ② 通过命令创建PKI,这里一次性直接输入完成。

  ③ 内容和深圳总部防火墙的设置完全相同。

  ④ 下一步是创建一个虚拟接口,选择菜单【网络】-【接口】,点击【新建】-【接口】。

  ⑤ 输入自定义名称,类型选择【SSL-VPN隧道】。

  ⑥ 接口选择【wan1】,启用https、ping协议。

  ⑦ wan1下的SSL VPN虚拟接口就创建好了。 

  ⑧ 选择菜单【VPN】-【SSL-VPN客户端】,点击【新建】。

  ⑨ 输入自定义名称,接口选择刚刚在wan1下面创建的SSL VPN虚拟接口,服务器输入深圳防火墙wan1接口公网IP。端口已经设置成为10443,用户名和密码也在深圳防火墙里已经设置好的,最后是客户端和对等体的证书。点击【确认】。

  ⑩ 最后就是创建访问策略,和普通上网策略一样,只是流出接口选择SSL VPN虚拟接口。记住这里一定要启用NAT。这是因为对方只认拨号后生成的IP,这里启用NAT,就是将所有IP转换成拨号生成的IP。

  检验效果

  配置完后,作为客户端的上海分公司防火墙会自动拨号,发起连接。

  ① 在上海分公司防火墙上选择菜单【仪表板】-【网络】,点击【路由】,查看路由表,可以看到自动生成了两条走SSL VPN隧道的路由。

  ② 从上海分公司internal接口,可以成功的ping通深圳总部的域服务器。

  ③ 远程桌面也能正常打开,感觉比IPsec下略有延迟。

  ④ 深圳总部防火墙可以看到SSL VPN的连接状态。


 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/668814.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

NodeJS File Upload⑩

文章目录 ✨文章有误请指正,如果觉得对你有用,请点三连一波,蟹蟹支持😘前言文件上传 后端接口 Form表单上传 Axios前后端分离上传 实现效果演示 记录 读取图片文件总结 ✨文章有误请指正,如果觉得对你有用&a…

RK3568平台开发系列讲解(外设篇)四线风扇驱动实验

🚀返回专栏总目录 文章目录 一、硬件连接二、原理图分析三、驱动适配3.1、内核配置3.2、修改设备树3.3、实验沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇我们将讲解四线风扇的使用。 一、硬件连接 风扇模块如下所示,黑线是负,红线是正,黄线是测速,蓝线是…

算法——字符串匹配算法——BM(Boyer-Moore) 算法

字符串匹配算法——BM (Boyer-Moore) 算法 概述场景一 坏字符场景且模式串中没有匹配字符场景二 坏字符场景且模式串中有匹配字符场景三 好后缀场景且模式串中没有匹配字符场景四 好后缀场景且模式串中有匹配字符场景五 好后缀场景且模式串中有匹配子串后…

EfficientDet-pytorch目标检测训练

目录 1. EfficientDet-pytorch版本代码下载 2.数据集准备 2.1数据集格式 2.2 定义自己数据集的yml文件 3. 训练配置 4.模型评估 5.测试模型性能 1. EfficientDet-pytorch版本代码下载 GitHub - zylo117/Yet-Another-EfficientDet-Pytorch: The pytorch re-implement…

chatgpt赋能python:Python提取指定数据的方法与技巧

Python提取指定数据的方法与技巧 在SEO优化中,数据的提取和分析是非常重要的环节之一。而Python具有方便易用的数据处理能力,成为了SEO优化工程师们的重要工具之一。本文将介绍Python中提取指定数据的方法与技巧,以及实现的具体案例。 数据…

python:使用Scikit-image库进行单波段遥感图像颜色直方图特征提取(histogram)

作者:CSDN @ _养乐多_ 本文记录了使用Scikit-image库对单波段遥感图像做颜色直方图特征提取的代码。 文章目录 一、颜色直方图特征详解二、代码一、颜色直方图特征详解 颜色直方图是一种用于描述图像中颜色分布的特征表示方法。它将图像中每个像素的颜色值作为输入,统计并显…

Java 基础进阶篇(十七):反射概述及获取对象的方式

文章目录 一、反射概述二、反射获取类对象三、反射获取构造器对象四、反射获取成员变量对象五、反射获取方法对象六、 反射的作用6.1 绕过编译阶段为集合添加数据6.2 通用框架的底层原理 一、反射概述 反射是指对于任何一个Class类,在 “运行的时候”,不…

PHP实战开发23-PHP结合Nginx获取用户真实IP地址

文章目录 一、前言二、关于用户IP的背景知识2.1 HTTP请求2.2 HTTP代理服务器2.3 X-Forwarded-For头部 三、代码实现3.1 Nginx配置3.2 PHP代码处理 总结 一、前言 本文已收录于PHP全栈系列专栏:PHP快速入门与实战 在Web应用程序中,IP地址是常见的数据项…

Flink 学习四 Flink 基础架构

Flink 学习四 Flink 基础架构&算子链&槽位 文章大部分数据来源 : https://nightlies.apache.org/flink/flink-docs-release-1.14/docs/concepts/flink-architecture/ Flink 是一个分布式系统,需要有效的分配和管理计算资源才可以执行流式程序; 集成了常见的资源管理…

chatgpt赋能python:Python简介

Python简介 Python是一种高级编程语言,具有易读性和简洁性的特点。它被广泛使用于Web开发、数据科学、人工智能、机器学习和自动化测试等领域。Python也是一种非常适合新手学习编程的语言。 在本篇文章中,我们将讨论如何使用Python提取指定内容以进行S…

【BMS】电池包硬件方案选型指南

🔋电池包硬件方案选型指南🔋 BMS硬件系统需求主要包括:测温模块、测流模块、测压模块、系统电源、保护电路、故障检测电路,本文阐述各个功能模块在不同场景下的电池包硬件系统方案选择。 一、测温 NTC(热敏电阻) 电池包测温一般包括表皮温度、内部温度、PCB温度(极片布…

[自定义组件]微信小程序自定义组件实现缩略图和原图分离及可缩放效果

目录 目标及基础环境背景 实现原理左右滑动缩放图片菜单 开发实现自定义组件wxml组件结构wxss 样式控制js定义属性及回调json声明为组件 使用添加组件声明及地址声明为全局组件(也可声明为局部)声明为全局组件(也可以声明为全局组件)使用组件 效果展示 附…

pycharm安装, 汉化 , 使用教程

目录 1.下载安装包 2.汉化 3.使用 1.下载安装包 访问Pycharm官网 根据自己的操作系统下载对应版本的Pycharm Community或Professional Edition。 2.汉化 点击“file”选项,然后点击“setting”,再点击“plugins”选项; 输入“Chinese”找…

使用Frp进行反向代理实现远程桌面控制[teamviewer/nomachine]

.使用Frp进行反向代理实现远程桌面控制 V1.0.0 – by Holden Date : 2023-06-20 文章目录 .使用Frp进行反向代理实现远程桌面控制1. 简介2. 工具准备3. 服务器端搭建4. 受控端配置&&运行teamviewer5. 控制机端运行teamviewer6. 切换成nomachine 1. 简介 ​ frp 是一…

winform多语言资源管理

SailingEase WinForm Framework WinForm开发框架开发手册:http://docs.shengxunwei.com/Home/Browser/sewinformfw/ 这是我2010年左右,写 Winform IDE (使用 .NET WinForm 开发所见即所得的 IDE 开发环境,实现不写代码直接生成应用…

什么是算法

有人说程序算法数据结构,虽说这样的认为有失偏颇,一个程序决定的东西实在太多,但某些方面也说明了算法是很重要的(数据结构承上启下,最终也是要为算法服务)。 算法是用来解决问题的,要理解什么是…

AI Image Codec技术落地实践

AI Codec自2016年首次提出以来,众多海内外高校、企业研究院等机构对此展开了广泛研究。6年时间里,AI Codec 的SOTA方案的压缩性能已经超越了H.266(最新的传统Codec标准),展现了强大的技术潜力。但受限于计算复杂度、非标等原因,AI…

Vue中的JSX的特性

JSX简介 JSX是一种Javascript的语法扩展&#xff0c;即具备了Javascript的全部功能&#xff0c;同时又兼具html的语义化和直观性。它可以让我们在JS中写模板语法&#xff1a; const el <div>Vue 2</div>; 复制代码上面这段代码既不是 HTML 也不是字符串&#xf…

java阿里云sls基于LoghubAppender自定义日志上传

1、背景&#xff1a;阿里sls日志提供快捷日志平台&#xff0c;平替elk公司使用这个日志服务&#xff0c;需要对接写入日志 目前日志集成有3种 1&#xff09;基于封装manager手动写日志手动send 弊端&#xff1a;本地日志和阿里云日志共用日志代码很臃肿 2&#xff09;基于云服…

开启数字时代,分享电脑监控和录制工具

近年来&#xff0c;随着网络技术的快速发展和普及&#xff0c;电脑屏幕录制和监控越来越成为企业、学校、家庭等不可或缺的工具。无论是在线教学、远程工作&#xff0c;还是家长对孩子上网行为的关注&#xff0c;电脑屏幕录制和监控都具有极大的帮助和重要性。今天就给大家推荐…