返回 首页

基于python实现的内网穿透工具


ProxyNT 是一个反向代理服务器,可以透过NAT和防火墙将本地服务器暴露到公网上

内网穿透工具

原理

原理

特性

  1. 随时随地打开浏览器管理端口映射
  2. 公网服务器和内网客户端之间使用 WebSocket 加密传输
  3. 依赖少, 使用 pip一键安装
  4. 稳定, 自动重连, 已在生产环境中使用
  5. 支持限速

常用场景

  1. 在家托管网站服务器
  2. 管理物联网设备

安装

pip install -U proxynt

如果需要安装安卓端 点击

使用示例, 通过 SSH 访问内网机器

假设公网机器的ip是 192.168.9.224

1. 在公网机器上新建config_s.json文件

config_s.json内容:

{
  "port": 18888,
  "password": "helloworld",
  "path": "/websocket_path",
  "admin": {
    "enable": true,  
    "admin_password": "new_password"  
  }
}

然后启动: nt_server -c config_s.json

说明: - port: 监听端口 - password: 连接密码 - path: websocket路径 - admin: 管理页配置(非必须) - admin.enable: 是否启用管理页 - admin.admin_password: 管理密码

2. 在需要被访问的内网电脑上新建config_c.json文件

config_c.json内容:

{
  "server": {
    "port": 18888,
    "host": "192.168.9.224",
    "https": false,
    "password": "helloworld",
    "path": "/websocket_path"
  },
  "client_name": "home_pc",
  "client": []
}

然后启动: nt_client -c config_c.json

说明: - server: 要连接的服务器端口, ip, 是否是https, 密码, websocket路径 - client_name: 客户端名称 - client: 空数组

3. 打开服务端网页 http://192.168.9.224:18888/websocket_path/admin 添加端口:

VWCvq.md.png

说明: 管理页面路径为 websocket路径 + /admin

4. 配置成功, 使用 ssh 连接:

ssh -oPort=12222 test@192.168.9.224

完整配置说明

请查看github


登录