# NATOK ·  
<div align="center">
<!-- Snake Code Contribution Map 贪吃蛇代码贡献图 -->
<img src="grid-snake.svg" />
</div>
<p/>
- 🌱 natok是一个将局域网内个人服务代理到公网可访问的内网穿透工具。基于tcp协议、支持udp协议, 支持任何tcp上层协议(列如: http、https、ssh、telnet、data base、remote desktop....)。
- 🤔 目前市面上提供类似服务的有: 花生壳、natapp、ngrok等等。当然, 这些工具都很优秀; 但是免费提供的服务都很有限, 想要有比较好的体验都需要支付一定的套餐费用, 由于数据包会流经第三方, 因此总归有些不太友好。
- ⚡ natok-server与natok-cli都基于GO语言开发, 先天并发支持; 运行时的内存开销也很低, 一般在二十M左右。
运行natok-server相关的准备
- 公网ip的服务器主机,配置无特殊要求,当然带宽高点也好。
- 数据库:推荐sqlite,便捷无需任何配置;支持mysql,便于数据维护。
**一、natok-server使用sqlite:conf.yaml**
```yaml
natok:
web.port: 1000 #natok·admin管理后台web页面
server:
port: 1001 #natok-cli的通信;若更换需与natok-cli的端口保持一致
cert-pem-path: web/s-cert.pem #TSL加密密钥;若更换需与natok-cli保持一致
cert-key-path: web/s-cert.key #TSL加密证书;若更换需与natok-cli保持一致
log-file-path: web/out.log #程序日志输出文件
datasource:
type: sqlite
db-suffix: beta #库后缀,可指定
table-prefix: "" #表前缀,可指定
```
**二、natok-server使用mysql:conf.yaml**
```yaml
natok:
web.port: 1000 #natok·admin管理后台web页面
server:
port: 1001 #natok-cli的通信;若更换需与natok-cli的端口保持一致
cert-pem-path: web/s-cert.pem #TSL加密密钥;若更换需与natok-cli保持一致
cert-key-path: web/s-cert.key #TSL加密证书;若更换需与natok-cli保持一致
log-file-path: web/out.log #程序日志输出文件
datasource:
type: mysql
host: 127.0.0.1 #自己的数据库地址
port: 3306 #自己的数据库端口
username: natok #数据库账号
password: "123456" #数据库密码
db-suffix: beta #库后缀,可指定
table-prefix: "" #表前缀,可指定
```
- windows系统启动: 双击 natok-server.exe
```powershell
# 注册服务,自动提取管理员权限:
natok-server.exe install
# 卸载服务,自动提取管理员权限:
natok-server.exe uninstall
# 启停服务,自动提取管理员权限:
natok-server.exe start/stop
# 启停服务,终端管理员权限
net start/stop natok-server
```
- Linux系统启动:
```shell
# 授予natok-server可执权限
chmod 755 natok-server
# 启动应用
nohup ./natok-server > /dev/null 2>&1 &
```
---
### natok-server开发环境搭建
**Go 1.22.0 及以上(推荐)**
```shell
# 配置 GOPROXY 环境变量
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct
```
```shell
# 克隆项目
git clone https://github.com/natokay/go-natok-server.git
# 进入项目目录
cd go-natok-server
# 更新/下载依赖
go mod tidy
go mod vendor
# 设置目标可执行程序操作系统构架,包括 386,amd64,arm
go env -w GOARCH=amd64
# 设置可执行程序运行操作系统,支持 darwin,freebsd,linux,windows
go env -w GOOS=windows
# golang windows 程序获取管理员权限(UAC)
# go install github.com/akavel/rsrc@latest
# go env GOPATH 将里路径bin的目录配置到环境变量
rsrc -manifest nac.manifest -o nac.syso
# cd到main.go目录,打包命令
go build
# 启动程序
./natok-server.exe
```
## 版本描述
**natok:1.0.0**
natok-cli与natok-server网络代理通信基本功能实现。
**natok:1.1.0**
natok-cli与natok-server支持windows平台注册为服务运行,可支持开机自启,保证服务畅通。
**natok:1.2.0**
natok-cli可与多个natok-server保持连接,支持从多个不同的natok-server来访问natok-cli,以实现更快及更优的网络通信。
**natok:1.3.0**
natok-cli与natok-server可支持udp网络代理。
**natok:1.4.0**
1. natok-server端口访问支持白名单限制,重要端口(如:linux-22,windows-3389)可限制访问的ip地址。
2. natok-server端口访问监听,可选择监听范围:global=全局,local=本地。
**natok:1.5.0**
natok-server数据库类型支持sqlite、mysql,推荐使用sqlite,部署更便捷。
**natok:1.6.0**
natok-server与natok-client内部通讯采用连接池,即从公网访问natok-server后,会将连接放入连接池中,以便后续的请求时能更快的响应。
## NATOK平台界面预览
登录页面

统计概览

代理管理


端口映射


标签名单


没有合适的资源?快使用搜索试试~ 我知道了~
基于GO语言的服务端.zip

共75个文件
go:35个
js:11个
css:9个

0 下载量 179 浏览量
2025-08-24
17:41:14
上传
评论
收藏 1.08MB ZIP 举报
温馨提示
基于GO语言的服务端.zip
资源推荐
资源详情
资源评论














格式:zip 资源大小:19.6MB












格式:pdf 资源大小:2.2MB 页数:333





收起资源包目录






























































































共 75 条
- 1
资源评论


智慧安全方案
- 粉丝: 3927
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 大班手工教案--会说话的小青蛙-.doc
- 江苏省职称计算机应用能力考核试题.doc
- 工厂全光纤环网保护电话通信交换接入方案.doc
- 火电建设公司项目设计变更管理制度.doc
- 工程进度款支付表格.docx
- 009-喷涂、滚涂、弹涂施工工艺.doc
- 浅谈注射水远程监控系统.doc
- 智能化工程物资报废申请单.doc
- 洞内排水沟(槽)作业指导书.doc
- 不同图形项目管理介绍图表.ppt
- 软包装常用到的8大材料性能.docx
- 声屏障工程施工方案.doc
- 无效成本管理工作指引.doc
- 斜屋面施工工艺.doc
- 软件项目管理-项目计划的制定.docx
- 《步步高学案导学设计》-学年高中数学人教B版选修-精要导数的四则运算法则(一).ppt
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
