Ubuntu虚拟机远程访问实现方法
SSH(Secure Shell)是一种加密的网络协议,用于安全地远程登录Ubuntu虚拟机,适合命令行操作和管理。
在Ubuntu虚拟机终端中执行以下命令,安装OpenSSH服务器(若未安装):
sudo apt update
sudo apt install openssh-server
安装完成后,启动SSH服务并设置为开机自动启动,确保虚拟机重启后仍可远程连接:
sudo systemctl start ssh
sudo systemctl enable ssh
在虚拟机终端中运行以下命令,查看网络接口的IP地址(通常为inet
字段的值,如192.168.1.100
):
ip addr show
# 或使用快捷命令(仅显示IP)
hostname -I
192.168.1.100
),端口默认22
,点击“连接”后输入Ubuntu用户名和密码即可登录。ssh 用户名@虚拟机IP地址
# 示例:ssh ubuntu@192.168.1.100
第一次连接时需确认服务器指纹(输入yes
),随后输入密码登录。/etc/ssh/sshd_config
文件,将Port 22
改为其他端口(如2222
),重启SSH服务:sudo nano /etc/ssh/sshd_config
# 修改Port行
sudo systemctl restart ssh
sshd_config
中设置PasswordAuthentication no
,并配置SSH密钥认证(生成密钥对ssh-keygen -t rsa
,复制公钥ssh-copy-id 用户名@IP
),提升安全性。ufw
防火墙,允许SSH端口:sudo ufw allow ssh # 或 sudo ufw allow 22
sudo ufw enable
VNC(Virtual Network Computing)提供图形化远程桌面,适合需要图形界面的场景(如办公、开发)。
在Ubuntu虚拟机中安装VNC服务器(以x11vnc
为例):
sudo apt update
sudo apt install x11vnc
运行以下命令设置VNC连接密码(用于客户端验证):
x11vnc -storepasswd
按提示输入并确认密码(密码长度最多8位)。
创建systemd服务文件,实现VNC开机自启:
sudo nano /etc/systemd/system/x11vnc.service
粘贴以下内容(将your_username
替换为实际用户名):
[Unit]
Description=Start x11vnc at startup.
After=multi-user.target
[Service]
Type=simple
ExecStart=/usr/bin/x11vnc -display :0 -auth /home/your_username/.Xauthority -forever -loop -noxdamage -repeat -rfbauth /home/your_username/.vnc/passwd -rfbport 5900 -shared
[Install]
WantedBy=multi-user.target
保存后启动服务并设置开机自启:
sudo systemctl enable x11vnc.service
sudo systemctl start x11vnc.service
若启用ufw
防火墙,允许VNC端口(默认5900
,对应显示编号:0
):
sudo ufw allow 5900
sudo ufw reload
虚拟机IP地址:5900
(如192.168.1.100:5900
),点击“连接”后输入VNC密码。vncviewer 虚拟机IP地址:5900
XRDP是基于RDP协议的开源解决方案,支持Windows远程桌面客户端直接连接Ubuntu,无需额外安装客户端。
在Ubuntu虚拟机中执行以下命令,安装XRDP:
sudo apt update
sudo apt install xrdp
启动XRDP服务并设置为开机自动启动:
sudo systemctl enable xrdp
sudo systemctl start xrdp
允许XRDP默认端口(3389
)通过防火墙:
sudo ufw allow 3389
sudo ufw reload
mstsc
),输入虚拟机IP地址,点击“连接”,输入Ubuntu用户名和密码即可登录。TeamViewer是一款跨平台的远程访问工具,无需配置网络或防火墙,适合临时远程协助。
在Ubuntu虚拟机中下载并安装TeamViewer:
wget https://download.teamviewer.com/download/teamviewer_host_linux.deb
sudo dpkg -i teamviewer_host_linux.deb
sudo apt --fix-broken install # 解决依赖问题
运行TeamViewer并设置开机自启:
teamviewer --daemon start
sudo systemctl enable teamviewerd
在TeamViewer界面中查看“您的ID”和“密码”(密码每次重启会变化)。
在另一台设备上安装TeamViewer,输入远程设备的ID,点击“连接”,输入密码即可访问。
/etc/netplan/*.yaml
文件,设置固定IP)。