当前位置:网站首页>A complete detailed tutorial on building intranet penetration ngrok (with pictures and truth)
A complete detailed tutorial on building intranet penetration ngrok (with pictures and truth)
2022-08-03 17:09:00 【InfoQ】
准备工作(In fact, it is also a hard condition):
工具:
安装:
1.git安装
# 安装git
yum -y install zlib-devel openssl-devel perl hg cpio expat-devel gettext-devel curl curl-devel perl-ExtUtils-MakeMaker hg wget gcc gcc-c++
2.安装go
tar -zxvf go1.12.4.linux-amd64.tar.gz /usr/local/
# goThe command needs to do a soft link to/usr/bin
ln -s /usr/local/go/bin/* /usr/bin/
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export PATH=$PATH:$GOROOT/bin
source /etc/profile
go version
go env
3.安装ngrok
cd /usr/local/
//ngrok下载地址
git clone https://github.com/inconshreveable/ngrok.git
export GOPATH=/usr/local/ngrok/
#Write your own domain name here,不要前缀,比如www.abc.club 填写abc.club (域名已备案)
export NGROK_DOMAIN="abc.club"
4.生成ngrokcertificate and overwrite the original certificate
cd /usr/local/ngrok
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
生成服务端
cd /usr/local/ngrok/
GOOS=linux GOARCH=amd64 make release-server
生成客户端
cd /usr/local/ngrok/
GOOS=windows GOARCH=amd64 make release-client
#Linux 平台 32 位系统:GOOS=linux GOARCH=386
#Linux 平台 64 位系统:GOOS=linux GOARCH=amd64
#Windows 平台 32 位系统:GOOS=windows GOARCH=386
#Windows 平台 64 位系统:GOOS=windows GOARCH=amd64
#MAC 平台 32 位系统:GOOS=darwin GOARCH=386
#MAC 平台 64 位系统:GOOS=darwin GOARCH=amd64
#ARM 平台:GOOS=linux GOARCH=arm
服务端的启动
./bin/ngrokd -tlsKey=server.key -tlsCrt=server.crt -domain="abc.club" -httpAddr=":80" -httpsAddr=":443" -tunnelAddr=":4443"
参数说明:
#-domain 访问ngrokIt is the set service address when generating the certificate
#-httpAddr http协议端口 默认为80
#-httpsAddr https协议端口 默认为443
#-tunnelAddr 通道端口 默认4443
Mapping settings for second-level domain names
客户端的启动
server_addr: "abc.club:4443"
trust_host_root_certs: false
ngrok -config=./ngrok.cfg -subdomain=test 8080
#参数说明
ngrok.cfg 刚才新建的文件
-subdomain=test test:The penetrated domain name prefix
8080 :Passthrough domain name mapping port
@echo OFF
color 0a
Title boom Ngrok启动工具
Mode con cols=109 lines=30
:START
set /p clientid= 请输入前缀:
echo.
set /p port= 请输入端口:
echo.
ngrok -config=ngrok.cfg -subdomain %clientid% %port%
PAUSE
goto TUNNEL
图形界面
将ngrok设置为系统服务 并且开机自启
vim /etc/rc.d/init.d/ngrok
#!/bin/bash
#chkconfig: - 99 01
#description:ngrok
case "$1" in
start)
echo "start ngrok service.."
cd /usr/local/ngrok/
setsid ./bin/ngrokd -tlsKey=server.key -tlsCrt=server.crt -domain="abc.club" -httpAddr=":80" -httpsAddr=":443" -tunnelAddr=":4443"
;;
*)
exit 1
;;
esac
###参数说明:
### cd /usr/local/ngrok/:进入ngrok目录
### setsid:Start without this The result closes the window Found that the service stopped Plus it's easy to use now
### setsid ./bin/ngrokd -tlsKey=server.key -tlsCrt=server.crt -domain="abc.club" -httpAddr=":80" -httpsAddr=":443" -tunnelAddr=":4443" :启动ngrok服务端命令
chmod 755 ngrok
chkconfig --add ngrok
chkconfig
service ngrok start
systemctl enable ngrok.service //加入开机启动
systemctl daemon-reload //重新加载配置文件
注意事项
边栏推荐
- 303. Range Sum Query - Immutable
- 浅谈Service Mesh对业务系统的价值
- Halcon 小笔记 C# 图片是否有效
- 中小微企业如何简单便捷、低成本实现数字化?360视觉云有妙招
- C专家编程 第1章 C:穿越时空的迷雾 1.6 它很棒,但它符合标准吗
- 【时间的比较】
- Big guys.Use flink-cdc-sqlserver version 2.2.0 to read sqlserver2008R
- 高效的组织信息共享知识库是一种宝贵的资源
- MobileVIT实战:使用MobileVIT实现图像分类
- sphinx error connection to 127.0.0.1:9312 failed (errno=0, msg=)
猜你喜欢
[Unity Getting Started Plan] Basic Concepts (7) - Input Manager & Input Class
EasyExcel实现动态列解析和存表
数据中台“集存通用治”功能场景说明
组件通信--下拉菜单案例
sphinx coreseek的安装和php下使用
ORACLE CLOUD 在国内有数据中心吗?
论文解读(JKnet)《Representation Learning on Graphs with Jumping Knowledge Networks》
error:Illegal instruction (core dumped),离线下载安装这个other版本numpy
虹科分享 | 如何测试与验证复杂的FPGA设计(3)——硬件测试
SkyWalking概要介绍
随机推荐
TypeScript文件的编译执行
大型企业数据治理的现状和解决方案有哪些参考?_光点科技
SwinIR实战:如何使用SwinIR和预训练模型实现图片的超分
国内首发可视化智能调优平台,小龙带你玩转KeenTune UI
兄弟组件通信context
Big guys.Use flink-cdc-sqlserver version 2.2.0 to read sqlserver2008R
组件通信--下拉菜单案例
软考 --- 软件工程(1)概念、开发模型
C专家编程 第2章 这不是Bug,而是语言特性 2.4 少做之过
C专家编程 第1章 C:穿越时空的迷雾 1.10 “安静的改变”究竟有多少安静
关于 Intel 在 micro-vm 快速启动的探索及实例演示 | 第 36-38 期
数字资产的价值激发:NFT 质押
C专家编程 第1章 C:穿越时空的迷雾 1.6 它很棒,但它符合标准吗
产品-Axure9英文版,轮播图效果
【技术白皮书】第一章:OCR智能文字识别新发展——深度学习的文本信息抽取
C专家编程 第1章 C:穿越时空的迷雾 1.8 ANSI C标准的结构
Huawei, Lenovo, BAIC, etc. were selected as the first batch of training bases for "Enterprise Digital Transformation and Security Capability Improvement" by the Ministry of Industry and Information Te
C专家编程 第3章 分析C语言的声明 3.4 通过图标分析C语言的声明
新特性解读 | MySQL 8.0 在线调整 REDO
fastposter v2.9.0 程序员必备海报生成器