Ngrok安装
首先,更新apt-get,安装所需组件
sudo apt-get update
sudo apt-get install build-essential golang mercurial git -y
下载ngrok源代码
cd /usr/local/src
git clone https://github.com/muumlover/ngrok.git ngrok
cd ngrok
生成SSL证书
NGROK_DOMAIN="muumlover.com"
openssl genrsa -out rootCA.key 2048
openssl req -new -x509 -nodes -key rootCA.key -days 10000 -subj "/CN=$NGROK_DOMAIN" -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 -days 10000 -out server.crt
拷贝证书复制到指定位置
cp rootCA.pem assets/client/tls/ngrokroot.crt
cp server.crt assets/server/tls/snakeoil.crt
cp server.key assets/server/tls/snakeoil.key
生成服务器端和客户端
sudo make release-server release-client
生成的过程中会发生错误,这个错误是由于websocket作者在更新时添加了加密功能,需配置后才可工作,这里为了使用方便,直接使用移除该功能的版本。
cd /usr/local/src/ngrok/src/github.com/gorilla
rm -r websocket
git clone https://github.com/muumlover/websocket.git websocket
重新生成服务器端和客户端
sudo make release-server release-client
生成多种系统使用的客户端
sudo GOOS=linux GOARCH=arm make release-client
sudo GOOS=darwin GOARCH=amd64 make release-server release-client
sudo GOOS=windows GOARCH=amd64 make release-server release-client
配置服务器
设置ngrokd自启动
cd /etc/systemd/system/
touch ngrok.service
chmod +755 ngrok.service
nano ngrok.service
启动脚本如下
[Unit]
Description=ngrok
After=network.target
[Service]
ExecStart=/usr/local/src/ngrok/bin/ngrokd -tlsKey=/usr/local/src/ngrok/server.key -tlsCrt=/usr/local/src/ngrok/server.crt -domain=muumlover.com -httpAddr=:80 -httpsAddr=:443
[Install]
WantedBy=multi-user.target
启动服务
systemctl start ngrok.service
设置开机启动
systemctl enable ngrok.service
查询服务状态
systemctl status ngrok.service
以上就完成了ngrok的安装与自启动
参考资料:
10分钟教你搭建自己的ngrok服务器
aliyun服务器下实现ngrok服务端开机自启动注意事项
版权属于:wshon
本文链接:https://blog.wshon.com/2018/05/ngrok-setup-New.html
转载时须注明出处及本声明
最新回复