VirtualBox中安装的CentOS开启SSH并设置访问外网
1.全局设置NAT网络
打开VirtualBox->管理->全局设定

网络->添加按钮->添加一个NAT网络(使用默认的就行,不用改动)

2.设置用来本机于VirtualBox的SSH连接的网卡
选中要设置的CentOS->设置->网络->网卡1->选中连接方式为:网络地址转换(NAT)

3.设置CentOS访问外网的网卡
网卡2->选中连接方式为:仅主机(Host-Only)网络
界面名称选择VirtualBox的虚拟网卡适配器(只有一个,选默认的就行)


4.查看CentOS的IP地址
登录CentOS,使用ip addr命令查看本机的ip地址
可以看到三个IP地址,第二个10.0.2.15为CentOS的内网IP地址,第三个192.168.56.101为和本机和本机及外网通信的VirtualBox虚拟网卡的IP地址

可以在本机看到VirtualBox的虚拟网卡的IP地址为192.168.56.1,CentOS中的第三个网卡就是以该IP为网关
注意,如果是CentOS 8 可能默认不会开启enp0s3网卡(NAT),和enp0s8网卡(host-only,),所有不会显示这两个网卡的IP

进入目录cd /etc/sysconfig/network-scripts/
里面有个文件ifcfg-enp0s3,修改参数ONBOOT=yes,然后点击esc退出按钮 :wq回车保存

然后重启,再查看IP,发现enp0s3网卡有IP了。

用cmd控制台ping 下192.168.56.1,发现可以ping通,

但是本机电脑还是无法访问虚拟机网络,还需要打开enp0s8的网卡。
在enp0s3网卡的目录下复制文件,cp ifcfg-enp0s3 ifcfg-enp0s8

使用vi修改ifcfg-enp0s8

修改BOOTPROTO为static。
修改NAME为enp0s8
修改UUID(可以随意改动一个值,只要不和原先的一样)
添加IPADDR,可以自己制定,用于主机连接虚拟机使用
添加NETMASK=255.255.255.0
添加HWADR=(ip addr显示的enp0s8网卡的Mac地址)

修改完后重启,并查看网卡IP地址,设定的固定IP已生效。

如果忘记了enp0s8的网卡MAC地址,可以在先用ip addr查看下截个图,或者直接到VirtualBox,当前虚拟机的设置,网络,网卡2(Host-Only网络)查看MAC地址

参考:
https://www.cnblogs.com/wxw16/p/6256796.html
https://www.jianshu.com/p/044fc0b85521

5.使用Xshelll连接CentOS
打开Xshell,新建一个回话
5.1使用仅主机(Host-Only)网络(网卡2)的IP连接
主机填192.168.56.101,端口填默认的22,

用户身份验证使用Password方法填root和对应的密码

Xshell出现Last login: Wed则表示登录成功。

5.1网络地址转换(NAT)的端口转发(网卡2)连接
网络->网卡1->高级->端口转发->新建一个端口转发规则
名称ssh,主机IP:127.0.0.1(本机的IP),主机端口:2222(设置你要映射到CentOS主机的端口,可以自定义)
子系统IP:10.0.2.15(刚在CentOS上查看到的内网IP地址),子系统端口:22(默认的SSH端口)

使用Xshell连接转发转发端口,主机127.0.0.1,端口2222(刚设置转发的主机端口)


端口转发比直接连接IP速度会稍微慢一些。
6.无法连接外网解决方法
使用ping命令查看是否能连接外网,如出现未知的名称或服务或Name or service not known则表示无法连接外网


解决方法:
使用CD命令定位到文件夹: cd /etc/sysconfig/network-scripts/
使用vi命令编辑ifcfg-enp0s3文件:vi ifcfg-enp0s3

修改ONBOOT=no 为yes

按Esc键退出编辑模式,输入:wq并回车保存并退出该文件

重启网络:service network restart

再ping下域名看是否已经能ping通

软件:VirtualBox 6.0.4、Xshell 5
资料:
virtualbox 没有64位选项需要开启虚拟化
https://jingyan.baidu.com/article/acf728fd58d8aef8e510a3f8.html
.net core 发布到CentOS:
https://www.cnblogs.com/nnhy/p/netcore_centos.html
.net core 使用Nginx反向代理
https://www.cnblogs.com/lizzie-xhu/p/8572616.html
virtualbox中的CentOS设置联网
https://jingyan.baidu.com/article/48a420571e6d75a9242504e0.html
https://www.cnblogs.com/wxw16/p/6256796.html
FTP服务器搭建
https://www.cnblogs.com/zhi-leaf/p/5983550.html
https://www.cnblogs.com/ismallboy/p/6785270.html

VirtualBox中安装的CentOS开启SSH并设置访问外网的更多相关文章
- virtualbox下安装的纯净版centOS7,无法访问外网
virtualbox下安装的纯净版centOS7,网络设置如下: 需要在/etc/sysconfig/network-scripts/下编辑ifcfg-enp0s3,其中,NOBOOT设置成也是,就可 ...
- VMware虚拟机下安装CentOS 6.10并配置访问外网
VMware安装包以及CentOS 6.5安装包 链接:https://pan.baidu.com/s/1wQi5GSgp4klXhtd84aoMSA 提取码:9l5y 链接:https://pan. ...
- VirtualBox中安装CentOS-6.6虚拟机
1. 下载 可以到官网下载,http://mirror.centos.org/centos/ 如果下载速度太慢的话,也可以到163镜像下载: http://mirrors.163.com/centos ...
- VirtualBox中安装CentOS-6.6虚拟机(转载)
1. 下载 可以到官网下载,http://mirror.centos.org/centos/ 如果下载速度太慢的话,也可以到163镜像下载: http://mirrors.163.com/centos ...
- 在VirtualBox中安装了Ubuntu后,Ubuntu的屏幕分辨率非常小,操作非常不便。通过安装VirtualBox提供的“增强功能组件”,-摘自网络
在VirtualBox中安装了Ubuntu后,Ubuntu的屏幕分辨率非常小,操作非常不便.通过安装VirtualBox提供的“增强功能组件”,可以解决这一问题,并且使用非常方便. 一.环境 | En ...
- [ARCH] 1、virtualbox中安装archlinux+i3桌面,并做简单美化
星期六, 28. 七月 2018 02:42上午 - beautifulzzzz 1.安装ArchLinux系统 安装Arch主要看其wiki,比较详细- 中文的我主要参考:一步步教你如何安装 Arc ...
- 在不同的系统中的virtualbox中安装Ubuntu SDK
对非常多的开发人员来说.你们可能使用的不是Ubuntu操作系统.在这样的情况下,开发人员须要在自己的操作系统中(OS X及Windows)安装virtualbox,并在VirtualBox中安装Ubu ...
- VirtualBox中Ubuntu 14.04屏幕分辨率不能设置的问题
VirtualBox中Ubuntu 14.04屏幕分辨率不能设置的问题 在VirtualBOx虚拟机中Ubuntu 14.04设置屏幕分辨率,怎么点都没反应. 方法一:安装与你的Ubuntu-Gu ...
- 在VMWare下为CentOS设置静态IP通过NAT访问外网
一.背景 安装好的CentOS系统默认是通过DHCP自动分配地址来共享主机的IP以达到访问外网的目的,但是因为莫名的原因无法访问外网.只好改为通过静态IP的方式访问外网. 二.操作步骤 2.1 确认开 ...
随机推荐
- char **指针动态分配地址空间
1. 定义char **类型变量,初始化为NULL 2. 分配行指针数组空间 3. 为每行分配空间 4. 释放每行的空间 5. 释放二维指针 void main() { char **pointer= ...
- StructuredStreaming基础操作和窗口操作
一.流式DataFrames/Datasets的结构类型推断与划分 ◆ 默认情况下,基于文件源的结构化流要求必须指定schema,这种限制确保即 使在失败的情况下也会使用一致的模式来进行流查询. ◆ ...
- Magento 2 instantiate object by Factory Objects
magento2的Factory Objects是用来实例化non-injectable classes,目前还不知道什么叫non-injectable classes. 可以用它来实例化Helper ...
- Docker-Docker容器跨主机通信
Docker默认的网络环境下,单台主机上的Docker容器可以通过docker0网桥直接通信,而不同主机上的Docker容器之间只能通过在主机上做端口映射进行通信.这种端口映射方式对很多集群应用来说极 ...
- Deep and Beautiful. The Reward Prediction Error Hypothesis of Dopamine
郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布! Contents: Abstract 1. Introduction 2. Reward-Prediction Error Meets D ...
- 从开源协议到谷歌禁用华为、Docker实体清单事件
平时我们在日常开发生活都在大量和开源软件打着交道,例如安卓.Linux.Github.Docker等,而其中开源协议比如MIT.Apache也是耳熟能详,但是真正对开源协议的了解相信对大部分人来说都 ...
- go微服务系列(四) - http api中引入protobuf
1. protobuf相关依赖安装 2. 改造之前的client 2.1 新建proto文件 2.2 运行protoc命令生成go文件 2.3 然后把原来的map修改成具体的类型就可以了 3. 处理j ...
- Java面试题(Hibernate篇)
Hibernate 113.为什么要使用 hibernate? 对JDBC访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码. Hibernate是一个基于JDBC的主流持久化框架,是一个 ...
- Java面试题(反射篇+对象拷贝篇)
反射 57.什么是反射? 反射主要是指程序可以访问.检测和修改它本身状态或行为的一种能力 Java反射: 在Java运行时环境中,对于任意一个类,能否知道这个类有哪些属性和方法?对于任意一个对象,能否 ...
- .NET Core3.1 Dotnetty实战第二章
一.概要 在上一篇文章讲到Dotnetty的基本认识,本文这次会讲解dotnetty非常核心的模块是属于比较硬核的干货了,然后继续往下讲解如何根据自己的需求或者自己的喜好去配置Dotnetty而不是生 ...