无公网服务器(ip)做内网穿透
一、使用场景介绍:将内网的服务器集群管理平台穿透到外网进行操作,一般会使用frp进行框架;由于frp的网络由公网代理的服务器带宽决定,所以本文采用DDNSTO无公网服务器进行穿透(免费试用效果好也可以选择付费)。
二、穿透原理简介:ip为6的目标机-->ip为11的内网代理-->ddsnto平台外网代理--->外网访问
三、步骤详解:
1、去ddsnto申请一个账号,官网链接
4.创建nginx及ddsnto的docker-compose配置(vi dev.yml)
version: 3 services: nginx: image: nginx:1.19.1-alpine container_name: nginx-alpine restart: always privileged: true environment: - TZ=Asia/Shanghai ports: - 8080:80 - 80:80 - 443:443 volumes: - /etc/localtime:/etc/localtime:ro - ./nginx/conf:/etc/nginx # 配置映射 冒号前边的是宿主机地址,后边是容器地址 - ./nginx/log:/var/log/nginx # 日志映射 - ./nginx/dist:/opt/dist:ro # 访问的资源映射 如主页、404/500等错误页 networks: - umf03 ddnsto: image: linkease/ddnsto restart: always environment: - TOKEN=****33d2-****-****-****-9fd30e3a**** # 第1步从平台获取的token - DEVICE_IDX=3 # 需要被穿透的主机序号随便写我这里是第三台 - PUID=0 # root 所在的uid 可以根据实际用户给 - PGID=0 # root 所在的Gid 可以根据实际用户给 volumes: - /etc/localtime:/etc/localtime:ro networks: - umf03 networks: umf03: driver: bridge
6、运行nginx及ddsnto:进入dev.yml所在的文件加下执行 docker-compose -f dev.yml up -d
7、登录ddsnto将内网https添加到映射里边
8、点击外网域名查看效果
四:备注:mkcer生成ssl证书
1、安装工具nss-tools
[root@anonymous mkcert-1.4.1]# yum install nss-tools 2、下载 mkcert-1.4.1
[root@anonymous mkcert-1.4.1]# wget -O mkcert https://github.com/FiloSottile/mkcert/releases/download/v1.4.1/mkcert-v1.4.1-linux-amd64 3、给执行权限,并移动到命令集里
[root@anonymous mkcert-1.4.1]# chmod +x mkcert [root@anonymous mkcert-1.4.1]# mv mkcert /usr/local/bin 4、生成本地证书拷贝到ssl目录下
[root@anonymous mkcert-1.4.1]# mkcert umf-13.com 127.0.0.1 localhost