CentOS虚拟机远程连接实现方法
SSH是CentOS系统默认的远程管理工具,适用于命令行操作,安全性高。以下是具体配置步骤:
在CentOS虚拟机终端中执行以下命令,安装OpenSSH服务器(若已安装可跳过):
sudo yum install openssh-server -y
安装完成后,启动SSH服务并配置为开机自动启动:
sudo systemctl start sshd # 启动SSH服务
sudo systemctl enable sshd # 设置开机自启
编辑SSH配置文件/etc/ssh/sshd_config,调整以下参数以优化连接:
sudo vi /etc/ssh/sshd_config
#):Port 22 # 默认SSH端口(可修改为其他端口,如2222,增强安全性)
PermitRootLogin yes # 允许root用户登录(生产环境建议设为no,使用普通用户+sudo)
PasswordAuthentication yes # 允许密码认证(若使用密钥认证,可设为no)
:wq)。CentOS 7及以上版本默认使用firewalld防火墙,需允许SSH流量通过:
sudo firewall-cmd --permanent --add-service=ssh # 永久添加SSH服务
sudo firewall-cmd --reload # 重新加载防火墙配置
在宿主机(如Windows、Mac或另一台Linux机器)上,使用SSH客户端连接:
ssh username@虚拟机IP地址 -p 22 # 默认端口22可省略-p参数
若连接失败,需检查以下内容:
ip addr show,查看ens33(或eth0)接口的IPv4地址。sudo systemctl stop firewalld),若能连接则需调整防火墙规则。VNC可实现CentOS虚拟机的图形桌面远程访问,适用于需要图形界面的场景。以下是TigerVNC的配置步骤:
在虚拟机终端执行以下命令,安装TigerVNC服务器:
sudo yum install tigervnc-server -y
为当前用户设置VNC访问密码(如用户root或普通用户):
vncpasswd
输入两次密码(密码长度至少6位),后续连接时需使用此密码。
编辑VNC服务文件(以用户root为例,若使用普通用户替换root):
sudo vi /etc/systemd/system/vncserver@:1.service
添加以下内容(替换root为实际用户名):
[Unit]
Description=Start TigerVNC server at startup
After=syslog.target network.target
[Service]
Type=forking
User=root
Group=root
WorkingDirectory=/root
PIDFile=/root/.vnc/%H:1.pid
ExecStartPre=-/usr/bin/vncserver -kill :%i > /dev/null 2>&1
ExecStart=/usr/bin/vncserver :%i
ExecStop=/usr/bin/vncserver -kill :%i
[Install]
WantedBy=multi-user.target
保存并退出(:wq)。
sudo systemctl daemon-reload # 重新加载systemd配置
sudo systemctl enable vncserver@:1 # 设置开机自启
sudo systemctl start vncserver@:1 # 启动VNC服务
VNC默认使用5901端口(:1对应5901,:2对应5902,依此类推),需允许该端口通过防火墙:
sudo firewall-cmd --permanent --add-port=5901/tcp # 永久添加5901端口
sudo firewall-cmd --reload # 重新加载防火墙配置
在宿主机上使用VNC客户端(如RealVNC、TightVNC)连接:
IP地址:1,如192.168.1.100:1)。:2对应5902),需修改服务文件中的:%i为:2,并调整防火墙端口。XRDP允许Windows系统使用mstsc(远程桌面连接)工具访问CentOS图形界面,适用于习惯Windows远程桌面的用户。
在虚拟机终端执行以下命令,安装XRDP和相关组件:
sudo yum install epel-release -y # 安装EPEL仓库(可选,但推荐)
sudo yum install xrdp -y # 安装XRDP服务器
sudo yum install xorgxrdp -y # 解决部分图形驱动问题(可选)
sudo systemctl start xrdp # 启动XRDP服务
sudo systemctl enable xrdp # 设置开机自启
若SELinux处于Enforcing模式,需允许XRDP服务:
sudo setenforce 0 # 临时设置为permissive模式(不重启生效)
sudo sed -i 's/SELINUX=enforcing/SELINUX=permissive/g' /etc/selinux/config # 永久修改(需重启生效)
XRDP默认使用3389端口(与Windows远程桌面一致),需允许该端口通过防火墙:
sudo firewall-cmd --permanent --add-port=3389/tcp # 永久添加3389端口
sudo firewall-cmd --reload # 重新加载防火墙配置
在Windows宿主机上,使用mstsc(远程桌面连接)工具:
192.168.1.100)。sudo systemctl status xrdp)和防火墙规则。/etc/xrdp/xrdp.ini文件(如调整port参数),但默认配置通常可用。以上三种方法覆盖了CentOS虚拟机远程连接的主要场景,可根据需求选择合适的方式。SSH适合命令行操作,VNC适合图形界面,XRDP适合Windows用户快速接入。配置过程中需注意网络安全,避免暴露不必要的端口。