打造无障碍Ubuntu远程工作环境:XRDP、VNC与向日葵等三大远程连接方案
XRDP、VNC与向日葵等三大远程连接方案
- 启用SSH Root远程登录
- Ubuntu Server
- Ubuntu Desktop
- XRDP远程桌面方案
- 安装XRDP
- XRDP服务管理
- 配置防火墙规则
- 开启Ubuntu屏幕共享
- 远程连接
- VNC远程桌面方案
- 安装VNC
- 配置显示管理器
- 配置VNC密码
- 创建VNC系统服务
- VNC客户端连接
- 向日葵远程连接方案
- 安装向日葵客户端
- 启动向日葵客户端
- 中文输入法配置
- Fcitx输入法框架
- 搜狗输入法
启用SSH Root远程登录
Ubuntu Server
在启用SSH Root远程登录时,应当确保Root用户有正确配置密码。
sudo passwd root
出于安全考虑,Ubuntu默认禁止root用户通过SSH远程登录。需要编辑SSH服务配置文件开启SSH Root远程登录
编辑vim /etc/ssh/sshd_config
配置文件,将PermitRootLogin设置为yes
# Authentication:#LoginGraceTime 2m
#PermitRootLogin prohibit-password
PermitRootLogin yes
#StrictModes yes
#MaxAuthTries 6
#MaxSessions 10
修改完成后,需要重启 SSH 服务使配置生效:
systemctl restart sshd
Ubuntu Desktop
在Ubuntu桌面系统中,root账号是默认无法登陆系统的,执行以下操作开启Ubuntu桌面系统使用root账号登录
执行sudo vim /etc/pam.d/gdm-autologin
,注释以下内容,第三行左右
auth required pam_succeed_if.so user != root quiet_success
执行sudo vim /etc/pam.d/gdm-password
,注释以下内容,第三行左右
auth required pam_succeed_if.so user != root quiet_success
执行sudo vim /root/.profile
修改配置文件,文档最后一行前添加
tty -s &&mesg n || true
重启系统使其生效
reboot
XRDP远程桌面方案
安装XRDP
XRDP是一个开源的 RDP 服务器实现,允许通过Windows远程桌面连接Ubuntu系统。
安装XRDP及相关组件:
sudo apt-get install xrdp tightvncserver -y
XRDP服务管理
使用systemctl
命令全面管理XRDP服务:
# 开机启动
sudo systemctl enable xrdp.service# 启动
sudo systemctl start xrdp.service # 状态
sudo systemctl status xrdp.service # 重启
sudo systemctl restart xrdp.service# 停止
sudo systemctl stop xrdp.service
配置防火墙规则
确保远程连接端口在防火墙中开放:
# 启用UFW防火墙
sudo ufw enable # 允许RDP标准端口3389通过防火墙
sudo ufw allow from any to any port 3389 proto tcp# 重新加载防火墙规则使变更生效
sudo ufw reload
开启Ubuntu屏幕共享
在Ubuntu系统设置中开启屏幕共享功能以支持远程控制:
远程连接
在Windows系统上通过内置远程桌面工具连接Ubuntu:
1.按下 `Win+R` 组合键,输入 `mstsc` 打开远程桌面连接工具2.输入目标 Ubuntu 服务器的 IP 地址和端口(默认 3389)3.输入 Ubuntu 系统的用户名和密码进行认证
注意:
如果已经使用root账号登录过了系统,则需要在远程桌面详情里使用如下认证提供密码登录才能登录。反之直接使用root用户名与密码直接登录,其他账号则没有这个问题。
VNC远程桌面方案
VNC (Virtual Network Computing) 是另一种跨平台的远程桌面协议,在图形处理方面具有一定优势:
安装VNC
在ubuntu中安装x11vnc服务器
sudo apt-get install x11vnc
配置显示管理器
安装LightDM显示管理器:支持本地图形界面以获得最好的兼容性
sudo apt-get install lightdm
安装过程中会出现以下选项,选择lightdm
然后回车即可
因为安装了lightdm图形管理程序,需要重启系统
sudo reboot
配置VNC密码
为VNC连接生成VNC密码文件,这个密码是用来连接VNC的时候, 登录用的。会问是否需要将密码保存在某个目录下,输入y确认即可
root@master:~/work# x11vnc -storepasswd
Enter VNC password:
Verify password:
Write password to /root/.vnc/passwd? [y]/n y
Password written to: /root/.vnc/passwd
创建VNC系统服务
1.创建服务配置文件
编辑
vim /etc/systemd/system/x11vnc.service
创建启动脚本文件
2.辑服务配置内容
注意: 需要指定VNC密码文件位置
[Unit]
Description="Start x11vnc"
After=multi-user.target[Service]
Type=simple
ExecStart=/usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /root/.vnc/passwd -rfbport 5900 -shared[Install]
WantedBy=multi-user.target
参数说明:
-auth guess
:自动查找认证文件
-forever
:持续运行,不会在一次连接后退出
-loop
:在连接断开后重新监听
-noxdamage
:减少屏幕更新流量,提高性能
-repeat
:允许按键重复
-rfbauth
:指定VNC密码文件路径
-rfbport
:指定VNC服务端口(标准端口5900)
-shared
:允许多个客户端同时连接
3.设置开机自启服务:
systemctl enable x11vnc
4.启动VNC服务:
systemctl start x11vnc
5.查看VNC服务状态:
root@master:~/work# systemctl status x11vnc
● x11vnc.service - "Start x11vnc"Loaded: loaded (/etc/systemd/system/x11vnc.service; enabled; vendor preset: enabled)Active: active (running) since Fri 2024-01-19 10:11:21 CST; 8s agoMain PID: 8464 (x11vnc)Tasks: 10 (limit: 23953)Memory: 9.0MCPU: 3.100sCGroup: /system.slice/x11vnc.service├─ 8464 /usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /root/.vnc/passwd -rfbport 5900 -shared├─11261 /usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /root/.vnc/passwd -rfbport 5900 -shared├─12059 sh -c "/usr/bin/x11vnc -findauth -env FD_XDM=1"├─12060 /usr/bin/x11vnc -findauth -env FD_XDM=1├─12061 sh -c "/bin/sh /tmp/fd.MDITDW -n"├─12062 /bin/sh /tmp/fd.MDITDW -n└─12489 /bin/sh /tmp/fd.MDITDW -n1月 19 10:11:29 master x11vnc[11277]: /tmp/fd.bx0yov: 1: netstat: not found
1月 19 10:11:29 master x11vnc[11306]: xauth: unable to generate an authority file name
1月 19 10:11:29 master x11vnc[11332]: /tmp/fd.bx0yov: 1: netstat: not found
1月 19 10:11:29 master x11vnc[11320]: /tmp/fd.bx0yov: 320: [: -a: unexpected operator
1月 19 10:11:29 master x11vnc[11320]: /tmp/fd.bx0yov: 320: [: -a: unexpected operator
1月 19 10:11:30 master x11vnc[11261]: 19/01/2024 10:11:30 -auth guess: failed for display='unset'
1月 19 10:11:30 master x11vnc[11261]: 19/01/2024 10:11:30 -auth guess: since we are root, retrying with FD_XDM=1
1月 19 10:11:30 master x11vnc[12074]: /tmp/fd.MDITDW: 1: netstat: not found
1月 19 10:11:30 master x11vnc[12062]: /tmp/fd.MDITDW: 320: [: -a: unexpected operator
VNC客户端连接
这里演示使用专业远程工具 MobaXterm
进行 VNC 连接:
1. 打开 MobaXterm,选择 Session → VNC2. 输入服务器 IP 和端口(默认 5900)3. 连接时输入之前设置的 VNC 密码
输入生成VNC密码文件时,设置的密码
远程连接成功
向日葵远程连接方案
向日葵是一款功能全面的国产远程控制软件,支持多平台,对Linux系统提供良好支持。
安装向日葵客户端
根据需求选择安装图形界面版本或纯命令行版本
图形界面版本
https://d.oray.com/sunlogin/linux/SunloginClient_11.0.1.44968_amd64.deb
命令行版本
wget https://d.oray.com/sunlogin/linux/sunloginclientshell-10.1.1.28779-amd64.deb
使用dpkg工具安装下载的软件包:
sudo dpkg -i 向日葵安装包文件名.deb
启动向日葵客户端
1.图形界面版本
在应用程序列表中找到向日葵客户端图标,双击运行。首次运行需要登录向日葵账号。
2.命令行版本
通过以下命令启动服务:
/usr/local/sunlogin/bin/sunloginclient
需要卸载向日葵时,使用以下命令:
sudo dpkg -r sunloginclient
注意:
注销用户在登入的时候,选择xorg,如果不选的话,Windows远控的时候,会一直卡在加载界面。
中文输入法配置
Fcitx输入法框架
Fcitx 是 Linux 系统下流行的输入法框架,支持多种输入法
安装fcitx
# 安装Fcitx核心组件和输入表
sudo apt-get install fcitx-bin fcitx-table
配置fcitx
Ubuntu 22.04 下配置 Fcitx 的步骤:
1. 打开系统设置 → 区域与语言 → 管理已安装的语言2. 在弹出的语言支持窗口中,将`键盘输入法系统`设置为`Fcitx 4`3. 关闭窗口后重启Ubuntu使配置生效
搜狗输入法
搜狗输入法是 Linux 平台流行的中文输入解决方案
安装搜狗输入法For Linux
https://pinyin.sogou.com/linux/?r=pinyin
安装相关依赖,然后重启Ubuntu
sudo apt install libqt5qml5 libqt5quick5 libqt5quickwidgets5 qml-module-qtquick2sudo apt install libgsettings-qt1