前置条件

  1. 虚拟机使用NAT方式共享主机的网络,所以要确保主机打开了 VMware NAT Service 服务。

image.png

  1. Linux 使用 NAT 连接方式:— 编辑—->虚拟网络编辑器—->选择下方更改配置(管理员权限)—->选择NAT模式——>DHCP设置(这时是动态IP,后面有静态IP配置教程)

image.png

  1. 虚拟机设置—网络适配器选择 自定义(VMnet8)

image.png

1. 网络初始化

最小化安装 CentOS7 Minimal 后,会出现连不上网络的情况,需要进行以下配置连接网络:

1.1 配置网卡连接信息

  1. # ifcfg-{} 这个是网卡配置文件名,通过 ip addr 命令查看
  2. vi /etc/sysconfig/network-scripts/ifcfg-ens33
  3. # 确保该值为yes-网卡设备自动启动
  4. ONBOOT=yes

image.png

1.2 重启网络服务

systemctl restart network

2. 工具初始化

# 安装 vim
yum -y install vim

# 安装 net-tools 安装后可以使用 ifconfig 查询IP
yum -y install net-tools

# 安装 wget 下载工具
yum -y install wget

# 查看open-ssh状态,启动后可以通过xshell连接
systemctl status sshd
# sshd自动启动
systemctl enable sshd
# 启动sshd
systemctl start sshd

3. 配置静态IP

3.1 VMware 配置网络,配置子网IP,并打开NAT设置查看网关地址(下一步会用到)

这里用于自定义子网 IP 段,如果不需要可忽略,直接进行 3.3 虚拟机网关配置 *为必选项 参考 尚硅谷 Nginx https://www.bilibili.com/video/BV1yS4y1N76R

image.png

3.2 打开宿主机适配器

配置第一步骤中的子网IP和网关
image.png
image.png
不用配置IP地址,IP地址在虚拟机网关配置文件中配置网络初始化时获取的IP地址

3.3 *配置虚拟机网关

vi /etc/sysconfig/network-scripts/ifcfg-ens33

# 网络初始化获取的动态IP
IPADDR=192.168.6.128
# 子网掩码
NETMASK=255.255.255.0
# 默认网关
GATEWAY=192.168.6.2
# DNS 服务器
DNS1=114.114.114.114

image.png

3.4 *重启网络服务

systemctl restart network

4. 本地连接虚拟机慢

 # 更改ssh配置
vi /etc/ssh/sshd_config
UseDNS no
# 把UseDNS yes,改为UseDNS no

#重启sshd 服务
systemctl restart sshd

5. 内网穿透代理Nginx

dingding github https://github.com/open-dingtalk/pierced.git 将 linux 目录中的两个文件复制到虚拟机对应位置

HTTP 穿透

进入对应所在目录 /usr/local/pierced

# linux/mac
cd /usr/local/pierced
chmod 777 ./ding

# 启动 config=固定参数无需修改 subdomain=随意修改 80=nginx 开放端口
./ding -config=./ding.cfg -subdomain=zsy 80

注册系统服务并设置开机自启

# 创建服务文件,文件内容在下方代码块
vim /usr/local/pierced/ngrok.service
# 创建软连接
ln -s /usr/local/pierced/ngrok.service /lib/systemd/system/ngrok.service

# 开机自启
systemctl enable ngrok.service

ngrok.service

[Unit]
Description=Ngrok Service
After=network.target

[Service]
Type=simple
ExecStart=/usr/local/pierced/ding -config=/usr/local/pierced/ding.cfg -subdomain=zsy 80
ExecReload=ps -ef | grep ngrok|grep -v grep | awk '{print $2}' |xargs kill -9 && /usr/local/pierced/ding -config=/usr/local/pierced/ding.cfg -subdomain=zsy 80
ExecStop=ps -ef | grep ngrok|grep -v grep | awk '{print $2}' |xargs kill -9
PrivateTmp=true

[Install]
WantedBy=multi-user.target

Type 不要选择 forking 参考服务运行超时自动退出:https://blog.csdn.net/Sardkit/article/details/79911925