本地部署ngrok

安装go语言

  • yum install golang

下载ngrok源码

  • git clone https://github.com/inconshreveable/ngrok.git

安装ngrok

  • 环境配置
    • cd ./ngrok
    • export GOPATH=/path/to/ngrok/ #ngrok路径
    • export NGROK_DOMAIN=”ngrok.yourdomain.com” #你的域名
  • 生成安全证书
    • openssl genrsa -out rootCA.key 2048
    • openssl req -x509 -new -nodes -key rootCA.key -subj “/CN=$NGROK_DOMAIN” -days 5000 -out rootCA.pem
    • openssl genrsa -out server.key 2048
    • openssl req -new -key server.key -subj “/CN=$NGROK_DOMAIN” -out server.csr
    • openssl x509 -req -in server.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -out server.crt -days 5000
    • cp rootCA.pem assets/client/tls/ngrokroot.crt
    • cp server.crt assets/server/tls/snakeoil.crt
    • cp server.key assets/server/tls/snakeoil.key
  • 编译Server
    • GOOS=linux GOARCH=amd64
    • make release-server
  • 编译Client
    • make release-client

编辑ngrok.cfg

server_addr: "ngrok.yourdomain.com:4443"
trust_host_root_certs: false

服务器端运行ngrokd

  • ./ngrokd -tlsKey=”assets/server/tls/snakeoil.key” -tlsCrt=”assets/server/tls/snakeoil.crt” -domain=”ngrok.yourdomain.com” -httpAddr=”:8081” -httpsAddr=”:8082” -tunnelAddr=”:4443”

客户端运行ngrok

  • ./ngrok -config=./ngrok.cfg -subdomain=simple_test 80

其他

  • 确保服务器开放8081,8082,4443端口,也可以换成其他端口
  • 添加域名解析
    • 需要配置DNS 两个A记录 泛解析*和@, 添加域名解析对阿里云服务器上搭建ngrok很重要,一般解析需要十几个小时甚至一两天,以至于一度让我以为配置失败了。

参考

阿里云搭建ngrok服务器
跨平台替代花生壳,打造自己的ngrok服务器
一分钟实现内网穿透(ngrok服务器搭建)

你可能感兴趣的:(Others)