Windows搭建ngrok服务器、Linux搭建ngrok服务器、支持用户管理

微信公众号、支付宝支付等开发要求有公网(外网)服务器。每次调试时,上传代码到服务器很不方便。ngrok很好的解决了这一问题。网上的文章大多是讲怎么在Linux下搭建ngrok服务器。其实依靠云计算的强大计算能力,可以实现快速编译制作windows操作系统下服务器端程序,也可以实现linux操作系统下的服务器端程序。目前测试支持 Windows XP/ Windows 7 (win7)/Windows Server 2008/Windows Server 2012,各类Windows 32位,64位操作系统。同时支持Linux系列服务器,Ubuntu Linux/Red Hat Linux/CentOS,Linux 32位,Linux 64位,Linux arm系列。访问网址http://www.hongzaosoft.cn/downloadngrok.html 即可制作下载 windows、Linux版本、Mac OS下的ngrok服务端和客户端。

生成好的程序是绿色免安装版,直接拷贝就可以用,连脚本都配置好了。

注意:使用ngrok必须使用安全证书,否则其他人使用端口扫描工具,扫到你的ngrok端口,可以直接连接到你的服务器。ngrok使用证书验证来保障通讯安全,某些二次开发的版本去掉了这一功能,在安全上有很大缺陷。而http://www.hongzaosoft.cn/downloadngrok.html 运用云计算的强大力量,快速为您生成用您的域名定制的证书,充分保障您服务器的安全。ngrok使用RSA非对称加密算法加密数据,数字证书签名,请不要使用去掉证书验证的版本

       生成的ngrok程序可选用户管理功能,在安全证书的基础上,连接时需要验证用户名和密码。针对Http隧道可分配子域名给用户,防止用户越权使用子域名;针对Tcp隧道可指定用户可以使用的端口号,防止用户越权使用端口。此功能对分享给多个好友,或者有偿给其他人使用时非常方便,在服务器端做用户权限验证,把您服务器的带宽充分利用起来。

一、搭建前准备条件:

1.如果是做tcp内网穿透,只需要公网ip,或者域名,域名可以不备案,但必须确保被解析到你的服务器公网ip上。

如果是做http穿透,必须要有域名,并且通常你的服务器提供商会要求域名备过案。

通常我们用自己的域名例hongzaosoft.cn来给ngrok服务端用,如果被占用,也可以准备个二级域名比如ngrok.hongzaosoft.cn来专门给ngrok用,这个域名在后面编译服务器端会用到,配置文件里也必须与这个域名一致,否则连不上;此域名一旦生成,配置文件中不可更改。

2.防火墙准备:请开放以下端口:

4443:ngrok服务端默认用到的端口,此端口可以在配置文件中更换。

80:ngrok服务端http协议用到的端口,此端口可以在配置文件中更换。

还有您指定的remote远程服务器端口,例如将服务器的tcp端口25565转发到本地内网25565端口,则远程服务器必须开放25565端口,本地客户机开放25565端口。

怎么开放防火墙端口,以我的centos为例

#开放 8080 端

iptables -I INPUT 4 -p tcp  -m state --state NEW -m tcp --dport 8080 -j ACCEPT

service iptables save

  • 1
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要搭建 ngrok 服务器,首先需要在本地安装 ngrok,安装完成后在命令行中输入 `ngrok authtoken <YOUR_AUTH_TOKEN>` 来设置认证令牌。 接下来,使用 `ngrok http <port>` 来启动服务,其中 <port> 是您要映射到公网的本地端口号。 例如,如果您的本地服务器运行在 80 端口上,则可以使用 `ngrok http 80` 启动服务。 启动后,将会得到一个公网 URL,可以将这个 URL 分享给其他人访问您的本地服务器。 注意:如果要使用自定义域名,需要购买 ngrok 高级版本。 ### 回答2: 搭建ngrok服务器是一种将内网服务暴露到公网的方法。首先需要在服务器上安装ngrok软件,可以通过官方网站下载对应的二进制文件。得到二进制文件后,解压并将可执行文件复制到系统的可执行路径下。 在服务器上创建一个用于存放ngrok配置文件和证书的目录,例如/opt/ngrok。在该目录下创建一个自定义的域名配置文件,例如ngrok.yml,用于配置需要暴露的服务和域名信息。在该文件中,我们需要配置tunnels部分,指定需要暴露的服务和端口号。 接下来,生成SSL证书用于支持HTTPS协议。运行以下命令: ``` # 生成CA私钥并自签名CA证书 $ openssl genrsa -out rootCA.key 2048 $ openssl req -x509 -new -nodes -key rootCA.key -subj "/CN=ngrok" -days 3650 -out rootCA.pem # 生成服务器私钥和证书签名请求(CSR文件) $ openssl genrsa -out server.key 2048 $ openssl req -new -key server.key -subj "/CN=your-domain.com" -out server.csr # 使用CA私钥和签名请求生成服务器证书 $ openssl x509 -req -in server.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -out server.crt -days 3650 ``` 将生成的证书文件(rootCA.pem和server.crt)放入ngrok服务器目录。 接下来需要配置ngrok客户端,将ngrok服务器的域名、端口和SSL证书配置到ngrok客户端中。在本地机器上下载和配置ngrok客户端,根据服务器上的域名和端口号进行配置。将生成的根证书rootCA.pem放入客户端的.ngrok文件夹里,并运行以下命令启动ngrok客户端: ``` $ ngrok client -config=ngrok.cfg -subdomain=subdomain your-service-host:port ``` 通过以上步骤,即可成功搭建ngrok服务器,实现将内网服务暴露到公网。接下来可以通过ngrok客户端访问公网上的服务,使用域名和端口号即可访问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值