NPS内网穿透
官网文档(需要魔法访问):https://ehang-io.github.io/nps
安装包下载地址:https://github.com/ehang-io/nps/releases
我正好有一台Windows版本的服务器,有公网IP;家里有一台群晖,然后用docker弄了一个宝塔面板,用Windows当服务端,宝塔当客户端,进行穿透
解压:tar -zxvf linux_amd64_client.tar.gz
赋予权限:sudo chmod +x npc
启动命令:./npc -server=xxxxx -vkey=xxxx
在后台下运行:nohup ./npc -server=xxx -vkey=xxx > npc.log 2>&1 &
如果需要更换命令内容需要先卸载./npc uninstall,再重新注册
服务端
先下载服务端,我这里下载windows_amd64_server.tar.gz(根据服务器的版本下载对应的服务端)
下载后解压,修改目录下的conf\nps.conf 文件,这是配置文件
web_host=nps.baidu.com(自己的域名,解析到服务器的公网IP)
web_username=admin(用户名)
web_password=123(密码)
web_port = 8080
(管理后台的端口,打开后台就用 IP:8080或nps.baidu.com:8080)
记得在服务器里设置开放端口
服务端配置文件,自行修改
/etc/nps/conf/nps.conf
| 名称 | 含义 |
| web_port | web管理端口 |
| web_password | web界面管理密码 |
| web_username | web界面管理账号 |
| web_base_url | web管理主路径,用于将web管理置于代理子路径后面 |
| bridge_port | 服务端客户端通信端口 |
| https_proxy_port | 域名代理https代理监听端口 |
| http_proxy_port | 域名代理http代理监听端口 |
| auth_key | web api密钥 |
| bridge_type | 客户端与服务端连接方式kcp或tcp |
| public_vkey | 客户端以配置文件模式启动时的密钥,设置为空表示关闭客户端配置文件连接模式 |
| ip_limit | 是否限制ip访问,true或false或忽略 |
| flow_store_interval | 服务端流量数据持久化间隔,单位分钟,忽略表示不持久化 |
| log_level | 日志输出级别 |
| auth_crypt_key | 获取服务端authKey时的aes加密密钥,16位 |
| p2p_ip | 服务端Ip,使用p2p模式必填 |
| p2p_port | p2p模式开启的udp端口 |
| pprof_ip | debug pprof 服务端ip |
| pprof_port | debug pprof 端口 |
| disconnect_timeout | 客户端连接超时,单位 5s,默认值 60,即 300s = 5mins |
Windows服务端
把整个修改好的文件放到服务器上
对于windows,管理员身份运行cmd,进入安装目录运行
(我是吧cmd.exe文件复制到了服务端的目录里,像下面这样,打开cmd就是安装目录了)
操作命令
对于linux|darwin 用sudo nps start
对于windows,管理员身份运行cmd,进入程序目录 nps.exe start
| 启动 | 停止 | 重启 | 配置文件重载 | 卸载服务 | 安装服务 |
| nps.exe start | stop | restart | reload | uninstall | install |
我是Windows,用下面的命令
执行安装命令 nps.exe install
启动 nps.exe start
安装后windows配置文件位于 C:\Program Files\nps,linux和darwin位于/etc/nps
访问服务端ip:web服务端口(默认为8080)
使用用户名和密码登陆(默认admin/123,正式使用一定要更改)
客户端
找到对应系统的客户端,下载
然后解压并上传到宝塔文件里
这里说两个Linux 命令
切换目录命令:cd
查看目录下文件(列出文件夹内的目录):ls
cd /www(进入www目录)
cd \wwwroot/nps(进入到wwwroot下面的nps目录)
我先在宝塔终端的本地服务器测试一下,成功进入到nps目录
在nps管理后台复制这个客户端命令
./npc.exe -server=nps.baidu.com:8024 -vkey=123456 -type=tcp
因为服务器是Windows系统搭建的所以这个命令是Windows版本的,我们把前面./npc.exe 改成./npc,这是linux系统就可以执行了
./npc -server=nps.baidu.com:8024 -vkey=123456 -type=tcp
出现这个就是成功了
cd /www
cd \wwwroot/nps
./npc -server=nps.baidu.com:8024 -vkey=123456 -type=tcp
我们把刚才运行的命令放到宝塔计划任务里
添加任务然后点击执行,就好了,到此NPS内网穿透搭建结束。
下载地址
免责声明:软件来源于网络,仅供学习交流。