接外包,有相关需求的可以联系我:Telegram | Email

NPS内网穿透

该文章创建(更新)于01/24/2021,请注意文章的时效性!

最近公司的VPN导致我想自己试试怎么搞出来的,有两个移动硬盘想尝试买个树莓派来做个远程可以访问本地的网盘,就拿电脑测试一下。我看大概有以下种工具:frp、nps、蒲公英和花生壳。后两者都是有部分限制的,但不需要自己有服务器。前两个适合有服务器的,我就尝试了一下nps,我这里主要试了网站的转发,具体其它还没弄清楚;

NPS参考教程

准备工作

  • 一台服务器【主要想说要有一个有公网ip的服务器】
  • 本地环境

安装

服务器

我用的Docker,现在习惯于优先使用docker配置;

  • 下载配置文件【注意记住自己的下载文件地址】
git clone https://github.com/ehang-io/nps.git
  • 修改配置文件

注意开启服务器对应的端口,如果使用阿里云等等,也要注意去管理界面开启端口!后面使用时亦是如此;

vim nps.conf

  • 获取docker镜像
docker pull ffdfgdfg/nps
  • 运行 | 注意更改conf为你自己的目录
docker run -d --name nps --net=host -v /home/nps/nps/conf:/conf ffdfgdfg/nps

本地

  • 登录后台 | 用户名和密码在配置文件中

  • 新增客户端

  • 下载软件 | 我这里用的是windows

下载地址:https://github.com/ehang-io/nps/releases

  • 解压后进入cmd

  • 在获取运行代码 | 参考

  • 在上述的cmd框中运行即可连通本地和服务器

使用

网站

我这里应该是非标准化的,使用http没成功,用的tcp代理,然后在服务器上转到tcp端口的;有点类似于:外网访问网站 -> 服务器 -> 本地网站的流程!

  • 域名解析

  • 获取本地的ip

ipconfig

  • 去界面添加一个tcp解析,如下【记住端口号,下一步转发代理要用】

  • 在服务器配置网站,然后配置反向代理,我这里如下【nginx】

    location / {

        proxy_pass http://localhost:20002;#上一步配置的端口号

        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Real-Scheme $scheme;

        # websocket setting
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";

        proxy_read_timeout 120s;
        proxy_next_upstream error;
    }
  • 然后就可以愉快的使用了!
本地代理后的情况

要不赞赏一下?

微信
支付宝
PayPal
Bitcoin

版权声明 | Copyright

除非特别说明,本博客所有作品均采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可。转载请注明转自-
https://www.emperinter.info/2021/01/24/nps/


要不聊聊?

我相信你准备留下的内容是经过思考的!【勾选防爬虫,未勾选无法留言】

*

*



微信公众号

优惠码

阿里云国际版20美元
Vultr10美元
搬瓦工 | Bandwagon应该有折扣吧?
域名 | namesiloemperinter(1美元)