我拥有的:
Windows 8.1 专业版
我想要的是?
模拟一种情况:使用 SSH 连接远程 Linux 系统。
我做什么:
在内置 Hyper-v 下安装 CentOS 6.4 x64。它运行良好。
问题是什么?
如何通过 SSH 通过终端连接到这个 hyper-v CentOS?
答案1
最简单的解决方案是启用桥接连接,你可以找到这里如何做到这一点。完成此操作并启动虚拟机后,它将出现在您的 LAN 上,并且 IP 与您的主机一样。然后您可以通过以下方式 ssh 进入它:
ssh me@IP_of_my_VM
或者无论您在 Windows 上使用什么,我猜是 Putty。
答案2
为可能遇到此问题的人们提供分步说明。
来宾 -> Hyper-V 上的 Linux
主机 -> 您的操作系统 (Windows 8/10/11)
确保客户机(Linux)可以连接网络(使用 Hyper-V 管理器中的默认开关是最简单的)。
在客户机上安装网络工具和打开 ssh 服务器.
一.$ sudo apt-get install net-tools
一.$ sudo apt-get install -y openssh-server
安装 openssh 后,编辑其配置文件
nano /etc/ssh/ssh_config
。vi /etc/ssh/ssh_config
默认情况下,Vi 编辑器通常可用。如果您不熟悉 vi,则可能需要安装 nano。找到并取消注释
#Password Authentication yes
,
因此它看起来像:
Password Authentication yes
。保存文件完成这些更改后重新加载 ssh
a.sudo systemctl disable ssh
b.sudo systemctl enable ssh
如果上述命令不起作用,请尝试这些:
sudo systemctl stop ssh
sudo systemctl start ssh
确保 ssh 正在运行
# systemctl status ssh
现在您可以平安地继续前进。在客户机上,从终端找到其 IP。使用
a。ip address
或
b。c。ip address | grep -i eth0
用户名是您的 Linux 用户名,密码是您的 Linux 登录密码。
在主机上
- 使用 PowerShell 直接连接到客户机,或者使用 Putty 之类的程序。我个人更喜欢 powershell。(确保 Hyper V 正在运行)
例如:主机名:linux用户名,ip:172.154.123.321(见第7条),密码(linuxpassword) 电源外壳
ssh [email protected]
输入 linuxpassword
油灰:
同样,只需在主机名中输入 IP 地址并按回车键,在终端中输入密码,您也应该在那里。
答案3
我要插话,因为给出的答案仅涵盖了您希望虚拟机也暴露在互联网上的用例,而且工作量也比必要的多。如果您想在虚拟内部网络上运行它:
- 将虚拟交换机设置为内部网络并将其应用于虚拟机
- 在 Hyper-V 管理器的网络选项卡下,您应该看到与 VM 关联的 IPv6 地址。
- 如果需要,请调整列宽或将鼠标悬停在最右侧以显示 IPv6 地址(可能以 fe80 开头)。使用您选择的软件连接到此 IP 地址。
对于外部网络,您应该在网络选项卡上看到它正在使用的 IPv4 地址,并且应该能够连接到该地址。
答案4
我不确定这是否是一个普遍的答案,但是在使用其他建议没有取得多大成功之后,我做了以下操作并且成功了:
我的客户机是一台 CentOS 7 机器,正在使用“默认网络”交换机。
在客户端上,我运行了“ifconfig”命令来查看该盒子的 IP:
eth0:标志=4163 mtu 1500 inet 172.28.240.149
然后我把这个 IP 地址输入到 Putty 中,瞧,它连接上了。神奇的网络 FTW。