You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:无法通过RDP连接Azure RHEL虚拟机

问题排查与解决

你的虚拟机是基于Red Hat Enterprise Linux 7镜像创建的,这类Linux系统默认没有预装RDP服务(RDP原生是Windows远程桌面协议,Linux需通过xrdp这类兼容软件实现支持),这是你无法RDP连接的核心原因——仅添加NSG入站规则无法解决系统层面的服务缺失问题。

以下是具体排查和解决步骤:

1. 确认NSG规则配置正确性

先检查你添加的RDP入站规则是否满足要求:

  • 方向:入站
  • 协议:TCP
  • 目标端口:3389
  • 源地址:按需设置(如你的公网IP或*)
  • 优先级:需低于默认拒绝规则(确保允许规则优先匹配)

若规则未正确配置,可在Terraform的azurerm_network_security_group.allow-ssh资源中添加如下规则,再执行terraform apply更新配置:

security_rule {
    name                       = "RDP"
    priority                   = 1002
    direction                  = "Inbound"
    access                     = "Allow"
    protocol                   = "Tcp"
    source_port_range          = "*"
    destination_port_range     = "3389"
    source_address_prefix      = var.ssh-source-address # 可保持与SSH规则的源地址一致
    destination_address_prefix = "*"
}

2. 在Linux虚拟机上安装并配置RDP服务

通过SSH连接到虚拟机,执行以下操作:

# 安装GNOME桌面环境
sudo yum groupinstall "GNOME Desktop" -y
# 设置系统默认启动图形界面
sudo systemctl set-default graphical.target
# 安装xrdp兼容服务
sudo yum install xrdp -y
# 启动xrdp并设置开机自启
sudo systemctl start xrdp
sudo systemctl enable xrdp
# 开放系统防火墙3389端口(若启用firewalld)
sudo firewall-cmd --add-port=3389/tcp --permanent
sudo firewall-cmd --reload

接着配置xrdp使用GNOME桌面:
编辑/etc/xrdp/xrdp.ini文件,在[xrdp1]段落中添加:

exec=/usr/bin/gnome-session

然后重启xrdp服务:

sudo systemctl restart xrdp

3. 测试RDP连接

使用远程桌面客户端连接虚拟机的公网IP,输入Terraform配置中设置的admin_username和admin_password即可登录。


内容的提问来源于stack exchange,提问作者Jeff

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 01:30:47