1. 首页 > 服务器运维

windows使用远程桌面连接连接到CentOS系统

xrdp是一个开源的 RDP 服务器,允许你使用 Windows 自带的远程桌面客户端连接到 Linux 系统。在 CentOS 上安装和配置 xrdp后,windows使用远程桌面连接连接到CentOS桌面。

一、基本概念

XRDP:xrdp提供使用RDP(Microsoft远程桌面协议)的远程计算机的图形登录。xrdp接受来自各种RDP客户端的连接:FreeRDP,rdesktop,NeutrinoRDP和Microsoft远程桌面客户端(适用于Windows,macOS,iOS和Android)。

XRDP官网:

二、安装桌面软件环境 

安装 X Window System。

yum groups install "X Window System"

 安装 MATE Desktop。

yum groups install "MATE Desktop"

 查看已安装是否有GNOME Desktop

yum grouplist

设置默认通过桌面环境启动服务器。

systemctl set-default graphical.target

 执行命令 reboot 重启服务器,您也可以在云服务器 ECS 控制台重启服务器。

通过云服务器 ECS 控制台管理终端连接服务器,测试验证安装情况。

三、安装配置XRDP

切换root用户

sudo su - root

安装epel库

查询是否已经安装epel库:

rpm -qa|grep epel

如果 epel库 没有安装,则安装它:

yum install epel-release

安装xrdp

安装xrdp服务:

yum install xrdp

因为Xrdp最终会自动启用VNC,所以必须安装tigervnc-server,否则xrdp无法使用。

安装vnc

yum install tigervnc-server

为root用户设置VNC密码:

vncpasswd root

修改 xrdp最大连接数(使用默认值,不修改也是可以的) :vim /etc/xrdp/xrdp.ini (默认是32):

max_bpp=32

安装配置XRDP

xrdp最大连接数设置

关闭防火墙

这里,我们要确保两台机器可以ping通,能够相互访问。我这里是在局域网内测试,所以我直接关闭防火墙:

systemctl stop firewalld.service

设置开机不启动防火墙:

systemctl disable firewalld.servie

或者不关闭防火墙,打开3389端口命令:

firewall-cmd --permanent --zone=public --add-port=3389/tcp

firewall-cmd --reload

关闭SElinux

SElinux应该关闭它。查看SElinux状态

sestatus 

如果是临时关闭SElinux:

setenforce 0

不过,我们要永久关闭SElinux:vim /etc/selinux/config

SELINUX=disabled

安装配置XRDP_图2

永久关闭SELINUX

启动XRDP

启动xrdp服务:

systemctl start xrdp

设置xrdp服务 开机自启动 :

systemctl enable xrdp

停止xrdp服务:

systemctl stop xrdp

检查端口 

netstat -antup | grep xrdp

查看xrdp服务运行状态

status xrdp.service

三、远程连接测试

远程连接测试

找到windows自带的远程桌面连接:附件 -> 远程桌面连接(或者打开 运行 ,输入mstsc)

远程连接测试_图2

远程桌面连接

然后就打开了 远程桌面连接 这个软件,然后输入你想连接的 centos电脑的ip地址,选择centos上已有的一个 用户名

远程连接测试_图3

图片.png

然后输入 vnc密码:

远程连接测试_图4

vnc密码

这时,就看到了远程桌面了,这个界面和物理主机上看到的一样:

远程连接测试_图5

远程桌面

不过你会发现,本地主机win7和远程centos之间,不能进行粘贴复制。这是mstsc功能不足导致的,后面使用MobaXterm连接可以解决这个问题。

四、其它连接方式

使用MobaXterm连接

MobaXterm 这个软件,在这里 相当于 win7自带的 远程桌面软件 mstsc 。使用MobaXterm替代mstsc的好处是,可以进行 粘贴复制 操作。也就是win7复制,直接可以粘贴到Centos上,或者Centos复制直接粘贴到win7上。

打开 Session -> RDP ,输入将要远程操控的主机IP,以及可用的用户,端口默认是3389 :

使用MobaXterm连接

打开MobaXterm

点击 OK,接下来输入密码登录即可。在点击全屏显示时,如果你希望 高清全屏显示,MobaXterm连接前,选中一个会话右键,编辑会话(edit session) -> 高级设置(advanced) -> 显示(display) 设置合理的分辨率。一般是 1920x1080 ,根据远程桌面的分辨率而定。

使用MobaXterm连接_图2

高清显示设置

五、注销操作

如果直接关闭MobaXterm,远程桌面还是没有注销的,用户还在 占用Centos资源。所以,当你 不用了的时候,记得 进行注销操作,以减少远程主机的开销:

注销操作

注销

常见问题解决

1. 连接后黑屏或立即断开

创建 xrdp 启动脚本:

sudo vi /etc/xrdp/startwm.sh

内容如下:

#!/bin/sh
# 在文件开头添加
unset DBUS_SESSION_BUS_ADDRESS
unset XDG_RUNTIME_DIR

if [ -r /etc/profile ]; then
    . /etc/profile
fi

if [ -r ~/.bash_profile ]; then
    . ~/.bash_profile
else
    if [ -r ~/.bash_login ]; then
        . ~-.bash_login
    else
        if [ -r ~/.profile ]; then
            . ~/.profile
        fi
    fi
fi

# 启动 GNOME
exec gnome-session

设置执行权限:

sudo chmod +x /etc/xrdp/startwm.sh

2. 音频重定向

安装音频支持:

sudo yum install pulseaudio -y

3. 剪贴板共享

确保安装了相关的插件:

sudo yum install xrdp-pulseaudio-installer -y

4. 多用户支持

xrdp 默认支持多用户同时登录,每个用户会获得独立的会话。

5. 自定义端口

如需更改默认端口,编辑配置文件:

sudo vi /etc/xrdp/xrdp.ini

找到 port=3389 更改为其他端口,如 port=3390,然后重启服务:

sudo systemctl restart xrdp
sudo firewall-cmd --permanent --add-port=3390/tcp
sudo firewall-cmd --reload

管理命令

# 重启 xrdp 服务
sudo systemctl restart xrdp

# 停止 xrdp 服务
sudo systemctl stop xrdp

# 查看服务状态
sudo systemctl status xrdp

# 查看日志
sudo tail -f /var/log/xrdp-sesman.log
sudo tail -f /var/log/xrdp.log

安全建议

使用强密码

考虑更改默认端口

使用防火墙限制访问 IP

或通过 SSH 隧道连接:

# 在 Windows 上使用 PuTTY 建立隧道
# 或将以下命令添加到本地 ~/.ssh/config
Host centos-rdp
    HostName your_centos_ip
    User your_username
    LocalForward 33389 localhost:3389

然后连接 localhost:33389

xrdp 提供了一个相对稳定和兼容的解决方案,让 Windows 用户能够无缝地远程访问 CentOS 桌面环境。

以上就是远程连接——Windows远程连接CentOS远程桌面的详细内容,更多相关资料请阅读主机测评网其它文章!

本文由主机测评网发布,不代表主机测评网立场,转载联系作者并注明出处:https://zhujiwo.jb51.net/yunwei/8199.html

联系我们

在线咨询:点击这里给我发消息

Q Q:2220678578