Windows mstsc 远程桌面链接 ubuntu 18.04 远程gnome图形桌面
前言全局说明
通常情况下,管理 Ubuntu 服务器都是用命令行界面,但某些时候,可能会用到图形界面。
ubuntu 22.04安装方法:https://www.cnblogs.com/wutou/p/18430133
命令行安装图形界面:https://www.cnblogs.com/wutou/p/18572907
一、说明
环境:
Ubuntu 18.04.6 LTS (Linux qt-vm 5.4.0-150-generic #167~18.04.1-Ubuntu SMP Wed May 24 00:51:42 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux)
18.04默认只有 vnc remote相关的图形功能,其他需要自己手动安装。
如果不想研究,只想使用,网上有已经做好的 XRDP 一键自动安装脚本:
https://www.cnblogs.com/wutou/p/18578043
二、安装依赖包
注意:要按照下面顺序安装
2.1 更新源
sudo apt-get update
2.2 安装工具,后续可能用到
2.2.1 端口查看工具
sudo apt-get install net-tools
2.2.2 VIM文本编辑工具
sudo apt install vim-common=2:8.0.1453-1ubuntu1
sudo apt install vim
2.2.3 安装 ssh 服务
如果图形桌面安装过程中有什么问题,还可以用命令行补救
sudo apt-get install openssh-client=1:7.6p1-4
sudo apt-get install openssh-server
2.4 安装xrdp服务
sudo apt-get install xrdp
sudo apt install xorg
sudo apt-get install xserver-xorg-input-all
安装 xrdp 可能会导致桌面点击无反应,请提前备份。虚拟机提前做快照
桌面无法点击说明缺少安装文件,安装上面 xserver-xorg-input-all 就可以了
2.5 安装桌面 (二选一即可)
2.5.1 安装 gnome 桌面 (ubuntu 默认自带)
sudo apt install gnome
sudo apt install gnome-session gdm3
下图,就是 gnome 桌面
2.5.1 安装 xfce4 桌面
sudo apt-get -y install xfce4
sudo apt install xfce4-session
比起VNC的话XRDP不需要专用客户端,而且完美兼容windows和一帮用RDP协议的远程软件
下图,就是 xfce4 桌面
2.6 远程安装桌面
sudo DEBIAN_FRONTEND=noninteractive apt-get -y install xfce4
sudo apt install xfce4-session
如果是远程服务器,安装时不可能去机房里点界面的 yes ,所以就要修改环境变量 ,设置 DEBIAN_FRONTEND=noninteractive
三、配置
3.1 防火墙开放 3389 端口
检查 iptables 或 ufw 是否放行3389端口,检查端口的连通性
sudo ufw allow 3389/tcp
3.2 开启指定桌面
告诉xrdp要连接哪个桌面
3.2.1 开启 gnome
上面2.5 选择安装了 gnome 那就要创建配置文件
echo gnome-session >~/.xsession
3.2.2 开启 xfce4
上面2.5 选择安装了 xfce4 那就要创建配置文件
echo xfce4-session >~/.xsession
3.3 重启服务
sudo systemctl restart xrdp
四、登录
使用 mstsc 远程登录时,保证要登录的用户没有在别的地方登录,如果登录了,需要注销后,远程才能正常登录。
首次登录加载桌面,可能需要时间长些。
使用 xrdp 登录时用的是和 ssh 一样的密码。不是设置--共享里设置的屏幕密码
五、加密登录
默认情况下,xrdp远程登录是明文连接信息,很容易遭受中间人攻击。
所以要使用证书签发方式登录。
sudo adduser xrdp ssl-cert
六、优化
6.1 xrdp 登录后没有侧边栏 dock 和桌面图标
1.编辑文本
vim ~/.xsessionrc
添加下面内容
export GNOME_SHELL_SESSION_MODE=ubuntu
export XDG_CURRENT_DESKTOP=ubuntu:GNOME
export XDG_CONFIG_DIRS=/etc/xdg/xdg-ubuntu:/etc/xdg
2.重启服务 或 重启系统(建议重启系统)
sudo systemctl restart xrdp.service
6.2 Xrdp 体验优化 减少/解决画面卡顿
1.编辑 /etc/xrdp/xrdp.ini
sudo vim /etc/xrdp/xrdp.ini
增加下面两行
tcp_send_buffer_bytes=4194304
tcp_recv_buffer_bytes=6291456
两个参数默认被注释了,注释默认值(32768)
2.重启 xrdp 服务
sudo systemctl restart xrdp
6.4 开启剪贴板和视频捕获设备(获得更高分辨率)
七、错误
7.1 执行命令报错 sudo apt install xrdp xorgxrdp
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
有一些软件包无法被安装。如果您用的是 unstable 发行版,这也许是
因为系统无法达到您要求的状态造成的。该版本中可能会有一些您需要的软件
包尚未被创建或是它们已被从新到(Incoming)目录移出。
下列信息可能会对解决问题有所帮助:
下列软件包有未满足的依赖关系:
xorgxrdp : 依赖: xorg-video-abi-23
依赖: xserver-xorg-core (>= 2:1.18.99.901)
E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。
解决方法;分开执行
sudo apt-get install xorg
sudo apt-get install xserver-xorg-core
sudo apt-get install xorgxrdp
7.2 登录后又退出
登入后提示"Authentication is Required to create a color managed device"
在路径/etc/polkit-1/localauthority.conf.d/下,
新增一个文件,名为 02-allow-colord.conf
7.2.1 编辑文件
sudo vim /etc/polkit-1/localauthority.conf.d/02-allow-colord.conf
7.2.2 将以下内容写入:
polkit.addRule(function(action, subject) {
if ((action.id == "org.freedesktop.color-manager.create-device" ||
action.id == "org.freedesktop.color-manager.create-profile" ||
action.id == "org.freedesktop.color-manager.delete-device" ||
action.id == "org.freedesktop.color-manager.delete-profile" ||
action.id == "org.freedesktop.color-manager.modify-device" ||
action.id == "org.freedesktop.color-manager.modify-profile") &&
subject.isInGroup("{users}")) {
return polkit.Result.YES;
}
});
7.2.3 重启xrdp服务
sudo systemctl restart xrdp
7.3 安装 xrdp 后,桌面不能点击
https://www.cnblogs.com/wutou/p/18577736
7.4 连接黑屏
7.4.1 编辑文件
sudo vim /etc/xrdp/startwm.sh
7.4.1 添加配置
unset DBUS_SESSION_BUS_ADDRESS
unset XDG_RUNTIME_DIR
7.4.1 重启xrdp服务
sudo systemctl restart xrdp.service
7.5 display 0
可能是你输错了账号或密码
7.6 connection problem,giving up问题
问题的原因是在安装xrdp又依赖xorgxrdp这个包,然后xorgxrdp依赖其他包,所以导致没有安装成功
7.7 登陆后遇到下列提示,直接Cancel即可
Authentication is required to create a color
managed device
彻底解决方法:https://blog.csdn.net/ittongyuan/article/details/129429566
免责声明:本号所涉及内容仅供安全研究与教学使用,如出现其他风险,后果自负。
参考、来源:
https://learn.microsoft.com/zh-cn/azure/virtual-machines/linux/use-remote-desktop?tabs=azure-cli
https://blog.csdn.net/weixin_41469272/article/details/105747164 (18.04 和 16.04 )
https://blog.csdn.net/qq_42875304/article/details/133668742
https://blog.csdn.net/qq_62344659/article/details/140418060
https://blog.csdn.net/weixin_44331765/article/details/104516864 (安装openssh 时,提示:未满足依赖)
https://blog.csdn.net/samtaoys/article/details/91042262 (登录后又退出)
https://wenku.csdn.net/answer/67w2waprwr (xorg会话管理器)
https://cloud.tencent.com/developer/article/2355160 (黑屏、增加dock、桌面、优化)
https://zhuanlan.zhihu.com/p/127265014 (切换HWE内核到GE内核、giving up问题)
https://blog.csdn.net/sinat_15213441/article/details/125459414(开启剪贴板和视频捕获设备(获得更高分辨率))
https://blog.csdn.net/zkp_987/article/details/103101655 (xrdp又依赖xorgxrdp这个包)