前言
nps是什么?nps是一款轻量级、高性能、功能强大的内网穿透代理服务器。目前支持tcp、udp流量转发,可支持任何tcp、udp上层协议,此外还支持内网http代理、内网socks5代理、p2p等,并带有功能强大的web管理端。
一、准备工作
1.1、一台拥有公网IP的云服务器,我的是阿里云的,系统为CentOS7.9
1.2、一个已完成备案的域名,用来配置内网穿透泛域名访问,如不需要域名访问,可以跳过此步骤。
1.3、本地window10系统,本地 的服务在内网能正常访问
二、NPS服务端
2.1、下载nps服务端和客户端软件
nps安装时需要加载配置文件,所以需要先创建好配置文件。
下载nps服务端配置文件到云服务器上,选择与服务器系统相对应的版本,我这里选择 linux_amd64_server.tar.gz ,
下载地址:https://github.com/ehang-io/nps/releases
2.2、 解压下载好的安装包
cd /usr/local/local_app
把下载好的包上传到该目录
# 解压
tar -zxvf linux_amd64_server.tar.gz -C nps-linux-amd64-server
# 查看目录结构(安装命令:yum install -y tree)
tree nps-linux-amd64-server -L 3 -s -C
2.3、安装NPS服务端
cd /usr/local/local_app/nps-linux-amd64-server
./nps install
特别注意 :
The new configuration file is located in /etc/nps you can edit them
意思是说在安装之后,nps的配置文件都移到在 /etc/nps/conf/ 目录中
nps相关操作命令:
nps start|stop|restart|uninstall|update or nps-update update
查看日志(默认路径):
tail -f /var/log/nps.log
2.4、修改nps服务端配置
nps做内网穿透时,必须要用到80端口,否则内网穿透失效。
vi /etc/nps/conf/nps.conf
重启nps服务端
nps restart
2.5、开放端口
在云服务器的安全组和防火墙中开放端口:
启用端口(centos7.9之后,使用firewal替代了iptable,需要加--zone=public 参数):
firewall-cmd --add-port=8090/tcp --permanent --zone=public
firewall-cmd --add-port=8089/tcp --permanent --zone=public
重启防火墙
firewall-cmd --reload
查看端口是否已添加
firewall-cmd --list-ports --zone=public
至此,nps服务端的工作就此结束。
三、nps客户端
3.1、登录nps的管理后台
云服务器的ip+端口(nps配置的web_port,需要提前在云服务器的安全组和防火墙中开放此端口)
http://云服务器的公网IP:8090/login/index
3.2、创建客户端:
3.3、安装并启动客户端
创建完成之后,在本地window10机器上 启动客户端(预先下载好window版本的nps-client包):
四、NPS相关功能使用
4.1、内网穿透
在nps的管理界面,创建内网穿透映射(TCP隧道),前提是保证本地的服务是正常的。
http://云服务器的公网IP:8090//index/tcp
外网访问内网服务
http://云服务器的公网IP:8082/
4.2、其他功能
未完待续,to be continued......
五、参考文档:
2023-01-18
支持可视化配置的全能内网穿透神器-NPS
https://cloud.tencent.com/developer/article/2210455
2023/3/2 9:02:20
nps和nginx结合使用内网穿透
http://wenku.dagezi888.com/jifendown/show-6284.html
2023-01-10
使用nps搭建内网穿透并配置泛域名解析
https://blog.csdn.net/qiaoyurensheng/article/details/128622695