centos虚拟机如何实现远程连接
CentOS虚拟机远程连接实现方法
一、SSH(命令行)远程连接
SSH是CentOS系统默认的远程管理工具,适用于命令行操作,安全性高。以下是具体配置步骤:
1. 安装OpenSSH服务器
在CentOS虚拟机终端中执行以下命令,安装OpenSSH服务器(若已安装可跳过):
sudo yum install openssh-server -y
2. 启动并设置SSH开机自启
安装完成后,启动SSH服务并配置为开机自动启动:
sudo systemctl start sshd # 启动SSH服务
sudo systemctl enable sshd # 设置开机自启
3. 配置SSH服务(可选但推荐)
编辑SSH配置文件/etc/ssh/sshd_config
,调整以下参数以优化连接:
sudo vi /etc/ssh/sshd_config
- 确保以下行未被注释(删除行首
#
):Port 22 # 默认SSH端口(可修改为其他端口,如2222,增强安全性) PermitRootLogin yes # 允许root用户登录(生产环境建议设为no,使用普通用户+sudo) PasswordAuthentication yes # 允许密码认证(若使用密钥认证,可设为no)
- 保存并退出(
:wq
)。
4. 配置防火墙放行SSH
CentOS 7及以上版本默认使用firewalld
防火墙,需允许SSH流量通过:
sudo firewall-cmd --permanent --add-service=ssh # 永久添加SSH服务
sudo firewall-cmd --reload # 重新加载防火墙配置
5. 远程连接虚拟机
在宿主机(如Windows、Mac或另一台Linux机器)上,使用SSH客户端连接:
- 命令行方式(Linux/Mac):
ssh username@虚拟机IP地址 -p 22 # 默认端口22可省略-p参数
- 图形化工具(Windows): 使用PuTTY、Xshell等工具,输入虚拟机IP地址和端口(如22),点击“连接”后输入用户名和密码。
6. 验证网络连通性
若连接失败,需检查以下内容:
- 虚拟机IP地址:在虚拟机终端执行
ip addr show
,查看ens33
(或eth0
)接口的IPv4地址。 - 网络模式:VirtualBox/NAT设置中,确保网络适配器为“NAT”或“桥接适配器”(桥接模式下可直接获取局域网IP)。
- 防火墙拦截:临时关闭防火墙测试(
sudo systemctl stop firewalld
),若能连接则需调整防火墙规则。
二、VNC(图形界面)远程连接
VNC可实现CentOS虚拟机的图形桌面远程访问,适用于需要图形界面的场景。以下是TigerVNC的配置步骤:
1. 安装TigerVNC服务器
在虚拟机终端执行以下命令,安装TigerVNC服务器:
sudo yum install tigervnc-server -y
2. 配置VNC用户密码
为当前用户设置VNC访问密码(如用户root
或普通用户):
vncpasswd
输入两次密码(密码长度至少6位),后续连接时需使用此密码。
3. 创建VNC systemd服务
编辑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
)。
4. 启动并设置VNC开机自启
sudo systemctl daemon-reload # 重新加载systemd配置
sudo systemctl enable vncserver@:1 # 设置开机自启
sudo systemctl start vncserver@:1 # 启动VNC服务
5. 配置防火墙放行VNC
VNC默认使用5901
端口(:1
对应5901,:2
对应5902,依此类推),需允许该端口通过防火墙:
sudo firewall-cmd --permanent --add-port=5901/tcp # 永久添加5901端口
sudo firewall-cmd --reload # 重新加载防火墙配置
6. 远程连接虚拟机
在宿主机上使用VNC客户端(如RealVNC、TightVNC)连接:
- 输入虚拟机IP地址和端口(格式:
IP地址:1
,如192.168.1.100:1
)。 - 点击“连接”,输入之前设置的VNC密码即可进入图形桌面。
7. 注意事项
- 若需更换VNC端口(如
:2
对应5902),需修改服务文件中的:%i
为:2
,并调整防火墙端口。 - 生产环境中建议使用SSH隧道加密VNC流量(避免密码明文传输)。
三、XRDP(Windows远程桌面兼容)远程连接
XRDP允许Windows系统使用mstsc
(远程桌面连接)工具访问CentOS图形界面,适用于习惯Windows远程桌面的用户。
1. 安装XRDP及依赖
在虚拟机终端执行以下命令,安装XRDP和相关组件:
sudo yum install epel-release -y # 安装EPEL仓库(可选,但推荐)
sudo yum install xrdp -y # 安装XRDP服务器
sudo yum install xorgxrdp -y # 解决部分图形驱动问题(可选)
2. 启动并设置XRDP开机自启
sudo systemctl start xrdp # 启动XRDP服务
sudo systemctl enable xrdp # 设置开机自启
3. 配置SELinux(可选但推荐)
若SELinux处于Enforcing
模式,需允许XRDP服务:
sudo setenforce 0 # 临时设置为permissive模式(不重启生效)
sudo sed -i 's/SELINUX=enforcing/SELINUX=permissive/g' /etc/selinux/config # 永久修改(需重启生效)
4. 配置防火墙放行XRDP
XRDP默认使用3389
端口(与Windows远程桌面一致),需允许该端口通过防火墙:
sudo firewall-cmd --permanent --add-port=3389/tcp # 永久添加3389端口
sudo firewall-cmd --reload # 重新加载防火墙配置
5. 远程连接虚拟机
在Windows宿主机上,使用mstsc
(远程桌面连接)工具:
- 输入虚拟机IP地址(如
192.168.1.100
)。 - 点击“显示选项”,输入用户名和密码(与CentOS虚拟机登录信息一致)。
- 点击“确定”,即可进入CentOS图形桌面。
6. 注意事项
- 若连接失败,需检查XRDP服务状态(
sudo systemctl status xrdp
)和防火墙规则。 - 部分CentOS版本可能需要修改
/etc/xrdp/xrdp.ini
文件(如调整port
参数),但默认配置通常可用。
以上三种方法覆盖了CentOS虚拟机远程连接的主要场景,可根据需求选择合适的方式。SSH适合命令行操作,VNC适合图形界面,XRDP适合Windows用户快速接入。配置过程中需注意网络安全,避免暴露不必要的端口。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: centos虚拟机如何实现远程连接
本文地址: https://pptw.com/jishu/723599.html