栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

如何在windows上ssh连接虚拟机Ubuntu进行开发

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何在windows上ssh连接虚拟机Ubuntu进行开发

文章目录
    • 一、配置虚拟机网络
      • 1、配置虚拟机网络模式
      • 2、Linux Ubuntu网络配置
      • 3、关闭防火墙
    • 二、Windows SSH连接Ubuntu

目的:本人想在私人电脑上搭建与公司一样的网络环境进行学习工作,此博客记录搭建环境的步骤与当中遇到的问题,方便以后查阅。最终想建立的网络连接如下图所示:

  1. Windows控制台可以通过SSH连接到Linux服务器(这里作者使用虚拟机Ubuntu作为Linux服务器)进行开发工作。
  2. Windows控制台可以通过serial连接到目标单板进行串口通信。
一、配置虚拟机网络

ps:作者这里使用的虚拟机软件是VMWare Workstation,Linux服务器采用的是Ubuntu18.04版本。

1、配置虚拟机网络模式

VMWare有3种网络配置方式,Bridged(桥接模式)、NAT(网络地址转换模式)和Host Only(仅主机模式),这三种模式的区别可以参考以下这篇博客:

VMWare虚拟机网络配置

按照我们的需求,我们需要将虚拟机网络配置为Bridged(桥接模式)。桥接模式相当于虚拟机和主机在同一个真实网段,VMWare充当一个集线器功能(一根网线连到主机相连的路由器上),所以如果电脑换了内网,静态分配的ip要更改。图如下:


“桥接模式”具体的配置方式为:“编辑”->“虚拟网络编辑器”->“更改设置”->“桥接模式”->选择对应的有线网卡->确定即可。

配置后网络适配器为桥接模式,如下:

若不是桥接模式,双击再点进去设置下即可。

2、Linux Ubuntu网络配置

打开虚拟机,启动Linux服务器,ifconfig查看下服务器的网络配置。我们需要将Linux服务器与Windows主机配置在同一网段才能进行网络通信。作者当前Windows主机在192.168.3.0网段,则也需要配置Linux服务器在同一网段中。在桥接模式下,只需将网络配置成dhcp模式就可以将Windows主机与Linux服务器处在同一网段下,具体原理见桥接模式图。

vi /etc/network/interfaces // 打开网络配置文件
# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

auto ens33
iface ens33 inet dhcp
        address 192.168.3.10
        network 192.168.3.0
        netmask 255.255.255.0
        broadcast 192.168.3.255
        gateway 192.168.3.1

这里直接采用dhcp的方式自动分配一个IP,在终端上执行reboot,重启服务器让网络配置生效,这里要注意的一点是,ens33这个名字不能替换成eth0或者eth1这几个名字,否则会加载配置不成功,作者也没有深入研究为什么,能用就行。

重启后在终端执行ifconfig,看到如下配置信息:

@ubuntu:~$ ifconfig
ens33: flags=4163  mtu 1500
        inet 192.168.3.11  netmask 255.255.255.0  broadcast 192.168.3.255
        inet6 fe80::20c:29ff:fe54:a061  prefixlen 64  scopeid 0x20
        ether 00:0c:29:54:a0:61  txqueuelen 1000  (Ethernet)
        RX packets 587  bytes 312030 (312.0 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 815  bytes 110633 (110.6 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 338  bytes 27938 (27.9 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 338  bytes 27938 (27.9 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

可见,Linux服务器网络配置已经生效,Windows主机与Linux服务器端已处在同一个网段中。

尝试能否在Linux服务器中ping通外网:

@ubuntu:~$ ping www.baidu.com
PING www.a.shifen.com (14.215.177.38) 56(84) bytes of data.
64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=1 ttl=56 time=7.88 ms
64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=2 ttl=56 time=21.2 ms
64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=3 ttl=56 time=8.69 ms
64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=4 ttl=56 time=7.83 ms

尝试能否在Linux服务器中ping通Windows主机:

@ubuntu:~$ ping 192.168.3.9
PING 192.168.3.9 (192.168.3.9) 56(84) bytes of data.
64 bytes from 192.168.3.9: icmp_seq=1 ttl=128 time=0.375 ms
64 bytes from 192.168.3.9: icmp_seq=2 ttl=128 time=0.227 ms
64 bytes from 192.168.3.9: icmp_seq=3 ttl=128 time=0.192 ms

若试验现象与上面差不多,代表Linux服务器网络已能ping通外网与Windows主机。

/etc/network/interfaces的内容含义可以参考以下博客:

linux interfaces配置文件详解

3、关闭防火墙

作者在试验时能ping通外网,却ping不通Windows主机,查阅了相关资料发现是Windows主机的网络防火墙没有关闭导致的。主要参考以下博客:

桥接模式下vmware虚拟机和宿主机ping不通问题排查

虚拟机的防火墙状态查看:systemctl status firewalld
虚拟机的防火墙关闭:systemctl stop firewalld
关闭虚拟机的防火墙自动启动:systemctl disable firewalld

Windows主机关闭防火墙方式:“控制面板”->“系统和安全”->“Windows Defender防火墙”->“启用或关闭Windows Defender防火墙”->选择关闭即可。

如此再次重复Linux服务器ping Windows主机,便可以ping成功。

二、Windows SSH连接Ubuntu

Linux服务器可以ping通外网和Windows主机之后,在Windows主机打开串口软件,想通过ssh连接Linux服务器,却发现连接不上。

在Linux服务器终端执行“ssh root@localhost”,得到错误提示“ssh: connect to host localhost port 22: Connection refused”。原因是Ubuntu没有默认提供ssh服务,因此首先安装ssh服务:

@ubuntu:~$ sudo apt-get update
@ubuntu:~$ sudo apt-get install openssh-server

如果安装完后该服务没有自动启动,则手工启动:

@ubuntu:~$ sudo /etc/init.d/ssh start

至此。网络中其他终端(Windows主机就)可以使用 ssh 连接 Linux服务器Ubuntu 了。

参考博客:如何使用 SSH 连接 VMWare 虚拟机中的 Ubuntu

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/894251.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号