Jalena Blog

  • 首页
  • 程序开发
    • Java
    • Spring
    • SpringBoot
    • SpringMvc
    • Python
    • Odoo
    • C#
    • SQL
    • Web
    • Linux
  • 移动设备
    • Android
    • BlackBerry
    • Router
  • 杂七杂八
    • 我的废话
    • 音频
    • 视频
    • 常用软件
  • 关于
A bad workman always blames his tools.
  1. 首页
  2. Development
  3. 正文

搭建ngrok服务器

2018-05-01 239点热度 0人点赞 0条评论

一、前提条件

一台有公网ip的服务器,一个域名(二级也行),能正确解析到服务器

二、准备工作

安装依赖

yum -y install gcc git build-essential golang mercurial

三、搭建Ngrok

下载源码、生成证书、替换证书

git clone https://github.com/tutumcloud/ngrok.git ngrok

# 定义ngrok使用的域名
NGROK_DOMAIN="ngrok.bcsytv.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 device.key 2048
openssl req -new -key device.key -subj "/CN=$NGROK_DOMAIN" -out device.csr
openssl x509 -req -in device.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -out device.crt -days 5000

# 替换证书
cp rootCA.pem assets/client/tls/ngrokroot.crt
cp device.crt assets/server/tls/snakeoil.crt
cp device.key assets/server/tls/snakeoil.key

编译ngrok服务端

# Linux系统GOOS=linux,64位系统GOARCH=amd64,32位系统GOARCH=386
# 当前系统可用go env查看

GOOS=linux GOARCH=amd64
make release-server

启动服务端

./bin/ngrokd -tlsKey="assets/server/tls/snakeoil.key" -tlsCrt="assets/server/tls/snakeoil.crt" -domain="ngrok.bcsytv.com" -httpAddr=":8081" -httpsAddr=":8082" -tunnelAddr=":8083"

注册为服务,建立服务文件 /usr/lib/systemd/system/ngrok.service 将如下代码写入(根据自己的目录进行替换)

[Unit]
Description=Share local port(s) with ngrok
Documentation=https://ngrok.com/docs
After=syslog.target network.target

[Service]
PrivateTmp=true
Type=simple
ExecStart=/root/ngrok/bin/ngrokd -tlsKey=/root/ngrok/assets/server/tls/snakeoil.key -tlsCrt=/root/ngrok/assets/server/tls/snakeoil.crt -domain=ngrok.bcsytv.com -httpAddr=:8081 -httpsAddr=:8082 -tunnelAddr=:8083
ExecStop=/usr/bin/killall ngrok

[Install]
WantedBy=multi-user.target
systemctl daemon-reload
# 设置开机启动
systemctl enable ngrok.service
systemctl start ngrok.service
systemctl stop ngrok.service
systemctl status ngrok.service

编译客户端

# Windows x64
GOOS=windows GOARCH=amd64 make release-client

# mac
GOOS=darwin GOARCH=amd64 make release-client
本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可
标签: Centos ngrok
最后更新:2019-01-22

Jalena

原创内容,转载请注明出处! 部分内容来自网络,请遵守法律适用!

点赞
< 上一篇
下一篇 >

文章评论

取消回复

Jalena

原创内容,转载请注明出处! 部分内容来自网络,请遵守法律适用!

腾讯云
最新 热点 随机
最新 热点 随机
Docker overlay2 清理 & 数据转移 PowerShell 升级 & 增强 Python pip 升级 ESXI & Alpine & Clash Premium 旁路网关 ESXi install Alpine & Clash Proxy 打造自己的Aria2c专属设置 ESXI 升级 Centos 7 离线安装Nginx Centos nmcli 网络管理命令 Linux 密钥登录
PowerShell 升级 & 增强Docker overlay2 清理 & 数据转移
GOOGLE NEXUS S i9023 升级安卓4.0.3手记 Could not autowire. No beans of 'xxxxxxxx' type found. Cyberlink Power2Go 9 Platinum Java JUnit4测试代码记录 Python Django Vue PostgreSQL搭建前后端分离项目 Grass Valley Edius Ver:6.0/6.01 Git 更新合并fork的项目代码 C# 自动导入数据至数据库 Red Giant Magic Bullet Looks v1.4 Centos 更改主机名
标签聚合
其他 wordpress Edius java 解码 生活 odoo Centos
Links
  • ninja911
  • ZWWoOoOo
  • Feng Blog
  • 时空镜像
  • 猿人学网站
  • Emin.ink

COPYRIGHT © 2021 Jalena Blog. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS