使用nps搭建内网穿透并配置泛域名解析 前言1. 准备工作2. 服务器端搭建nps并配置2.1 配置nps配置文件2.2 docker安装nps2.3 web端配置nps并使用 3. 客户
nps是什么?
nps是一款轻量级、高性能、功能强大的内网穿透代理服务器。目前支持tcp、udp流量转发,可支持任何tcp、udp上层协议,此外还支持内网Http代理、内网socks5代理、p2p等,并带有功能强大的WEB管理端。
nps安装时需要加载配置文件,所以需要先创建好配置文件。
linux_amd64_server.tar.gz
,下载地址:https://github.com/ehang-io/nps/releases解压下载好的安装包,进入 conf
目录下,对 npc.conf
配置文件进行修改。
首先修改 http_proxy_port
和 https_proxy_port
的端口号为20080
和20443
。
配置 bridge_port
为 28024
。
配置修改 web_username
、 web_passWord
和 web_port
,其中 web_port
修改为 28080
, web_username
、 web_password
是web管理端的用户名和密码,自行配置即可; web_port
是web管理端的端口号,通过 IP:端口 即可访问web管理端。
其他配置请参照nps服务端配置文档并根据需要自行配置。参考地址:nps服务端配置文件
注:这里为了防止与其他已安装的环境冲突,将所有的端口号全部调整到20000-30000之间。
http_proxy_port
:http代理端口号
https_proxy_port
:https代理端口号
bridge_port
:桥接端口号
web_username
:web管理端用户名
web_password
:web管理端密码
web_port
:web管理端端口号
conf
上传到服务器的 /etc/nps
目录下,如果没有此目录,可以自行创建。docker pull ffdfgdfg/nps
docker run -d --restart=always --name nps --net=host -v /etc/nps/conf:/conf ffdfgdfg/nps
docker ps
查看是否运行成功。注:如无法访问,请到云服务器管理后台开放对应端口的访问权限。
注:如安装了宝塔面板等,也需要去到面板管理界面开放端口的访问权限。
首先通过浏览器访问 http://服务器IP:28080
,输入配置文件中设置的用户名和密码即可进入web管理端。28080是web_port
配置的端口号。
在右侧客户端界面新增一个客户端,然后在客户端界面点击 “+” ,查看其中的客户端命令。
下载nps客户端npc到本地,选择与服务器系统相对应的版本,我这里选择 windows_amd64_client.tar.gz
,下载地址:https://github.com/ehang-io/nps/releases
解压下载的文件,并放置到指定位置,如桌面上。
CMD管理员进入该解压后的目录中,并运行服务端提供的客户端命令。
windows 运行命令,需要将其中 ./npc
替换为 npc.exe
。
此时本地npc客户端已成功运行,并且web管理端也显示连接状态为在线。
http://127.0.0.1:8080
,则需要在隧道中新增一条 tcp
类型的隧道,如下图所示。此时通过 服务器ip + 服务端端口号即可访问本地的网站,内网穿透到此结束。
注意:
- CMD必须已管理员身份运行,否则无法成功。
- windows下请将其中的
./npc
替换为npc.exe
。- nps服务端和客户端的版本必须一致,否则无法连接。
- nps中s表示服务端,npc中c表示客户端。
配置到上面一步已经能正常使用了,但我手头有已备案的域名,就考虑能否使用域名来代替 服务器ip + 端口的形式来进行内网穿透。
准备工作:
域名:这里使用 example.cn 代替域名,实际使用时请替换为自己的域名。
进入域名DNS解析页面,添加一条泛域名解析,将 *.nps.example.cn
解析到 服务器ip。
到nps的web端管理界面中添加一条域名解析。
此时便可通过 http://1.nps.example.cn:20080
访问到本地内网网站了。这里的 20080
为 http_proxy_port
中配置的端口号。
这时已成功通过 域名+端口 的形式完成内网穿透,下面将通过配置取消掉域名后面的端口,使用 仅域名 形式的访问。
在云服务器的宝塔面板中创建一个网站,域名就填写 *.nps.example.cn
。
网站创建好后,点击设置,选择配置文件,在配置文件最后添加如下内容,将域名代理到域名+端口的形式,从而实现单独的域名访问。
location / { resolver 114.114.114.114; proxy_pass http://$host:20080;}
至此实现域名的内网穿透访问。
本文首发于本人博客:https://blog.gitnote.cn/post/nps
版权信息: CC BY-NC-SA 4.0 (自由转载-非商用-相同方式共享-保持署名)
来源地址:https://blog.csdn.net/qiaoyurensheng/article/details/128622695
--结束END--
本文标题: 使用nps搭建内网穿透并配置泛域名解析
本文链接: https://lsjlt.com/news/426303.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0