已启用WSL2并安装Ubuntu 24.04,安装xfce4桌面环境及dbus-x11,配置xrdp使用Xorg后端并设startxfce4为默认会话,获取eth0动态IP且放行防火墙端口。

确认WSL2已启用并安装Ubuntu 24.04
先确保你的Windows 11已激活WSL2功能,且运行的是Ubuntu 24.04 LTS发行版——这是当前微软商店默认提供的最新LTS版本,兼容xrdp与xfce4稳定组合。打开PowerShell(管理员身份),执行wsl --list --verbose,检查VERSION列为2且DISTRO名称为Ubuntu(非Ubuntu-22.04或旧版)。若显示为WSL1或未列出Ubuntu,请先运行wsl --install完成基础部署,再用wsl --unregister Ubuntu清除旧实例,最后从Microsoft Store重新安装Ubuntu 24.04。
安装轻量桌面环境xfce4
WSL2原生不带图形界面,必须手动安装一个资源占用低、启动快的桌面环境。xfce4是目前在WSL2中适配最成熟的选择,比GNOME或KDE更省内存,也避免xrdp会话崩溃。
在Ubuntu终端中依次执行:
sudo apt update && sudo apt install -y xfce4 xfce4-goodies dbus-x11
这一步必须安装dbus-x11——它提供D-Bus会话总线支持,否则xrdp登录后桌面图标不显示、右键菜单失效、声音服务无法启动。跳过此包会导致后续RDP连接成功但桌面“空有框架无功能”。
配置xrdp服务并指定xfce4为默认会话
xrdp是Linux侧的RDP服务器,它本身不自带桌面,需明确告诉它启动哪个GUI环境。直接写入用户级会话配置,避免系统级修改引发权限冲突。
第一步:安装xrdp服务
sudo apt install -y xrdp
第二步:禁止xrdp使用默认的Xvnc(已弃用且与WSL2网络模型不兼容),强制改用Xorg后端
sudo sed -i 's/port=3389/port=3390/g' /etc/xrdp/xrdp.ini
第三步:创建用户专属会话入口
echo "startxfce4" > ~/.xsession
Ubuntu 26.04 LTS(代号“Resolute Raccoon”)是Canonical于2026年4月23日发布的下一代长期支持版操作系统,提供长达10年的技术支持。它搭载Linux 7.0内核与GNOME 50桌面环境,全面转向Wayland协议,并引入Rust重写的核心工具以增强安全性。官方提供适用于AMD64和ARM64架构的桌面及服务器ISO镜像,是追求前沿技术与极致稳定的开发者
第四步:重启服务使配置生效
sudo service xrdp restart
获取WSL2当前IP并放行防火墙端口
WSL2使用虚拟交换机分配动态IP,每次重启可能变化,不能硬编码127.0.0.1或localhost。必须实时获取eth0网卡的IPv4地址,并确保Windows防火墙允许该端口入站。
① 在Ubuntu中运行:ip -4 addr show eth0 | grep -oP '(?
② 复制输出的IP(形如172.28.123.45),这是你将在Windows远程桌面中输入的地址
③ 在Windows PowerShell(管理员)中执行:netsh advfirewall firewall add rule name="WSL2 xrdp" dir=in action=allow protocol=TCP localport=3389
注意:此处端口必须为3389,因为Windows远程桌面客户端只认这个标准端口;虽然xrdp内部监听3390,但WSL2的端口转发机制会自动将Windows侧3389映射到WSL内3390,无需额外配置iptables或wsl.conf。
从Windows启动远程桌面连接
按下Win + R,输入mstsc回车,打开“远程桌面连接”窗口。
在“计算机”栏粘贴上一步查到的WSL2 IP地址(例如172.28.123.45),点击“连接”。
首次连接会弹出证书警告,勾选“不再询问”,点击“是”。
在登录界面输入你在Ubuntu首次启动时设置的用户名和密码(不是Windows账户),不要勾选“记住凭据”——WSL2会话无域控支持,勾选反而导致下次连接失败。

















