nps内网穿透解决国内vps网页80443端口提示未备案

linux admin 6个月前 (11-22) 682次浏览 0个评论

缘起

事情是这样的,小白是有个转发面板的,同时也作为一个探针去监控小白的国内转发机,为了确保面板机和被控机之间的稳定连接,这个转发面板一直是搭建在腾讯云的广州小鸡上的。众所周知,国内小鸡80、443端口是需要备案,但是其他端口有网页目前并没有限制。而转发面板是有网页前端的,所以只能让网页前端去监听非80、443端口,这时,我们通过IP+端口的方式是可以访问面板的。

但是,这时有一个问题,通过这种方式访问面板,走http明文传输,账号密码全在裸奔,于是小白的处理方法是,通过另外一台境外小鸡反代面板机,同时添加证书,开启https,完美解决。

这种操作持续了大半年,上个月小白突然发现反代这种方法也失效了,打开网站时,提示未备案,不予显示,这特么……阿里云、腾讯云的国内小鸡都提示未备案,小白不死心,又试了下用非80、443端口去反代,依旧如此,应该是腾讯云,阿里云修补了这个漏洞了。

oSraHH.png

前几天,简单介绍了nps内网穿透的使用,小白心想,能不能借助内网穿透来解决。

解决思路

国内机安装npc客户端,境外机安装nps服务端,在nps服务端添加域名解析,穿透到国内小鸡面板所在的端口,同时在nps服务端添加证书,开启HTTPS,实现加密访问。

IzI7Uf.png

准备工作

  1. 境内小鸡一台
  2. 境外小鸡一台
  3. 域名一个
  4. 证书和秘钥

小白这里已经在腾讯云各开了一台广州和香港的vps,我们将面板安装在广州小鸡上,同时安装npc客户端,下面为方便称呼统称为npc小鸡,在香港的vps安装nps客户端,用来穿透到广州vps,下文统称为nps小鸡。域名我们已经解析到香港小鸡,并且将证书和秘钥文件上传至香港小鸡。

安装及配置

nps小鸡配置

mkdir nps && cd nps
wget https://github.com/ehang-io/nps/releases/download/v0.26.10/linux_amd64_server.tar.gz #下载nps
tar -zxvf linux_amd64_server.tar.gz #解压
./nps install #安装nps
nano /etc/nps/conf/nps.conf #修改nps配置文件
#有如下几处需要修改:
https_just_proxy=false #默认是true,请改为false
https_default_cert_file=/root/crt.pem #修改为自己证书文件所在绝对目录
https_default_key_file=/root/crt.key #修改为自己秘钥文件所在绝对目录
public_vkey=123 #修改为自己的密码
web_username=admin  #自己按需修改
web_password=123 #自己修改nps的web后台密码。
#当然也可以开始nps服务端面板的HTTPS,注意不用占用443端口
web_open_ssl=true #按需开启或关闭
web_cert_file=/root/crt.pem #修改为自己证书文件所在绝对目录
web_key_file=/root/crt.key #修改为自己秘钥文件所在绝对目录
#保存并退出配置文件
nps restart #重启nps

好,我们现在已经可以在8080端口通过HTTPS访问nps服务端后台了。

IzL1Rf.png

接下来,我们在nps后台中添加一个客户端,记录下ID和唯一验证秘钥。

IzO3kR.png

然后,我们新增一个域名解析,主机填入我们准备其他的解析好的域名,或者嫌麻烦填刚刚一样域名也行,模式选HTTPS,目标填入127.0.0.1,以及我们预计将要使用的端口,请注意,下图目标处是错误的,应该填127.0.0.1,而不是公网IP。

IzXZEd.png

好,到现在为止,nps小机上的操作,我们已经完成,接下来我们来到npc小机。

npc小鸡配置

首先安装npc客户端,并修改配置文件。

mkdir npc && cd npc
wget https://github.com/ehang-io/nps/releases/download/v0.26.10/linux_amd64_client.tar.gz #下载npc客户端,如果国内机拉不动可尝试我们上篇文章里提到的proxychains。
tar -zxvf linux_amd64_client.tar.gz #解压
nano conf/npc.conf #修改npc配置文件
#修改如下这两处
server_addr=129.226.169.160:8024 #改成nps小鸡的IP
vkey=65cta0ylj1mmmfx6 #改成刚刚的唯一验证密钥
#保存并退出
./npc install --config=/root/npc/conf/npc.conf #安装npc
npc start #启动npc

这时,我们去香港小鸡nps管理后台可以看到,客户端已经在线。

oSD70H.png

现在我们来启动一个闲蛋面板,端口选择刚刚香港小鸡nps后台的10010端口。

oSriAs.png

现在我们已经可以通过IP+端口访问面板,但这还不够,我们再试试域名+https能否访问。

oSrZcT.png

完美解决!

小结

  1. 安全起见,最好在国内面板鸡上将面板监听端口设置防火墙,仅让nps小鸡访问。
  2. 本文提到的方法不保证长久有效,说不定良心云套路云更新导致失效。
  3. 本文仅供学习参考,请勿用于非法用途,网络不是法外之地

 

 


VPS小白 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接
喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址