温馨提示×

如何在CentOS上使用VirtualBox远程桌面

小樊
45
2025-10-19 13:58:05
栏目: 智能运维

一、前期准备

在开始配置前,请确保:

  1. CentOS虚拟机已安装图形界面(若未安装,可通过sudo yum install epel-release && sudo yum groupinstall "Desktop"命令安装);
  2. 主机与虚拟机处于同一网络环境(如均连接局域网);
  3. 已下载并安装VirtualBox扩展包(扩展包支持RDP协议,需与VirtualBox主程序版本匹配,安装后重启VirtualBox)。

二、配置VirtualBox网络

为了让主机或其他设备能访问虚拟机,需将虚拟机网络设置为桥接模式(推荐)或NAT+端口转发

1. 桥接模式(直接获取局域网IP)

  • 打开VirtualBox,选中CentOS虚拟机,点击设置网络
  • 将“附加到”设置为桥接适配器,选择主机使用的网络接口(如“以太网”);
  • 点击“确定”保存设置。

2. NAT+端口转发(通过主机端口访问)

  • 选中CentOS虚拟机,点击设置网络高级端口转发
  • 添加一条规则:名称(如“RDP”)、协议(TCP)、主机IP(留空,表示所有主机IP)、主机端口(如3389)、子系统IP(留空)、子系统端口(如3389);
  • 点击“确定”保存设置。

三、安装远程桌面服务(选其一)

方案1:使用XRDP(支持Windows远程桌面连接)

XRDP是Linux下兼容RDP协议的服务器,可直接用Windows的“远程桌面连接”工具访问。

  • 安装XRDP
    sudo yum install epel-release -y  # 安装EPEL仓库(提供XRDP软件包)
    sudo yum install xrdp -y          # 安装XRDP服务器
    
  • 启动服务并设置开机自启
    sudo systemctl enable xrdp        # 设置开机自启
    sudo systemctl start xrdp         # 启动XRDP服务
    

方案2:使用VNC(轻量级远程控制)

VNC适合需要低带宽或简单远程控制的场景,需配合VNC客户端使用。

  • 安装TigerVNC服务器
    sudo yum install tigervnc-server -y
    
  • 配置VNC服务
    • 创建VNC密码(用于客户端连接):
      vncpasswd
      
    • 编辑systemd服务文件(替换your_username为你的CentOS用户名):
      sudo vi /etc/systemd/system/vncserver@:1.service
      
      内容如下(注意修改用户名):
      [Unit]
      Description=Remote desktop service (VNC)
      After=syslog.target network.target
      
      [Service]
      Type=forking
      User=your_username
      Group=your_username
      WorkingDirectory=/home/your_username
      ExecStartPre=-/usr/bin/vncserver -kill :%i > /dev/null 2>&1
      ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280x800 :%i
      ExecStop=/usr/bin/vncserver -kill :%i
      
      [Install]
      WantedBy=multi-user.target
      
    • 重新加载systemd配置并启动服务:
      sudo systemctl daemon-reload
      sudo systemctl enable vncserver@:1.service
      sudo systemctl start vncserver@:1.service
      

方案3:使用VirtualBox Remote Display Protocol(VRDP)

VRDP是VirtualBox原生支持的远程桌面协议,无需额外安装软件,但需配合扩展包使用。

  • 启用VRDP
    • 选中CentOS虚拟机,点击设置显示远程桌面
    • 勾选“启用服务器”,设置端口(默认3389,可与主机或其他设备端口冲突时修改);
    • 点击“确定”保存设置。

四、配置防火墙

CentOS默认开启firewalld防火墙,需允许远程桌面服务的端口通过:

1. XRDP(默认端口3389)

sudo firewall-cmd --permanent --add-port=3389/tcp  # 允许RDP流量
sudo firewall-cmd --reload                         # 重新加载防火墙规则

2. VNC(默认端口5901,对应显示号:1)

sudo firewall-cmd --permanent --add-port=5901/tcp  # 允许VNC流量
sudo firewall-cmd --reload                         # 重新加载防火墙规则

3. VRDP(默认端口3389)

若使用VRDP,需允许端口3389(与XRDP一致)。

五、测试远程连接

1. 使用XRDP(Windows主机)

  • 打开Windows自带的“远程桌面连接”工具(mstsc);
  • 输入虚拟机的IP地址(可通过ip addr show命令在CentOS中查看,如192.168.1.100);
  • 点击“显示选项”,切换至“常规” tab,输入CentOS的用户名和密码
  • 点击“连接”,即可看到CentOS桌面。

2. 使用VNC(任意平台)

  • 下载并安装VNC客户端(如RealVNC、TightVNC);
  • 输入虚拟机的IP地址:显示号(如192.168.1.100:1,对应VNC端口5901);
  • 输入VNC密码(步骤3中设置的密码),即可连接。

3. 使用VRDP(Windows主机)

  • 打开“远程桌面连接”工具,输入虚拟机的IP地址端口(如192.168.1.100:3389);
  • 输入CentOS的用户名和密码,点击“连接”即可。

常见问题排查

  1. 无法连接
    • 检查虚拟机网络是否正常(ping 虚拟机IP);
    • 确认远程桌面服务是否启动(systemctl status xrdpsystemctl status vncserver@:1);
    • 验证防火墙是否允许对应端口(firewall-cmd --list-ports)。
  2. XRDP登录失败
    • 确保已安装图形界面(如GNOME、KDE);
    • 尝试修改/etc/xrdp/xrdp.ini中的port参数(如改为3390),并在VirtualBox中同步修改端口转发规则。
  3. VNC连接慢
    • 降低VNC分辨率(如-geometry 1024x768);
    • 减少颜色深度(如-depth 16)。

0