ubuntu

ubuntu虚拟机如何使用SSH远程控制

小樊
45
2025-09-21 01:39:04
栏目: 云计算

Ubuntu虚拟机使用SSH远程控制的完整步骤

一、准备工作

在开始前,请确保:

  1. 已安装并正常运行Ubuntu虚拟机(VMware、VirtualBox等虚拟化软件均可);
  2. 虚拟机网络连接正常(建议设置为桥接模式NAT模式,确保主机与虚拟机在同一网络环境);
  3. 记住虚拟机的登录用户名(如ubuntu)和密码。

二、在Ubuntu虚拟机中安装并启用SSH服务

SSH服务(OpenSSH Server)是远程控制的核心组件,需先在虚拟机中安装并启动。

1. 安装OpenSSH Server

打开Ubuntu虚拟机的终端(快捷键Ctrl+Alt+T),依次执行以下命令:

sudo apt update          # 更新软件包列表
sudo apt install openssh-server  # 安装OpenSSH Server

安装过程中会自动处理依赖关系,无需额外操作。

2. 启动SSH服务并设置开机自启

安装完成后,执行以下命令启动SSH服务:

sudo systemctl start ssh  # 立即启动SSH服务

为确保虚拟机重启后SSH服务自动运行,需设置开机自启:

sudo systemctl enable ssh  # 开启开机自启

3. 检查SSH服务状态

通过以下命令确认SSH服务是否正常运行:

sudo systemctl status ssh

若输出中显示active (running)(如● ssh.service - OpenBSD Secure Shell server),则说明SSH服务已成功启动。

三、获取Ubuntu虚拟机的IP地址

要从主机或其他设备连接虚拟机,需获取其IP地址。在虚拟机终端中执行:

ip addr  # 或使用`ip a`(更简洁的输出)

在输出结果中,找到inet字段(通常对应eth0ens33网卡),后面的数值即为IP地址(如inet 192.168.1.100/24,其中192.168.1.100就是需要的IP)。

四、从主机连接Ubuntu虚拟机

根据主机操作系统不同,连接方式有所差异:

1. Linux/macOS主机(使用系统自带终端)

在主机终端中执行以下命令:

ssh 用户名@虚拟机IP地址

例如,若虚拟机IP为192.168.1.100,用户名为ubuntu,则命令为:

ssh ubuntu@192.168.1.100

2. Windows主机(使用PuTTY/MobaXterm)

五、优化SSH连接安全性(可选但推荐)

为防止未经授权的访问,建议对SSH配置进行以下优化:

1. 禁用Root用户登录

编辑SSH配置文件:

sudo nano /etc/ssh/sshd_config

找到#PermitRootLogin prohibit-password行,取消注释并将值改为no

PermitRootLogin no

保存并退出(Ctrl+OEnterCtrl+X),然后重启SSH服务:

sudo systemctl restart ssh

2. 使用密钥认证(替代密码登录)

3. 修改默认SSH端口

编辑/etc/ssh/sshd_config,找到#Port 22行,取消注释并修改为其他端口(如2222):

Port 2222

保存后重启SSH服务:

sudo systemctl restart ssh

注意:修改端口后,连接时需指定新端口(如ssh -p 2222 用户名@虚拟机IP地址)。

六、常见问题及解决方法

1. 连接失败,提示“Connection refused”

2. 忘记虚拟机IP地址

在虚拟机终端中执行:

ip addr  # 或`hostname -I`(快速获取IP)

3. 虚拟机重启后无法连接

检查SSH服务是否设置开机自启:

sudo systemctl is-enabled ssh

若显示disabled,执行:

sudo systemctl enable ssh

通过以上步骤,即可实现Ubuntu虚拟机的SSH远程控制,满足日常运维、代码编辑等需求。

0
看了该问题的人还看了