如何安装配置Debian xrdp?

Debian-Like

1 基础知识

1.1 xrdp的简介

– xrdp使用RDP(Microsoft远程桌面协议)为远程计算机提供图形登录
– xrdp支持各种RDP客户端连接(FreeRDP、rdisktop、NeutrinoRDP、Microsoft远程桌面客户端)
– xrdp传输默认使用TLS加密

1.2 xrdp的功能

1.2.1 远程桌面访问

– 支持RDP到Linux桌面(需要xorgxrdp Xorg模块)
– 支持重新连接到现有会话
– 支持会话大小调整(连接时和运行时)
– 支持RDP/VNC代理(通过xrdp连接到另外一个RDP/VNC服务器)

1.2.2 访问远程资源

– 支持双向剪贴板传输文本、位图、文件
– 支持音频重定向
– 支持驱动器从定向

2 最佳实践

2.1 安装软件包

apt install -y xrdp

然后,你可以使用如下命令查询服务的状态,

systemctl status xrdp-sesman.service
systemctl status xrdp.service

如果需要重启,请使用如下命令,

systemctl restart xrdp-sesman.service
systemctl restart xrdp.service

然后,你可以使用如下命令确认服务启动的端口,

netstat -antp | grep xrdp

可见如下端口,

tcp6       0      0 ::1:3350                :::*                    LISTEN      1892/xrdp-sesman
tcp6       0      0 :::3389                 :::*                    LISTEN      1902/xrdp

如果有异常,请使用如下命令查询日志,

tail -f /var/log/xrdp.log
tail -f /var/log/xrdp-sesman.log
tail -f /var/log/messages

2.2 错误处理

2.2.1 证书错误方案

[20220714-15:50:44] [ERROR] Cannot read private key file /etc/xrdp/key.pem: Permission denied

如果日志文件“/var/log/xrdp.log”见到以上错误,可尝试使用如下命令解决,

adduser xrdp ssl-cert

2.2.2 黑屏解决方案

vim /etc/xrdp/startwm.sh

加入如下两行“unset”配置,

#...
unset DBUS_SESSION_BUS_ADDRESS
unset XDG_RUNTIME_DIR

test -x /etc/X11/Xsession && exec /etc/X11/Xsession
exec /bin/sh /etc/X11/Xsession

配置修改后,你需要重启如下服务使配置生效,

systemctl restart xrdp.service

2.2.3 登录错误解决

Oh no! Something has gone wrong.
A problem has occurred and the system can't recover.
Please log out and try again.


以上提示是版本兼容问题,可使用如下命令安装相对较新测试软件包,

echo 'deb https://mirrors.163.com/debian testing main' > /etc/apt/sources.list.d/testing.list
apt update

然后设置低优先级别,

cat <<EOF > /etc/apt/preferences.d/pin
Package: *
Pin: release a=stable
Pin-Priority: 700

Package: *
Pin: release a=testing
Pin-Priority: 650
EOF

然后使用如下命令安装比较新的软件包解决,

apt install -qq -y -t testing xrdp
apt install -qq -y -t testing xorgxrdp

安装完毕后,你需要使用如下命令重启服务,

systemctl restart xrdp-sesman.service
systemctl restart xrdp.service

参阅文档
===============

xrdp的官方链接
————-
http://xrdp.org/

xrdp的guihub
———-
https://github.com/neutrinolabs/xrdp

错误的解决
————-
https://c-nergy.be/blog/?p=13708
https://www.jianshu.com/p/91eeb193966f
https://blog.csdn.net/ziseon/article/details/121653854

没有评论

发表回复

Debian-Like
如何解决Bumblebee不能加载GPU驱动错误?

1 前言 一个问题,一篇文章,一出故事。 笔者有使用Bumblebee实现双显示器屏幕扩展,但是最近 …

Debian-Like
如果解决Linux WPS导出PDF文件的过程中遇到错误?

1 前言 一个问题,一篇文章,一出故事。 笔者使用WPS另存为PDF时遇到“WPS导出PDF文件的过 …

Debian-Like
如何安装部署Debian Slack?

1 前言 一个问题,一篇文章,一出故事。 Slack是一款流行的即时通讯软件,主要用于团队协作和沟通 …