nps介绍
nps是一款轻量级、高性能、功能强大的内网穿透代理服务器。目前支持tcp、udp流量转发,可支持任何tcp、udp上层协议(访问内网网站、本地支付接口调试、ssh访问、远程桌面,内网dns解析等等……),此外还支持内网http代理、内网socks5代理、p2p等,并带有功能强大的web管理端。
环境准备
- 一台公网ip的服务器
- 一台本地windows电脑
nps下载
需要一个服务端和一个客户端
官方下载网址: https://github.com/ehang-io/nps/releases
或者直接点击下方下载按钮
nps的服务端安装(在公网服务器上安装)
nps安装完成后,配置文件在/etc/nps/conf/nps.conf
将linux_amd64_server.tar.gz
上传到root
目录,然后执行以下命令
mkdir NPS
tar -zxf linux_amd64_server.tar.gz -C NPS/
./nps install
nps会默认占用80
,8080
,443
,避免与Nginx冲突,建议修改一下端口号
vim /etc/nps/conf/nps.conf
#HTTP(S) proxy port, no startup if empty
http_proxy_ip=0.0.0.0
http_proxy_port=90 #修改为90端口
# 443 端口就不需要了
#https_proxy_port=443
#https_just_proxy=true
#default https certificate setting
#https_default_cert_file=conf/server.pem
#https_default_key_file=conf/server.key
##bridge
bridge_type=tcp
bridge_port=8024 #客户端和服务端连接的端口号
bridge_ip=0.0.0.0
# Public password, which clients can use to connect to the server
# After the connection, the server will be able to open relevant ports and parse related domain names according to its own configuration file.
public_vkey=123
#Traffic data persistence interval(minute)
#Ignorance means no persistence
#flow_store_interval=1
# log level LevelEmergency->0 LevelAlert->1 LevelCritical->2 LevelError->3 LevelWarning->4 LevelNotice->5 LevelInformational->6 LevelDebug->7
log_level=7
#log_path=nps.log
#Whether to restrict IP access, true or false or ignore
#ip_limit=true
#p2p
#p2p_ip=127.0.0.1
#p2p_port=6000
#web
web_host=a.o.com
web_username=你的用户名 #用于网页后台登录
web_password=密码
web_port = 9090 #修改为9090
web_ip=0.0.0.0
web_base_url=
web_open_ssl=false
web_cert_file=conf/server.pem
web_key_file=conf/server.key
修改保存后,执行启动命令
nps start
成功开启后在web端访问vpsip:9090,进入npsweb控制端。(用户名和密码是之前修改的用户名和密码)
登录成功后,然后点击客户端,新建一个客户端的链接方式。
然后点击隧道,添加一个tcp隧道。把内网靶机的8006端口(是个网站)转发到vps的8888端口,这样就可以在外网直接访问这个网站了。
客户端安装与连接
客户端配置文件设置,一定要指向你的vps。
解压我们之前下载的客户端,编辑npc.conf。
[common]
server_addr=vpsip:8024 # vps地址+端口
conn_type=tcp # 使用tcp隧道
vkey=123456 # 之前新建客户端的验证密钥
auto_reconnection=true
max_conn=1000
flow_limit=1000
rate_limit=1000
basic_username=11
basic_password=3
web_username=user
web_password=1234
crypt=true
compress=true
#pprof_addr=0.0.0.0:9999
disconnect_timeout=60
在本地电脑上运行npc,执行以下的命令
npc.exe -server=your-vps-ip:8024 -vkey=123456 -type=tcp
链接成功
测试访问
通过外网访问我本地电脑启动的远程桌面服务 远程桌面
评论区