Docker安装一个带web界面的内网穿透工具-nps

nps是一款轻量级、高性能、功能强大的内网穿透代理服务器。目前支持tcp、udp流量转发,可支持任何tcp、udp上层协议(访问内网网站、本地支付接口调试、ssh访问、远程桌面,内网dns解析等等……),此外还支持内网http代理、内网socks5代理,可实现在非内网环境下如同使用vpn一样访问内网资源和设备的效果。

目前市面上提供类似服务的有花生壳、TeamView、GoToMyCloud等等,但要使用第三方的公网服务器就必须为第三方付费,并且这些服务都有各种各样的限制,此外,由于数据包会流经第三方,因此对数据安全也是一大隐患。

Docker

https://hub.docker.com/r/oldiy/nps-server

https://hub.docker.com/r/oldiy/npc-client

本项目地址:https://github.com/cnlh/nps

今天我们只讲以Centos7作为服务器,群晖作为客户端为例的一个教程,其他环境请到页面下方加入群聊一起讨论!

由于是内网穿透服务,所以一定会有一个服务器端和一个客户端,好了,我们按步骤开始安装走起!使用Docker安装服务器端。

1.安装docker

  • 执行以下几条命令
  • 安装并启动Docker
1234567891011#获取root权限sudo –i#更新yum update#安装 Dockeryum –y install docker#启动 Docker 后台服务service docker start

2.安装nps服务器

  • 执行以下命令安装nps服务器端
  • 将<本机conf目录>修改为你自己需要保存conf文件的目录
  • 修改并输入以下命令启动nps服务器
1docker run –d —name nps —net=host –v <本机conf目录>:/nps/conf oldiy/nps–server:latest

如果运行成功就可以通过 http://<Centos7 IP>:8080 访问管理服务器,默认密码123。

如果测试无误后,可以添加如下参数,让nps总是可以自动重启(听不懂这条可以无视)

1—restart=always

特殊情况(已安装过其他服务占用了80等端口)

安装完毕后如果服务器端口已经被占用的情况,服务会启动失败,同时<本机conf目录>下面已经有了nps.conf文件,如果本机端口被占用,服务启动失败,此时我们编辑conf文件,修改被占用的默认端口,再重新执行以上命令即可。

输入下面命令查看已经使用的端口

1netstat –ntlp

对照conf文件查找冲突端口,并修改

编辑conf方法如下

12345#cd到conf目录cd <本机conf目录>#vim命令编辑confvim nps.conf

进入后按Ins键进入编辑,编辑结束后按 Esc,之后输入:wq 回车保存退出

重新执行第2步命令即可!

之后就可以通过http://<Centos7 IP>:8080 访问服务器web管理界面,默认密码123。

服务端配置文件

  • nps.conf
名称含义
httpportweb管理端口
passwordweb界面管理密码
bridePort服务端客户端通信端口
pemPathssl certFile绝对路径
keyPathssl keyFile绝对路径
httpsProxyPort域名代理https代理监听端口
httpProxyPort域名代理http代理监听端口
authipweb api免验证IP地址
bridgeType客户端与服务端连接方式kcp或tcp
publicVkey客户端以配置文件模式启动时的密钥,设置为空表示关闭客户端配置文件连接模式
ipLimit是否限制ip访问,true或false或忽略
flowStoreInterval服务端流量数据持久化间隔,单位分钟,忽略表示不持久化
logLevel日志输出级别

3.设置防火墙

如果开了防火墙,我们需要关闭防火墙或者放行8080、8284、80、443端口,如需要其他端口,自己放行!

  • 关闭防火墙执行以下命令
12345#停止firewallsystemctl stop firewalld.service#禁止firewall开机启动systemctl disable firewalld.service

此时服务器端安装完毕!

4.在web界面新建一个客户端(只做http内网网页穿透演示)

之后添加要穿透内网使用的域名。并确认域名已经解析到你的nps服务器IP。

经过测试使用,nps的最大优点就是客户端无需任何设置,无需编写conf文件,直接连接到服务器之后,全部穿透和隧道均可以在服务器web端操作添加!相当方便!并且支持https,支持socks5等等。

(0)
PipitaPipita
上一篇 2020-02-24
下一篇 2020-03-05

相关文章

  • 利用 Caddy 一键反代网站并签发证书SSL

    安装Caddy 运行以下命令: 配置文件 以下所有示例域名为boluo.link,请注意替换为自己的域名 ! 1、服务器IP反向代理 下面是一个,用你服务器的IP来反向代理一个http协议的网站http://www.baidu.com 。 服务器IP也可以反向代理HTTPS协议的网站,但是需要自签SSL证书,现在的浏览器一般都不会认自签的SSL证书,所以不建…

    无关专业 2020-12-01
  • WordPress解决上传文件大小限制问题

    在nginx的配置文件里http下面加入一句:client_max_body_size 64M;例如我的配置文件路径为: /etc/nginx/nginx.confphp.iniupload_max_filesize = 128Mpost_max_size = 128Mmemory_limit 256Mmax_execution_time 300max_in…

    无关专业 2020-01-15
  • Tewa-708G admin password

    0. 假设你光猫的局域网ip是 192.168.1.11. 光猫插入u盘,fat32文件系统。2. 常规用户登陆 http://192.168.1.1:80803. 切换到 管理-设备管理4. 浏览器进入调试模式,在console处,从top切换到MD_Device.html5. 在console内执行`http://192.168.1.1:8080/usb…

    无关专业 2020-12-01
  • PVE导入img为磁盘

    ./img2kvm <img文件> <vmid如101>  <虚拟磁盘名称如vm-101-disk-1> 另一种方法: qemu-img convert -f raw -O qcow2 DS3617xs_DSM6.1_Broadwell.img vm-103-disk-2.qcow2…

    无关专业 2020-07-19
  • Docker+Nextcloud快速部署个人网盘

    实验环境:小伙伴的阿里云服务器,安装的是Centos7的系统,要安装的网盘叫Nextcloud如果是debain,需要先修改一下源。在/etc/apt/sources.list文件下添加一条源 然后执行apt-get update命令更新源。 下面开始安装第一步老规矩,先安装Docker环境.命令如下: 我这里已经安装完成就不重复安装了。启动docker并设…

    无关专业 2020-10-12