当前位置:首页 » 云服务器 » Windows搭建ngrok服务器

Windows搭建ngrok服务器

发布时间: 2025-03-14 11:28:44

1. 云服务器的公网ip可以映射到本地电脑吗

云服务器公网IP映射至本地电脑,通过Ngrok实现内网穿透,任意端口映射,解决端口映射难题。

面对IPv4协议,IPv6商用遥遥无期,内网穿透需求日益凸显。运营商分配的内网IP,限制了端口映射的可能。在寻求替代方案时,Ngrok的自建服务器功能脱颖而出,无需受制于人。

要实现内网穿透,可按照以下步骤操作:

1. 创建ngrok目录,编译程序。

2. 更新包管理器、安装git。

3. 克隆ngrok源代码至本地。

4. 安装Go语言环境。

5. 设置环境变量。

6. 生成根证书和服务器证书。

7. 将证书复制至ngrok目录。

8. 生成客户端与服务端。

9. 在工作目录的bin文件夹内,生成ngrok.exe和ngrokd.exe。

10. 使用注册表编辑器添加注册表项。

11. 启动自定义服务。

12. 关闭系统自带防火墙,设置硬件防火墙端口映射。

13. 将ngrok.exe复制至c:\windows\system32目录,并创建ngrok.cfg配置文件。

14. 编写配置文件,声明域名、通道与端口。

15. 创建执行BATCH文件,设置开机自动运行ngrok -config "ngrok.cfg" start服务名称。

16. 远程桌面测试成功。

通过以上步骤,即可实现在云服务器公网IP与本地电脑之间建立内网穿透连接,实现任意端口映射,解决端口映射难题。

2. 用Ngrok实现内网穿透

Ngrok简介:

Ngrok是用于内网穿透的开源软件,它的1.x版本存在内存泄漏问题,从2.x版本开始转向闭源。其工作原理是:服务器端运行于拥有公网IP的服务器上,监听http、https及tunnel端口,等待客户端连接。客户端在需要穿透的内网机器上运行,连接至服务器后,服务器开始监听客户端指定端口,外网用户连接服务器监听端口,服务器将用户数据转发至内网客户端,实现内网穿透。

准备工具:

1. 源码地址:github.com/inconshrevea...

2. 外网服务器:配备公网IP的服务器,需设置子域名(A、CNAME)。

3. 内网客户端:可以是虚拟机,本文以Ubuntu 20.04为例。

准备编译环境:

1. 安装go:使用命令`sudo apt install golang`。

2. 安装git:通过命令`sudo apt install git`实现。

3. 生成自签名证书:执行`cd ngrok`至项目目录,设置服务器域名`NGROK_DOMAIN="ngrok.abc.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`。

4. 将证书复制到指定文件夹:`cp rootCA.pem ../assets/client/tls/ngrokroot.crt`、`cp device.crt ../assets/server/tls/snakeoil.crt`、`cp device.key ../assets/server/tls/snakeoil.key`。

编译服务器和客户端:

1. 服务器编译:在linux系统中,使用命令`GOOS=linux GOARCH=386 make release-server`(32位)或`GOOS=linux GOARCH=amd64 make release-server`(64位),针对Mac OS和Windows系统,分别使用相应命令进行编译。

2. 客户端编译:根据系统类型,执行`GOOS=linux GOARCH=386 make release-client`(32位)或`GOOS=linux GOARCH=amd64 make release-client`(64位),同样包括Mac OS和Windows系统。

编译完成后,服务器和客户端程序将被生成在bin文件夹中。

运行服务器:

将`ngrokd`程序复制至服务器指定目录,若端口被占用可更改端口号,并确保开启防火墙并打开端口允许外网访问。具体操作参考相关文章。

开启服务器命令:`./ngrokd -domain="ngrok.abc.com" -httpAddr=":7080" -httpsAddr=":7010" -tunnelAddr=":7000"`。成功运行时会显示相应提示。

运行客户端:

将`ngrok`程序复制至客户端指定目录,创建`ngrok.yml`配置文件,配置如下内容:`./ngrok -config=ngrok.yml -log=ngrok.log start http ssh`。成功时将显示相关信息,即可通过设置的网址访问客户端。

补充:

1. 若服务端80端口被占用,可以使用Nginx进行转发,例如访问`test.ngrok.abc.com`即可转发至`ngrok.abc.com:7080`。

3. 在Win10系统下如何实现内网的穿透

内网穿透有何用处?
宽带为内网IP的用户即内网用户,以下范围内的IP地址属于内网保留地址,即不是公网IP,而是属于内网IP:
10.0.0.0 - 10.255.255.255;
100.64.0.0 - 100.127.255.255;
172.16.0.0 - 172.31.255.255;
192.168.0.0 - 192.168.255.255。
例如某小区用户均被分配的内网IP,通过一个公共的网关访问外网,小区内每家用户的计算机均可连接外网,但是Internet上的其他用户却无法对内网的计算机发送连接请求,自然也就无法访问内网计算机所搭建的网站,也无法为内网计算机提供仅公网IP才能支持的下载、传输服务,例如BT下载、电驴等。
内网穿透即NAT穿透,通过端口映射将一台主机的内网(LAN)IP地址映射成一个公网(WAN)IP地址,让互联网上的用户可以通过此公网IP地址访问特定的内网主机所提供的网站或者服务器。
内网穿透教程:花生壳DDNS端口映射
1、花生壳客户端,没有护照的用户需要先注册花生壳护照。
2、在Windows10系统内安装花生壳,完成后登陆。
3、点击客户端内网映射,则跳转至花生壳管理的内网映射web页面,可以直接在网页中对域名进行添加映射,即使不在服务器现场,也可以远程管理。
下面介绍内网映射添加步骤:
1、点击【内网映射】——【添加映射】。
2、在添加映射页面,填写好“应用名称”,“内网服务器IP”,“内网服务端口”以及选择“外网端口”形式,点击确定即可。
3、添加成功后,会生成一个外网访问地址。
4、在浏览器地址栏输入外网访问地址,即可成功访问内网主机搭建的服务和应用。
5、搞定端口映射之后,内网用户也能同公网用户一样随心所欲使用强大的互联网服务了。除了搭建网站之外,完成内网穿透的用户还可以轻松实现远程桌面的搭建和访问、远程监控摄像头、自己开服玩游戏、搭建各类办公系统等等。

热点内容
scratch少儿编程课程 发布:2025-04-16 17:11:44 浏览:640
荣耀x10从哪里设置密码 发布:2025-04-16 17:11:43 浏览:368
java从入门到精通视频 发布:2025-04-16 17:11:43 浏览:85
php微信接口教程 发布:2025-04-16 17:07:30 浏览:310
android实现阴影 发布:2025-04-16 16:50:08 浏览:793
粉笔直播课缓存 发布:2025-04-16 16:31:21 浏览:345
机顶盒都有什么配置 发布:2025-04-16 16:24:37 浏览:213
编写手游反编译都需要学习什么 发布:2025-04-16 16:19:36 浏览:813
proteus编译文件位置 发布:2025-04-16 16:18:44 浏览:366
土压缩的本质 发布:2025-04-16 16:13:21 浏览:593