ISA 连接非443端口的https站点提示错误:
12204 The specified Secure Sockets Layer (SSL) port is not allowed. ISA Server is not configured to allow SSL requests from this port. Most Web browsers use port 443 for SSL requests.
故障分析:
ISA防火墙同时是网络防火墙和Web代理服务器。ISA Server的防火墙组件允许它同时执行数据包过滤和应用层状态识别;而Web代理组件允许它作为CERN兼容的HTTP 1.1 Web代理服务器。Web代理组件(实际上是ISA Server 2004防火墙内部的Web代理过滤器)可以对HTTP通信进行解码,执行应用层状态过滤,然后在转发给外部的目的Web服务器时重建HTTP通信。
可是,对于在受ISA防火墙保护的网络中的主机和一台外部网络的Web服务器间建立的SSL连接有点不一样,当内部主机通过ISA防火墙的Web代理组件发起SSL请求时,ISA防火墙可以检查HTTP头或者根据访问规则来执行过滤;但是,当它们之间的SSL连接建立后,由于在它们之间传输的数据实行了SSL隧道加密,ISA防火墙将不能再检查它们之间传输的数据。
 
在内部Web客户和目的Web服务器之间建立SSL隧道的过程如下所示:
1、内部的Web客户通过在Web浏览器的地址栏中发起一个对目的Web服务器的SSL对象的请求,如
https:URL_Name
2、用户将把这个请求发送到ISA防火墙的8080端口(默认的Web代理侦听端口);
CONNECT URL_name:443 HTTP/1.1
3、ISA防火墙连接目的Web服务器的443端口;
4、当连接建立后,ISA防火墙返回数据给Web客户;
HTTP/1.0 200 connection established
从此时开始,客户直接和外部的Web服务器通信,而不再经过ISA防火墙的Web代理组件,因此,ISA防火墙不能再对封装在SSL隧道中的数据和命令执行应用层状态识别。
当外部Web服务器使用标准的SSL端口TCP 443时,一切都是很正常的,但是,有时候你的Web代理客户也会使用其他的端口来访问SSLWeb站点,例如,Web代理客户可能会使用端口4433替代443来访问银行的Web站点,这样会导致SNAT客户和防火墙客户产生错误,因为ISA防火墙默认会转发SNAT客户和防火墙客户的HTTP连接到Web代理过滤器,客户可能会看见空白页或者指出该页面不能访问的错误页。
解决方法:
比如增加 9443端口:
The following Visual Basic Scripting Edition script (VBScript) is an example of how to add ports to the tunnel port range:
set isa=CreateObject("FPC.Root")
set tprange=isa.GetContainingArray.ArrayPolicy.WebProxy.TunnelPortRanges
set tmp=tprange.AddRange("SSL 9443", , )
tprange.Save
"A restart of the Microsoft Firewall Service is required after you run the script"
 
运行完脚本需要重新启动下Microsoft Firewall Service 。
 
ISA 2004的用另一段代码,现在应该很少用2004了吧:
To add a tunnel port range with Microsoft Internet Security and Acceleration (ISA) Server 2004, this VBScript script will add port 10000:
Dim root
Dim tpRanges
Dim newRange
Set root = CreateObject("FPC.Root")
Set tpRanges = root.GetContainingArray.ArrayPolicy.WebProxy.TunnelPortRanges
set newRange = tpRanges.AddRange("SSL 10000", , )
tpRanges.Save

Note This script does not produce any output if it succeeds. If you run it again, it will produce an error because the range being set already exists.

 
运行完脚本后不会有任何提示,如果你再运行一遍的话可能会有错误弹出来。

ISA 连接非443端口的https站点提示错误的更多相关文章

  1. Linux宝塔后台管理地址使用SSL,并部署非443端口的https

    上传你的key和pem,然后点设置 点击配置文件 插入代码 1 ssl on; 2 ssl_certificate /xxx/yyy/zzz.pem; 3 ssl_certificate_key /x ...

  2. 微信小程序 WebSocket 使用非 443 端口连接

    前言 微信小程序支持使用 WebSocket 连接到服务器,准确地说是带 SSL 的 WebSocket,而微信小程序中不允许使用带端口的 wss 连接,只能使用 443 端口.想使用其他端口就需要在 ...

  3. Mac连接非22端口linux服务器

    Mac连接非22端口linux服务器 原文链接:https://www.cnblogs.com/blog5277/p/9507080.html 原文作者:博客园--曲高终和寡 1:ssh连接 打开终端 ...

  4. SharePoint 2013连接非默认端口的SQL Server

        SharePoint 2013场在连接的时候不允许出现连接地址中包含端口号,否则场配置就会报错,在执行到配置场数据库时无法完成.     此时如果SQL Server不是用的默认端口1433的 ...

  5. 如何远程连接非默认端口SQL Server

    SQL Server Management Studio建立远程SQL连接  连接的时候写: 127.0.0.1,49685\sqlexpress 记得使用逗号,不是冒号

  6. centos上 小程序部署 nginx+https+ssL 提示错误:对应的服务器 TLS 为 TLS 1.0 ,小程序要求的 TLS 版本必须大于等于 1.2

    解决办法: 1.nginx版本必须是1.0.6以上 2.修改配置文件,修改server内的ssl_protocols内容,增加TLSv1.2 3.重启nginx. ./nginx -s reload ...

  7. 使用caddy实现非标准端口https

    近来使用Halo搭建博客,并顺便把WeHalo小程序也把玩了起来,但是发现几个非常棘手的问题: 根据访问日志发现有三方在刷取关键接口的请求,http请求在部分情况下会暴露出很显著的安全问题: 小程序强 ...

  8. Apache的443端口被占用解决方法(转)

    今天想做PHP程序,结果启动Apache的时候控制台报443端口被占用.原因是我的虚拟机VMware占用443端口用于连接远程服务器的.其实出现这些状况很正常.因为不同的程序很有可能同时需要一个端口维 ...

  9. IIS服务器多站点 的 https证书使用443端口 解决方案

    默认情况一个服务器的IIS只能绑定一个HTTPS也就是443端口 要实现多个站点对应HTTPS只能更改IIS配置 首先把每个站点分配个不同端口,如443.444.445…(证书一定要是多域的) 然后重 ...

随机推荐

  1. centos7.x设置nginx开机自启动

    设置nginx开机自启动(centos7.x) 第一步:进入到/lib/systemd/system/目录 [root@iz2z init.d]# cd /lib/systemd/system/ 第二 ...

  2. java多线程--------深入分析 ThreadLocal 内存泄漏问题

    前言 ThreadLocal 的作用是提供线程内的局部变量,这种变量在线程的生命周期内起作用,减少同一个线程内多个函数或者组件之间一些公共变量的传递的复杂度.但是如果滥用ThreadLocal,就可能 ...

  3. 虹软人脸识别在 linux中so文件加载不到的问题

    其实是可以加载到的,不过是so文件放的位置不一对,最简单的方式是放在 /usr/lib64 目录下,也可自己设置. so文件加载不到会报这个错误:    .lang.UnsatisfiedLinkEr ...

  4. memcached 学习笔记 2

    原理 1 核心组件 Memcached有两个核心组件组成:服务端(ms)和客户端(mc). 首先mc拿到ms列表,并对key做hash转化,根据hash值确定kv对所存的ms位置. 然后在一个memc ...

  5. ansible 回调函数处理

    https://www.u3v3.com/ar/1421 https://serversforhackers.com/c/running-ansible-2-programmatically

  6. iOS开源项目周报0316

    由OpenDigg 出品的iOS开源项目周报第十二期来啦.我们的iOS开源周报集合了OpenDigg一周来新收录的优质的iOS开源项目,方便iOS开发人员便捷的找到自己需要的项目工具等.GodEye  ...

  7. 有关OLAP的一些概念

    MR引擎: MapReduce:是一种离线计算框架,将一个算法抽象成Map和Reduce两个阶段进行处理,每个阶段都是用键值对(key/value)作为输入和输出,非常适合数据密集型计算.Map/Re ...

  8. Python——基本的方法(2)

    Python内置了很多有用的函数,我们可以直接调用. 要调用一个函数,需要知道函数的名称和参数,可以直接从Python的官方网站查看文档. 常见的方法: 绝对值方法abs(-100),得到100: 最 ...

  9. 使用VScode 的插件

    使用vscode的插件实现快捷开发 ASP.NET Core Snippets  :HomeController, Startup, ProgramFile and many more starts ...

  10. Java基础教程(6)--数组

    1.基本概念   数组中的每一项称为元素,每个元素都通过数字索引(也可以称为下标)访问,编号从0开始.例如,第4个元素的索引为3.下面的程序创建了一个int类型的数组,把一些值放入数组中并将每个值打印 ...