群晖反向代理访问ESXI后VNC无法访问的解决方法

用ESXI虚拟化安装群晖的玩家,如果你是通过群晖反向代理在外网访问ESXI的话,下面这个情况很多人肯定都遇到过;

 

 

正常情况下,在群晖的控制面板-应用程序门户-反向代理服务器,新增,来源设置成我们想要访问的外网域名和端口,目的地是ESXI内网的IP和端口;

 

 

以上的步骤很多人都做对,也可以实现外网访问ESXI了,但是如果你少做了这一步,就会出现图1的状况。这一步骤非常关键,就是:

如果你的群晖DSM版本是6.21-23824版本或者高于6.21-23824版本的,只需要在建立反向代理的时候,在“自定义标题”—“新增”,点选“WebSocket”;

然后会显示这样,点“确定”;

 

 

如果你的群晖DSM版本是6.21-23824之前的版本(不包括6.21-23824版本),需要在群晖控制面板—“终端机和SNMP”—“启用SSH功能”打勾并设置端口,然后在Win系统下用Xshell之类的SSH工具,以root用户登录群晖,编辑 /usr/syno/share/nginx/Portal.mustache 这个文件(建议先备份再编辑),找到 location 字段添加以下三行内容:

proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_read_timeout 86400;

保存退出,然后再输入以下命令重启群晖内置的网页服务:
sudo synoservicecfg --restart nginx

 

 

经过处理后,再去点开ESXI里面的虚拟机的VNC窗口,发现可以正常浏览了。

点赞

发表评论