这几天在研究内网穿透,学了好几种,ngrok,frp,最后还是觉得nps好用,操作简单

前提

搭建需要个docker服务器,这个服务器必须在公网上的,或者自己去https://github.com/ehang-io/nps去下载server去安装服务

我今天主要说以docker容器方式安装nps,那么我们开始

步骤

  • 拉取nps 镜像

    docker pull ffdfgdfg/nps

  • 在vps云服务器上做挂载目录
    mkdir -p /mnt/sdc/nps/conf

  • 从https://github.com/ehang-io/nps 拉出来代码,把里面的conf文件夹目录里面的东西拷贝到上面的挂载目录里面

    (可以通过xftp,上传到服务器)

  • 上传到服务器后,修改挂在目录里面的 nps.conf 文件

    appname = nps
    runmode = dev
    
    http_proxy_ip=0.0.0.0
    http_proxy_port=19000
    https_proxy_port=19001
    https_just_proxy=true
    
    https_default_cert_file=conf/server.pem
    https_default_key_file=conf/server.key
    
    bridge_type=tcp
    bridge_port=19002
    bridge_ip=0.0.0.0
    
    public_vkey=123
    
    log_level=7
    
    web_host=a.o.com
    web_username=admin
    web_password=admin
    web_port = 19003
    web_ip=0.0.0.0
    web_base_url=
    web_open_ssl=false
    web_cert_file=conf/server.pem
    web_key_file=conf/server.key
    auth_crypt_key =1234567887654321
    allow_user_login=false
    allow_user_register=false
    allow_user_change_username=false
    allow_flow_limit=false
    allow_rate_limit=false
    allow_tunnel_num_limit=false
    allow_local_proxy=false
    allow_connection_num_limit=false
    allow_multi_ip=false
    system_info_display=false
    http_cache=false
    http_cache_length=100
    http_add_origin_header=false[object Object]
    

    主要修改 http_proxy_port, https_proxy_port,web_port (需要改,因为可能和服务器的其他端口冲突)另外 web_username, web_password 是登陆web端页面的账户密码,也可以改,或者不改也行

  • 启动nps服务,设置对外映射端口

    docker run -d -p 19000-19010:19000-19010 -v /mnt/sdc/nps/conf:/conf –name=nps ffdfgdfg/nps
    

​ 好了,这下你的服务已经起好了

  • 访问你的nps web端页面 ip:19003(web的端口,也可以使用你自己定义的web_port端口)

    页面是这样的

    在这里插入图片描述

  • 然后先创建客户端

在这里插入图片描述

这里只要填个备注,下面选择都选是就行

  • 创建好后,我们就用tcp隧道试一下

    在这里插入图片描述

这里的客户端ip就是我们上面创建的id,主要的是服务端端口,和目标的端口

服务端端口就是我们可以用云服务器ip:这个端口 就可以直接访问内网

注意:这里又个很大的坑

服务器的端口有可能被防火墙了,你要去解开限制

阿里云服务器这种的,需要添加安全组

目标,就是我们要被访问的服务ip:端口

  • 接下来我们开始安装client 客户端

    https://github.com/ehang-io/nps 去下载release

在这里插入图片描述

去选择自己系统对应的客户端

注意这里也是个大坑

我在这里被搞了很久,这个client需要装在你的内网里面,也就是被访问的主机上面,不是云服务里面,不是云服务

  • 在内网主机上下载好后,解压缩,到目录下执行

在这里插入图片描述

​ 点击左上角的+ 号,会展开, 现在的nps 已经把命令简单化了,只要复制 下面 客户端的命令后面的指令,在目录下执行,

  • 好了,现在就可以用你的服务器ip+自定义的端口访问了
  • 最后有一张图分享一下,这是nps的核心
    在这里插入图片描述
Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐