默认广告
默认广告

利用NPS实现内网穿透 测试案例

nps

首先介绍一下nps,nps是一款轻量级、高性能、功能强大的内网穿透代理服务器,有以下的特点:

  • 几乎支持所有协议
  • 支持内网http代理、内网socks5代理、p2p等
  • 简洁但功能强大的WEB管理界面
  • 支持服务端、客户端同时控制
  • 扩展功能强大
  • 全平台兼容,一键注册为服务

也就是说,我们可以使用nps映射本地的网站服务,也可以映射3389端口作为远程桌面使用。

利用NPS实现内网穿透 测试案例-1

内网穿透

这个词大家可以搜索一下,有很多很多的解释,如果我们想把本地的服务映射到公网让别人可以访问,如果我们没有公网IP,那么就只能使用内网穿透的方式来映射,当然,速度取决于公网服务器的带宽。

准备

  • nps安装包
  • 一台公网服务器(带宽越大越好)
  • 本地电脑
  • 善于思考的大脑

NPS安装与远程桌面配置

这里是官方文档:ehang-io.github.io/nps/#

nps官方提供了三种方式安装,安装包安装,编译安装已经docker安装,这里我们选择安装包安装。

服务器端安装与配置

打开release页面,我们发现这里有好多好多的安装包,那么我们选择哪个下载呢?

利用NPS实现内网穿透 测试案例-1

这就需要查看一下我们服务器的架构了,根据架构来选择需要下载的安装包

在终端输入命令uname -a

[root@xxx nps]# uname -a
#  xxx 3.10.0-514.26.2.el7.x86_64 #1 SMP Tue Jul 4 15:04:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
利用NPS实现内网穿透 测试案例-1

显示x86_64意思就是这是64位的架构,我们选择amd_64_server,复制下载链接。

然后使用wget命令下载

wget https://github.com/ehang-io/nps/releases/download/v0.26.9/linux_amd64_server.tar.gz
利用NPS实现内网穿透 测试案例-1

下载完成之后,解压

tar zxvf linux_amd64_server.tar.gz

目录结构如下

利用NPS实现内网穿透 测试案例-1

首先安装nps

sudo ./nps install

打开conf目录,编辑nps.conf,host填写服务器IP,password自己设置管理员密码

利用NPS实现内网穿透 测试案例-1

这时,我们启动nps,这里直接使用nps命令启动,我们可以看到所有的日志信息。

nps

由于我开启了nginx服务,占用了443端口,所以启动失败如下:

# nps 
2020/12/16 17:33:39.678 [I] [

nps.go

:202]  the version of server is 0.26.9 ,allow client core version to be 0.26.0
2020/12/16 17:33:40.076 [I] [connection.go:36]  server start, the bridge type is tcp, the bridge port is 8024
2020/12/16 17:33:40.084 [I] [server.go:200]  tunnel task  start mode:httpHostServer port 0
2020/12/16 17:33:40.084 [I] [

connection.go

:71]  web management start, access port is 8080
2020/12/16 17:33:40.090 [I] [connection.go:62]  start https listener, port is 443
2020/12/16 17:33:40.090 [E] [http.go:82]  listen tcp 0.0.0.0:443: bind: address already in use

于是,我在配置文件注释了http代理,结果依旧启动失败,显示端口占用。

利用NPS实现内网穿透 测试案例-1

在我不懈的努力寻找下,我发现修改这里没有用,要修改/etc/nps/conf/nps.conf这个配置文件才行。

利用NPS实现内网穿透 测试案例-1

注释掉那个几行的http代理,然后修改下方web面板的用户名,ip以及密码

利用NPS实现内网穿透 测试案例-1

然后启动,居然没有错误,显示这些东西

利用NPS实现内网穿透 测试案例-1

然后我访问ip:8080,成功进入web页面

利用NPS实现内网穿透 测试案例-1

登录之后,欣喜若狂有木有。

利用NPS实现内网穿透 测试案例-1

这时可以使用nps stop退出nps,然后再使用nps start命令重新启动,就可以后台运行了,更多的配置内容请参考官方文档。

远程桌面及客户端配置

点击客户端,然后点击新增客户端

利用NPS实现内网穿透 测试案例-1

允许客户端通过配置文件连接设置为否

利用NPS实现内网穿透 测试案例-1

点击下方保存按钮。然后记住这个id

接下来配置TCP隧道,点击左侧TCP隧道,选择新增

利用NPS实现内网穿透 测试案例-1

客户端ID要填写正确,就是我们刚刚配置的ID,服务端端口也就是链接远程服务时ip:10002端口。目标就是本地需要映射的端口,3389是远程桌面端口。

利用NPS实现内网穿透 测试案例-1

这里配置好之后,我们回到客户端页面,点击加号会下手下面的详细信息,我们复制一下客户端命令

./npc -server=ip:8024 -vkey=key -type=tcp
利用NPS实现内网穿透 测试案例-1

接下来需要前往release页面下载windows客户端,根据自己电脑的位数来选择,这里我选择windows_amd64_client.tar.gz

利用NPS实现内网穿透 测试案例-1

下载完成之后解压到d盘nps目录下

使用CMD或者其他命令行工具运行即可,这里注意一点,我们上方复制的客户端命令,在windows下CMD是不需要前面的./,就像下面这样:

npc -server=ip:8024 -vkey=key -type=tcp

如果是使用git bash命令行工具,那么则需要添加./

利用NPS实现内网穿透 测试案例-1

这样就启动成功了,刷新一下web页面,显示在线就OK了

利用NPS实现内网穿透 测试案例-1

打开远程桌面

win10为例,在设置里启用远程桌面

利用NPS实现内网穿透 测试案例-1
利用NPS实现内网穿透 测试案例-1

然后手机端使用RD Client(微软官方远程桌面app),右上角新建远程桌面,PCname 填写映射的服务器ip+端口,账号添加你需要远程控制的电脑用户

利用NPS实现内网穿透 测试案例-1

然后保存,链接体验吧!

给TA打赏
共{{data.count}}人
人已打赏

【龙萱坤诺】声明:

龙萱坤诺所有资源来源于网络及用户分享或为本站原创,仅限用于学习和研究,如有侵权请邮件联系站长!不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站概不负责!

 

龙萱坤诺欢迎您投稿发表文章,更有龙萱坤诺奖励和额外收入!根据投稿内容质量,可获邀入驻本平台,开启您的站长之路!

 

如有链接无法下载、失效或广告,请到圈子反馈!

© 转载请声明:转载自“龙萱坤诺"

软件教程

Excel表格函数公式大全,43个数据分析常用函数解析

2022-9-20 12:27:10

软件教程

小技巧:在 iPhone 11 上拍摄照片制作头像

2021-5-13 23:21:46

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索