功能强大的内网穿透服务

官网介绍

Nps是一款轻量级、高性能、功能强大的内网穿透代理服务器。几乎支持所有协议,支持内网http代理、内网socks5代理、p2p等,简洁但功能强大的WEB管理界面,支持服务端、客户端同时控制,扩展功能强大,全平台兼容,一键注册为服务。

安装服务端

这里只用centos 64位作演示 首页去官方找到并复制最新的下载链接

创建并进入指定目录

cd /path
mkdir nps
cd /path/nps

将复制的对应的服务端下载并解压到当前目录

wget https://github.com/ehang-io/nps/releases/download/v0.26.7/linux_amd64_server.tar.gz && tar zxvf linux_amd64_server.tar.gz

执行安装命令

sudo ./nps install

启动

sudo nps start

配置文件参数如下(安装后的配置文件在/etc/nps/conf/nps.conf): 根据实际情况修改

#web管理端口
httpport
#web界面管理密码
password
#服务端客户端通信端口
bridePort
#ssl certFile绝对路径
pemPath
#ssl keyFile绝对路径
keyPath
#域名代理https代理监听端口
httpsProxyPort
#域名代理http代理监听端口
httpProxyPort
#web api免验证IP地址
authip
#客户端与服务端连接方式kcp或tcp
bridgeType

修改完配置文件后,重启服务

sudo ./nps restart

服务端常用命令:

服务端开始/停止/重启/配置文件重载/卸载服务/安装服务

sudo nps start/stop/restart/reload/uninstall/install

服务端更新

sudo nps-update update (请更新前停止服务)

默认的web端口是8080,账号是admin/123 提前放开防火墙和云服务的安全策略

firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --reload

另外对于服务用到的bridePort,httpsProxyPort,httpProxyPort也最好提前放开,不然客户端是无法请求到服务端的。
客户端使用

首先看看官方文档,了解基本操作和指令。
1、Linux系统

创建并进入指定目录

cd /path
mkdir npc
cd /path/npc

将复制的对应的客户端下载并解压到当前目录

wget https://github.com/ehang-io/nps/releases/download/v0.26.7/linux_amd64_client.tar.gz && tar zxvf linux_amd64_client.tar.gz

为了客户端的服务能正确的断网重连,这里使用配置文件的方式启动

配置/conf/npc.conf的内容:(具体的含义和修改请根据官方文档配置)

[common]
server_addr=这里填写服务端的服务端口,比如tcp端口
conn_type=tcp
vkey=这里填写服务端配置vkey
auto_reconnection=true
max_conn=1000
flow_limit=1000
rate_limit=1000

crypt=true

compress=true

然后启动注册服务并启动客户端:

sudo ./npc install -config=/path/npc/conf/npc.conf
sudo ./npc start

但是官网这种安装方式只能安装一个npc的客户端,如果需要同时连接多个服务端同时穿透,这种方式就不合适了。 我选择使用Supervisor来配置多个npc客户端同时运行

在/etc/supervisord.d中配置npc-1.ini

[program:npc-1]
directory = /path
command = /path/npc -config=/path/npc/conf/npc.conf -debug=false
autostart = true
startsecs = 5
autorestart = true
startretries = 3
user = root
redirect_stderr = true
stdout_logfile_maxbytes = 20MB
stdout_logfile_backups = 20
stdout_logfile = /var/log/npc/npc-1.log

完成之后执行

识别配置文件并启动

supervisorctl reread
supervisorctl update

启动

supervisorctl start npc-1

查看状态

supervisorctl status npc-1

具体的Supervisor安装和使用请参考 CentOS 7 配置 Supervisor
2、Windows系统

首先下载win版windows_amd64_client.tar.gz并解压。

建议使用GitBash命令行软件的管理员模式来启动。

如果要使用最简单的模式,可以运行官方指导的以下命令。

但是对于我有多个服务器,想同时连接多个nps服务端的话,可以使用单独注册系统服务的方式:

如果有npc1服务请先删除

sc delete npc1

注册npc服务

sc create npc1 binpath= “D:\Apps\npc\npc.exe -server=xxxx -vkey=xxx -type=tcp” start= auto displayname= “npc1”

iShot2020052415.06.39.png

然后鼠标右键底部任务栏,打开任务管理器,找到服务选项,然后底部打开服务,找到npc1,启动服务,并且点开顶部恢复菜单,将第x次失败几个选项都勾选为‘重新启动服务’,即可。 每次需要一个新的npc客户端的时候,按照上述步骤即可。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值