Lync Server外部访问系列PART4:部署反向代理

简介:

在外部访问系列中,到此位置的三篇文章,都是准备-部署的形式,因为我想借助这样的结构让大家能够知道哪些是准备工作而哪些是在准备充分的基础上做的工作即我们的部署。但其实部署和准备严格来说都是部署,但我们在概念上把它分清,能够让我们思路更加清晰,知道每一步该如何去做,为什么需要这样做。今天是外部访问系列里面比较有价值的一篇,但其实内容并不多,之所以文章这么长是因为每个步骤都在里面。准确来说这一篇的内容并不是部署反向代理,因为反向代理只是我们TMG的一个端口重定向的规则而已,我们还需要做的是将我们在DMZ网络中的Lync Server边缘访问发布出去,以实现在公网访问我们的Lync Server,所以更准备的讲这一篇的内容应该叫公网发布。

下面我们开始今天的内容,我们在TMG上单击开始打开TMG管理,我们一切的操作基本上都是在TMG管理中完成的。

clip_image001

这里我们分两个步骤,第一个步骤是发布边缘访问,第二个步骤是创建端口重定向。我们先开始第一个步骤,右键防火墙策略-新建-非Web服务器协议发布规则。

clip_image002

我们一共需要发布三个规则,分别是Lync Web会议、Lync音视频服务、Lync SIP访问。我们现在开始发布Lync Web会议,这里的规则名称为了便于识别我们就直接设置Lync Web会议即可。

clip_image003

填入发布的服务器的IP,这里就填我们边缘服务器的DMZ网卡所设置的IP地址。

clip_image004

由于没有现成的协议供我们发布,我们单击新建来创建一条协议。

clip_image005

协议名称建议与我们发布的内容相同。

clip_image006

设置协议类型为TCP,方向为入站,端口为444到444。

clip_image007

不使用辅助连接,直接单击下一步。

clip_image008

规则已经创建完成,单击完成按钮。

clip_image009

回到发布规则向导时选择我们刚才创建的协议,单击下一步。

clip_image010

选择网络侦听器,我们选择外部,即使用TMG的WAN网卡进行侦听。

clip_image011

完成规则的创建。

clip_image012

这里我们就完成了Lync Web会议服务发布的规则创建,下面我们继续发布Lync 音视频服务,还是右键防火墙策略-新建-发布非Web服务器发布规则,这里我们为此规则取名为Lync 音视频服务。

clip_image013

指定IP仍然是边缘服务器的DMZ网卡IP地址。

clip_image014

由于我们要发布的都是非规范端口,所以都需要新建协议。

clip_image015

一些相同的步骤图片我就将其省掉,只讲一些不一样的地方。协议仍然为TCP、方向为入站、端口是442到442。

clip_image018

不使用辅助连接。

clip_image019

创建完成后回到发布规则向导,选择新创建的协议下一步。

clip_image021 

选择使用WAN网卡的IP地址进行侦听。

clip_image022

到此我们第二条发布规则就已经完成了,还剩下一条SIP访问,我们继续将它完成。

clip_image024

规则大致与前面两条一样,就不再重复多讲,新建的协议类型为TCP、方向为入站、端口5061到5061。

clip_image026

选择创建好的协议。

clip_image028

完成创建。

clip_image029

好了到此我们的边缘服务器就已经完成了,但现在我们仍然没办法在外部进行登录并使用各种Lync功能,因为没有反向代理来协议外部客户端连接到内部前端的Web服务,又怎么来使用我们发布的边缘访问服务呢?我们开始部署反向代理吧!在TMG管理中,右键防火墙策略-新建-网站发布规则。

clip_image030

发布规则我们将其命名为Lync反向代理。

clip_image031

将符合规则条件时要执行的操作设置为允许。

clip_image032

由于我们只有前端服务器的外部Web服务需要发布,所以我们在发布类型中选择发布单个网站。

clip_image033

由于所有的Lync Web服务都是加密了的,所以在服务器连接安全中选择使用SSL连接到发布的Web服务器。

clip_image034

设置内部发布信息,这里需要我们指定承载会议和通讯簿的内部Web场的FQDN(在定义拓扑时设置的内部Web服务URL),我们输入pool01.contoso.com,即前端池的FQDN。

clip_image035

在内部发布详细信息界面中,在路径(可选)框中键入“/*”作为要发布的文件夹的路径。

clip_image036

在公告名称细节中,我们选择接受请求“在此域名”,然后输入公用名称rp.contoso.com,即我们在定义拓扑时设置的外部Web服务URL。

clip_image037

在选择Web侦听器界面,由于没有现成的,所以我们需要创建一个适用于反向代理的侦听器。

clip_image038

输入反向代理侦听器的名称,建议与反向代理的规则名称相同。

clip_image039

在客户端连接安全设置界面,选择需要与客户端简历SSL安全连接。这里是指外部用户访问TMG时的安全设置,前面是设置前端池到TMG之间的安全设置。

clip_image040

选择Web侦听器IP地址为外部。

clip_image042

然后需要为侦听器设置证书,我们单击选择证书,然后指定我们之前导入的边缘DMZ网卡证书,sip.contoso.com。

clip_image043

clip_image044

在设置身份验证的界面,我们选择无身份验证。

clip_image045

不需要设置单一登录。

clip_image046

完成侦听器的创建。

clip_image047

回到选择Web侦听器界面,我们选择刚才创建的侦听器,可以在下面看到侦听器的摘要,确认无误后单击下一步。

clip_image048

在身份验证委派界面中,我们选择无委派,客户端无法直接连接进行身份验证。

clip_image049

对于应用的用户集我们按照默认的所有用户即可。

clip_image050

完成Web发布规则。

clip_image051

我们右键新创建的Web规则,对其进行一些细节的修改。

clip_image052

我们找到“从”选项卡,移除任意位置,并单击添加按钮,将“外部”网络添加进去。

clip_image053

我们再单击“到”选项卡,确定复选“转发原始主机头而不是内部站点名称字段中指定的实际主机头” 。

clip_image054

  在“桥接”选项卡中,我们复选“将请求重定向到SSL端口”然后在后面的填框中输入4443,即将来自于SSL端口443的内容重定向到我们前端池的外部Web服务4443端口上。因为我们的内部Web服务已经使用了443端口。而内外部在标准情况下又是两个不同的Web服务场。

clip_image055

然后我们再在“公共名称”选项卡中,添加四条公共网站名称。分别是dialin.contoso.com\meet.contoso.com\sip.contoso.com\rp.contoso.com。

clip_image056

我们把以上四个域名全部添加到这里,然后单击“确定”。这里左下角有一个测试规则,这里我们先不忙进行测试,因为这里所填写的域名是需要公网DNS的,当然我们之前就说过我们会通过在物理局域网中搭建DNS服务器来模拟公网DNS。所以这里等我们将模拟的公网DNS搭建完成后我们再来进行测试,否则肯定是失败的。

image

好了完成所有设置,回到TMG管理中,我们单击顶部的“应用”按钮来使我们创建的这些规则以及反向代理生效。

image

然后会让我们输入更改描述以便TMG进行记录,由于是测试环境我们就不弄那么多了,直接单击右下角的应用。

image

然后会开始应用这些规则,稍等片刻即可应用完成,单击确定即可。

image

如此神秘的边缘发布、反向代理被我们全部搞定了,可以看出来无论是反向代理还是外网发布其实都非常的简单。只是在这样的环境中,我们在部署Lync的同时还需要用到TMG,否则外网的发布和反向代理就没法实现。其实很多朋友可能在部署过程中就发现了,所谓的反向代理并不是一个专门的东西,而是TMG上的一个发布规则而已。所以到这里我们的边缘发布和反向代理就搭建完成了,但此刻我们仍然无法通过我们的物理局域网使用这些功能。因为还差两样东西,第一样是模拟公网DNS服务器,第二样是为用户启用外部访问。这也是我们后面要讲的内容。

好了今天就先到这里,如果大家有什么问题欢迎随时与我交流、沟通。谢谢大家!



本文转自 reinxu 51CTO博客,原文链接:http://blog.51cto.com/reinember/829619,如需转载请自行联系原作者

相关文章
|
5月前
|
存储 API 数据安全/隐私保护
如何使用Web Storage进行状态持久化?
如何使用Web Storage进行状态持久化?
|
存储 关系型数据库 MySQL
深入MySQL:事务日志redo log详解与实践
【8月更文挑战第24天】在MySQL的InnoDB存储引擎中,为确保事务的持久性和数据一致性,采用了redo log(重做日志)机制。redo log记录了所有数据修改,在系统崩溃后可通过它恢复未完成的事务。它由内存中的redo log buffer和磁盘上的redo log file组成。事务修改先写入buffer,再异步刷新至磁盘,最后提交事务。若系统崩溃,InnoDB通过redo log重放已提交事务并利用undo log回滚未提交事务,确保数据完整。理解redo log工作流程有助于优化数据库性能和确保数据安全。
1160 0
|
Kubernetes Cloud Native 云计算
云原生技术深度解析:重塑企业IT架构的未来####
本文深入探讨了云原生技术的核心理念、关键技术组件及其对企业IT架构转型的深远影响。通过剖析Kubernetes、微服务、容器化等核心技术,本文揭示了云原生如何提升应用的灵活性、可扩展性和可维护性,助力企业在数字化转型中保持领先地位。 ####
|
IDE Java 开发工具
Java“未封闭的 String 表达式”怎么解决
要解决Java中的“未封闭的 String 表示”问题,需检查并修正字符串字面量,确保每个字符串被正确地用双引号括起来。若字符串跨越多行,可使用字符串连接操作符(+)或引入文本块(JDK 13 及以上版本)。这能帮助避免语法错误,并使代码更整洁易读。
525 7
|
存储 弹性计算 负载均衡
阿里云服务器地域、实例、带宽与操作系统等配置选择指南参考
在数字化时代,无论是个人博客、企业官网、APP后端支持,还是小程序运行或者其他项目,云服务器都扮演着至关重要的角色,考虑产品质量、服务和价格等因素,大家现在都喜欢选择阿里云服务器。然而,对于初次接触云服务的新手来说,可能并不是很清楚应该如何选阿里云服务器的地域、实例、带宽与操作系统等配置。本文将从地域选择、实例规格、操作系统、云盘配置、购买时长以及带宽选择等六个方面,为新手用户提供详细的选购指南,以供参考。
阿里云服务器地域、实例、带宽与操作系统等配置选择指南参考
|
缓存 安全 前端开发
Electron on macOS: 揭秘 MacUpdater 如何实现无缝自动更新?
本文首发于微信公众号“前端徐徐”,详细探讨了 Electron 应用在 macOS 平台上的更新原理。文章分析了 `MacUpdater` 类的实现,包括与 Electron 原生更新器的集成、更新检测和下载、代理服务器管理、环境适配、安全性保障、错误处理和日志记录、更新安装流程控制以及缓存管理等关键功能。通过这些技术细节,展示了如何在 macOS 上实现高效、安全的 Electron 应用更新。
511 0
Electron on macOS: 揭秘 MacUpdater 如何实现无缝自动更新?
|
机器学习/深度学习 人工智能 5G
探索5G革命中的虚拟化基站(vRAN):定义、功能与前景
探索5G革命中的虚拟化基站(vRAN):定义、功能与前景
626 5
|
Java 持续交付 项目管理
使用Maven进行项目管理:提高Java Web开发的效率
Maven 是一款强大的项目管理和构建自动化工具,广泛应用于Java社区。它通过依赖管理、构建生命周期管理、插件机制和多模块项目支持等功能,简化了项目的构建过程,提高了开发效率。本文将介绍Maven的核心功能及其在Java Web开发中的应用。
363 0
|
资源调度 Java 调度
项目环境测试问题之Schedulerx2.0通过分布式分片任务解决单机计算瓶颈如何解决
项目环境测试问题之Schedulerx2.0通过分布式分片任务解决单机计算瓶颈如何解决
242 0
项目环境测试问题之Schedulerx2.0通过分布式分片任务解决单机计算瓶颈如何解决
|
安全 数据安全/隐私保护
深入解析 https
在使用HTTP协议时,数据传输是明文形式,容易遭受运营商劫持等安全问题,如篡改返回网页内容、修改Referer字段等。为解决这些问题,引入了HTTPS协议,它通过加密、认证和完整性保护,确保通信内容不被第三方窃听或篡改。HTTPS结合了对称加密和非对称加密,使用公钥加密对称密钥,私钥解密,确保数据安全性和传输效率。然而,中间人攻击仍可能破解这一机制,因此引入证书机制,客户端通过验证证书中的数字签名来确认公钥的有效性,从而保障数据传输的安全性。
383 0