ubuntu

如何在ubuntu上远程控制tigervnc

小樊
48
2025-10-27 09:54:56
栏目: 智能运维

1. 安装TigerVNC服务器
在Ubuntu终端中执行以下命令,安装TigerVNC服务器及必要组件:

sudo apt update
sudo apt install tigervnc-standalone-server tigervnc-common

2. 设置VNC访问密码
运行vncpasswd命令,按照提示输入并确认密码(密码长度最多8位,用于远程连接时的身份验证):

vncpasswd

3. 配置VNC启动脚本(关键步骤)
编辑~/.vnc/xstartup文件(若不存在,首次运行vncserver会自动创建),添加以下内容以启动GNOME桌面环境(若使用XFCE,可将startgnome &替换为startxfce4 &):

nano ~/.vnc/xstartup

写入内容:

#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
export XKL_XMODMAP_DISABLE=1
xrdb $HOME/.Xresources
startgnome &

保存并退出(Ctrl+XYEnter),然后赋予文件执行权限:

chmod +x ~/.vnc/xstartup

4. 启动TigerVNC服务器
使用以下命令启动VNC服务器(:1表示显示编号,对应端口5901;可通过-geometry调整分辨率,-depth调整颜色深度):

vncserver :1 -geometry 1920x1080 -depth 24

首次启动会显示类似New 'X' desktop is your-hostname:1的信息,记录会话编号(如:1)。

5. 配置防火墙(允许VNC连接)
若系统启用了UFW防火墙,需开放VNC端口(5900+显示编号,如:1对应5901):

sudo ufw allow 5901/tcp
sudo ufw enable  # 若未启用防火墙,可忽略此步

6. (可选)设置开机自启
创建systemd服务文件,实现系统启动时自动运行VNC服务器:

sudo nano /etc/systemd/system/vncserver@:1.service

写入以下内容(将your_username替换为实际用户名):

[Unit]
Description=Start TigerVNC server at startup
After=syslog.target network.target

[Service]
Type=forking
User=your_username
Group=your_username
WorkingDirectory=/home/your_username
PIDFile=/home/your_username/.vnc/%H:1.pid
ExecStartPre=-/usr/bin/vncserver -kill :1 > /dev/null 2>&1
ExecStart=/usr/bin/vncserver -depth 24 -geometry 1920x1080 :1
ExecStop=/usr/bin/vncserver -kill :1

[Install]
WantedBy=multi-user.target

保存并退出,然后执行以下命令启用并启动服务:

sudo systemctl daemon-reload
sudo systemctl enable vncserver@:1.service
sudo systemctl start vncserver@:1.service

7. 远程连接TigerVNC服务器
在另一台计算机(如Windows)上安装VNC客户端(如RealVNC Viewer、TightVNC Viewer),打开客户端后输入服务器IP地址:显示编号(如192.168.1.100:1),点击“Connect”,输入之前设置的VNC密码即可远程控制Ubuntu桌面。

(可选)使用SSH隧道提高安全性
为避免直接暴露VNC端口,可通过SSH隧道加密连接:
在本地机器执行以下命令(将your_username替换为Ubuntu用户名,your_server_ip替换为服务器IP):

ssh -L 5901:localhost:5901 -N -f -l your_username your_server_ip

然后在VNC客户端中连接localhost:1,所有流量将通过SSH隧道传输。

0
看了该问题的人还看了