你的位置:首页 > 互联网IT
Nodejs内网穿透,Nodejs内网穿透,Node内网穿透,NodejsTCP内网穿透,NodeTCP内网穿透,内网穿透
支持系统:Windows 64/32位系统/Linux系统
功能:Nodejs内网穿透
软件:node
性能:一般
Windows/linux下载地址:Nodejs内网穿透
windows node 下载地址:node-v12.14.0-x86.rar
项目地址:https://github.com/FettLuo/nagent
另一个内网穿透:Nodejs实现简单的TCP内网穿透
https://www.zhuguodong.com/?id=598
Nodejs内网穿透
用法:
服务器端
修改server.js:
var server_port=5670 //服务器端端口
var server_host='localhost' //本地IP地址,默认localhost
客户端
修改client.js:
var local_port=8080 //远程端口
var local_host='www.baidu.com //远程域名或者IP
var server_port=5670 //服务器端口
var server_host='www.qq.com' //服务器域名或者IP
var remote_port=8080 //你需要服务端为你开放的公网端口
var keep_conn_count=10 //同时保持的最大连接数量
Windows/linux启动:
服务端
windows/linux:
node server.js -s
linux:
node server.js -s
客户端
windows/linux:
node client.js
linux:
node client.js
Windows系统:
安装:node-v12.14.0-x86.msi
查看:node -v
返回版本信息,比喻:v0.10.48
同目录下运行cmd:
服务端
node server.js -s或者启动server.bat
客户端
node client.js或者启动client.bat
后台隐藏运行:https://www.zhuguodong.com/?id=520
Linux系统:
第一种:nodejs安装
安装:yum -y install nodejs
查看:node -v
返回版本信息,比喻:v0.10.48
同目录下运行linux命令:
服务端
node server.js -s
客户端
node client.js
后台隐藏运行:https://www.zhuguodong.com/?id=498
1.升级node,下载 n管理包
npm install -g n
2.执行n 命令升级到v14.16.0
v14.16.0版本2021年2月23日
n 14.16.0 stable
v12.21.0版本2021年2月23日
n 12.21.0 stable
v10.23.3版本2021年2月9日
n 10.23.3 stable
3.重启centos7(必须).查看node版本,更新到14.16.0
reboot
第二种:nodejs安装
安装宝塔网站面板
软件商店:搜索node,安装
查看:node -v
返回版本信息,比喻:v0.10.48
Linux系统node安装:
参考文章:https://www.zhuguodong.com/?id=529
参考文章:
https://github.com/FettLuo/nagent
https://github.com/FettLuo/nagent/blob/master/%E8%AF%B4%E6%98%8E%E4%B9%A6.md
Nagent
网络穿透代理,名称来源于Nat与Agent的组合。类似frp项目,可以穿透局域网为互联网提供服务。
前提是你要有一台流量服务器并且有一个公网IP。如果没有,也可以找服务商。
暂不能向frp那样为HTTP服务,但可以实现简单的分发————你只需要在两台内网HTTP服务器上运行Nagent客户端即可。
衍生产品HerePC,请关注:HerePC。
进度
正常使用,比较稳定
这些情况进行了测试:http(IIS/nginx/nextcloud),ssh,webdav
未向特殊协议优化,例如http/s的转发
虽然协议有涉及账号名与密码,但未实现
未来希望你或我,向项目添加账号管理支持,以webservice的形式支持
名词解释
客户端:运行在内网的Nagent客户端。
服务端:运行在公网服务器上的Nagent服务端。
用户:互联网上的实际用户。
过程
服务器监听在5670端口(默认)。
客户端配置好自己的服务端口,也可以指定内网其他计算机。假设本机80端口。
客户端登录到服务器,通知服务器我需要监听的外网端口,比如90。
一切正常的话(防火墙没问题,端口没被占用等),服务器上90端口的连接即会被导向到内网的80端口服务上。
原理
客户端与服务器保持着一定数量的连接,每个连接都需要登录成功。
用户连接公网服务器的端口后会从客户端的列表中弹出一个用于数据转发。
当客户端第一次收到数据时,建立与本地服务的连接,并发送/转发数据。
部署
需要NodeJS
运行为服务端
windows/linux:
node nagent.js -s
linux:
./nagent.js -s
运行为服务
linux下用
nohup ./nagent.js -s > out 2>&1 &
windows下用计划任务
win键,输入jihua,选计划任务,创建任务,起个名nagent,选不管用户是否登录,切换到触发器标签,新建,开始任务选“启动时”,切换到操作标签,新建,程序选node,参数选nagent.js(可以附带nagent参数),起始于选择nagent目录。再回到任务列表手动启动nagent任务。
运行为客户端
windows/linux:
node nagent.js -p 90 -P 80
linux:
./nagent.js -p 90 -P 80
配置
保存下面内容到nagent.js所在的目录,文件名为nagent.config,方括号内替换为你的参数。
local_port=[你的本地服务端口]
server_port=5670// 服务端端口号
server_host='[服务端的主机地址,IP或域名均可]'
remote_port=[你需要服务端为你开放的公网端口]
keep_conn_count=10// 同时保持的最大连接数量
发表评论: