1.Nps介绍
Nps是一个内网穿透工具,开源。
Github:https://github.com/ehang-io/nps
文档:https://ehang-io.github.io/nps
nps是一款轻量级、高性能、功能强大的内网穿透代理服务器。目前支持tcp、udp流量转发,可支持任何tcp、udp上层协议(访问内网网站、本地支付接口调试、ssh访问、远程桌面,内网dns解析等等……),此外还支持内网http代理、内网socks5代理、p2p等,并带有功能强大的web管理端。
2.环境准备
1台外网ip的云服务器
1台内网的linux系统(ubuntu)
3.服务端的配置
# 进入/usr/nps
mkdir -p /usr/nps
cd /usr/nps
# 下载服务端
wget https://github.com/ehang-io/nps/releases/download/v0.26.10/linux_amd64_server.tar.gz
# 解压
tar -zxvf linux_amd64_server.tar.gz
# 安装
./nps install
# 启动
./nps start
# 重启
./restrat
# 终止
./nps stop
5.新建客户端
# 进入服务端管理后台
http://公网IP:8080
默认账号密码
admin
123
# 新建客户端
设置唯一验证密钥,生成连接命令。
# 新建tcp隧道(需要云服务器开放端口安全组)
例如: 关联客户端id,通过公网云服务器的8001端口,连接内网机器127.0.0.1:22端口,实现SSH连接
4.配置客户端(开机自启动)
# 进入/usr/npc
mkdir -p /usr/npc
cd /usr/npc
# 下载客户端
wget https://github.com/ehang-io/nps/releases/download/v0.26.10/linux_arm64_client.tar.gz
# 解压
tar -zxvf linux_amd64_server.tar.gz
# 注册到系统服务(开机启动、守护进程)
./npc install -server=公网Ip:8024 -vkey=ycw123129 -type=tcp
# 安装vim
sudo apt install vim
# 创建start.sh执行脚本
vim start.sh
# 将nohub启动命令写入此脚本
nohup /usr/npc/npc start > /usr/local/npc.log 2>&1 &
# 设置脚本执行权限
chmod +x start.sh
# 写入到rc.local(系统启动自动执行该文件内的脚本)
echo '/usr/npc/start.sh' >> /etc/rc.local
注意⚠️:ssh远程工具连接ubuntu系统需安装ssh服务器(linux装机自带)
# 安装ssh服务器:
sudo apt-get install openssh-server
# 查看ssh状态是否正常
sudo systemctl status ssh
# 设置开机自启动
sudo systemctl enable ssh
# 关闭防火墙
sudo ufw disable
#如果开启防火墙,打开SSH端口
sudo ufw allow ssh