安装一个noi linux通过novnc实现多用户访问

哎哟,这事儿我帮人弄过几次,给你唠唠实在的。

去年吧,有个哥们儿在虚拟机上装了NOILinux,想搞多用户远程,搞这个noVNC。
一开始挺顺利的。

先装系统,选了个Ubuntu,普通操作。
装好之后,得配个静态IP,不然远程连不上,这步不能省。
我让他用nmcli connection modify ipv4 .addresses /这么弄的,比手动改文件靠谱。

然后装VNC服务端,他选了TigerVNC,这玩意儿挺稳当。
sudo apt update && sudo apt install tigervnc-standalone-server,这些命令记牢了。
装完之后,得给每个用户设个VNC密码,不然连不上,用vncpasswd。
这密码要记好,后面要用。

接着是配置启动脚本,这个比较关键。
得改~/.vnc/xstartup这个文件,让他启动桌面环境。
他那个用XFCE,我就让他写上!/bin/sh, unset SESSION_MANAGER, exec startxfce4 ,然后chmod +x ~/.vnc/xstartup,别忘了给执行权限。

启动VNC服务,用vncserver :1 -geometry 1 9 2 0x1 08 0 -depth 2 4 ,这得指定分辨率啥的。
启动后,用ps aux | grep Xvnc看看有没有运行。
他那边跑着了。

再装noVNC,这个简单,git clone https://github.com/novnc/noVNC.git,然后进noVNC/util,再git clone https://github.com/novnc/websockify。
启动noVNC,用./websockify --web ../../6 08 0 localhost:5 9 01 ,这把noVNC跑在6 08 0端口,转发到VNC的5 9 01
多用户配置,他选的方法1 ,给每个用户分个独立的VNC端口。
用户A用vncserver :1 ,用户B用vncserver :2 ,然后noVNC也分着跑,一个转发6 08 0到5 9 01 ,一个转发6 08 1 到5 9 02 这样用户A连http://服务器IP:6 08 0/vnc.,用户B连http://服务器IP:6 08 1 /vnc.,密码都对上就行。

客户端访问,浏览器打开那个URL,输入密码,能连上就行。
他试了,没问题。

后来出了点小问题。
有一次黑屏,我让他检查~/.vnc/xstartup的权限,改了改桌面环境命令,就好了。
还有一次连接慢,我让他试试vncserver后面加-localhost,禁用加密加速,确实快点。

最烦的是多用户冲突,他那边两个用户用同一个端口,直接就卡了。
后来我让他每个用户用独立的显示号,端口也分开了,这才解决。

后来他还想优化,用了Nginx反向代理noVNC,支持HTTPS和多域名访问,这安全多了。
还结合LDAP搞统一认证,不用每个用户配密码,省事。
不过这得有点技术,一般人搞不定。

总之一句话,noVNC搞多用户远程,步骤不少,但都挺实在的。
关键是每步都要走对,特别是VNC密码和启动脚本,千万别搞错。

在Linux系统上配置RealVNC服务

ElementaryOS VNC配置直接用VNCConnect6 .3 .1
官网下载deb包。

amd6 4 用x6 4 .deb。

Terminal里cd到下载目录。

sudo dpkg -i VNC-Server-6 .3 .1 -Linux-x6 4 .deb安装。

需要官网许可证码。

Terminal输入systemctl start vncserver-x1 1 -serviced.service启动。

用VNCViewer远程连接。

输入独立密码登录。

自己掂量。