这是一个针对任何 ssh/ssl 专家的小问题。在我们的公司办公室,我们有一个 JMS 应用程序 (Tibco EMS) 在防火墙后面的服务器上运行,防火墙会阻止大多数端口。
我可以通过 ssh 连接到此服务器,但无法将消息发送到 JMS 应用程序,因为该端口未打开。因此,我使用腻子创建了一个到服务器的 ssh 隧道,这样我就不会将消息发送到 ssl://theserver:1234,而是将消息发送到 ssl://localhost:1234。
奇怪的是,我可以使用 ssl://localhost:1234 url 登录到管理控制台。但是当我尝试将消息发送到 ssl://localhost:1234 时,我收到错误消息,指出它无法连接到 ssl://theserver:1234。我不确定它是如何获得“theserver”主机名的,我猜主机名在 ssh 证书文件中(?)并且它从那里获取了它。
但是不管怎样,有没有人知道解决这个问题的方法。我如何通过隧道进入服务器并告诉客户端忽略证书文件中的主机名并仅使用本地主机。
而且我知道简单的答案是打开端口,但存在典型的企业 IT 安全问题,因此他们不允许这样做。
我很确定该名称不是来自证书。据我了解 Tibco,您应该在某个地方有一个守护进程 rvd
或 rvrd
(或某种代理进程) - 在服务器上或在两个客户端上和服务器。寻找这些的配置文件。该名称很可能来自这些文件之一。
我是一名优秀的程序员,十分优秀!