前置条件
- 虚拟机使用NAT方式共享主机的网络,所以要确保主机打开了 VMware NAT Service 服务。
- Linux 使用 NAT 连接方式:— 编辑—->虚拟网络编辑器—->选择下方更改配置(管理员权限)—->选择NAT模式——>DHCP设置(这时是动态IP,后面有静态IP配置教程)
- 虚拟机设置—网络适配器选择 自定义(VMnet8)
1. 网络初始化
最小化安装 CentOS7 Minimal 后,会出现连不上网络的情况,需要进行以下配置连接网络:
1.1 配置网卡连接信息
# ifcfg-{} 这个是网卡配置文件名,通过 ip addr 命令查看
vi /etc/sysconfig/network-scripts/ifcfg-ens33
# 确保该值为yes-网卡设备自动启动
ONBOOT=yes
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
3.2 打开宿主机适配器
配置第一步骤中的子网IP和网关
不用配置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
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