背景
工作总偶尔需要使用到图形界面调试,对于不支持x11转发的程序无法依靠ssh -X
实现,需要借助远程桌面工具。
常用的平台包括 向日葵、TeamView、ToDesk 这些软件对免费用户均有不同程度的限制,体验不佳。
方案
考虑到Ubuntu系统自带基于vnc的远程桌面连接功能(screen sharing)决定一探究竟。
服务端
根据官方文档进入Settings->Sharing并没有找到ScreenSharing选项,手动安装之
sudo apt install vino
(可选)禁用加密,确保MacOS等系统能够正常连接
gsettings set org.gnome.Vino require-encryption false
再次进入Settings->Sharing->ScreenSharing开启屏幕共享功能,记录计算机名称(如hostname.local)。
认证方法建议选择第二项设定密码,否则每次连接需要手动点击确认。
客户端
MacOS
按下cmd+space进行入spotlight搜索直接输入vnc://hostname.local
即可进行连接
Ubuntu
下载VNC Viewer进行远程协助
进阶
想通过外网访问,只需穿透服务端的5900端口即可进行VNC连接,以ssh隧道端口转发为例。
ssh -L 5900:hostname.local:5900 jumphost
vnc://127.0.0.1
参考
Share your desktop - Ubuntu Help
Can no longer use Screen Share to connect Mac to Ubuntu since upgrading to 14.04 - *
Download VNC Viewer for Linux | VNC® Connect