智汇华云 | 隐藏noVNC服务器IP和端口号的方式

在各种云计算平台中,都会提供一个连接虚拟机控制台的URL地址,有些远程控制台地址是以noVNC来提供访问的。noVNC可以让用户直接使用浏览器很方便地操作虚机,无需再安装另外的程序。但有的URL地址直接就暴露了虚机所在的节点IP,这样就可能直接影响云平台的安全性。

为了不直接暴露虚机节点信息,就需要我们对URL地址、noVNC返回的页面信息进行拦截转换。

获取noVNC地址

1.首先客户端通过请求API的方式获取noVNC可访问的URL。

2.中间服务从noVNC服务器列表中获取对应的noVNC地址。

3.中间服务将获取到noVNC地址进行截取改造,保证新的URL里没有noVNC服务器的IP和端口号。

4.根据本次请求生成一个新的Token,并将生成的Token集成到新的URL中。

5.将Token和原来URL对应关系保存在中间层服务的转发路由信息中,包括HTML的URL和WebSockets的URL对应关系,并返回新生成的URL。

6.客户获取到了新URL,这个新的URL是经过基于中间层微服务进行过转义过的URL。

转发noVNC地址

1.客户端根据新的URL,在浏览器中输入新的URL地址。

2.浏览器会根据新URL请求中间服务,中间服务修改URL请求的HTTP中header参数为Host和Origin信息。

3.修改Header信息之后,根据路由中的信息转发HTTPS或者WebSocket请求到noVNC服务器上。

4.中间层微服务接受到noVNC服务器返回HTML信息之后,替换掉HTML里包含服务器节点地址和端口号。

5.中间层微服务处理好信息之后,把信息返回给客户端浏览器。

效果

转发前noVNC地址:

转发后noVNC地址:

(免责声明:本网站内容主要来自原创、合作伙伴供稿和第三方自媒体作者投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
任何单位或个人认为本网站中的网页或链接内容可能涉嫌侵犯其知识产权或存在不实内容时,应及时向本网站提出书面权利通知或不实情况说明,并提供身份证明、权属证明及详细侵权或不实情况证明。本网站在收到上述法律文件后,将会依法尽快联系相关文章源头核实,沟通删除相关内容或断开相关链接。 )