基于 Go 的端口转发工具,开箱即用 & 极简配置

2023-04-12 12:22:16 +08:00
 JusticeIsHere

概述

基于 Go 实现了一个端口转发工具,可用于快速将本地端口映射到远程服务器上的端口。 开箱即用,极简配置,没有乱七八糟的功能,欢迎试用 & 反馈。

项目地址: https://github.com/songquanpeng/go-public

基本用法

服务端

# 初始化配置文件
./go-public init server
# 检查并保存生成的令牌
cat go-public-server.yaml
# 启动服务器
./go-public

或者使用 Docker 进行部署:

docker run -d --restart always --name go-public -p 6871:6871 -p 8080:8080 -v /home/ubuntu/data/go-public:/app justsong/go-public

IP 白名单配置示例:

# go-public-server.yaml
whitelist:
  - 123.213.241.5
  - 123.213.242.9
  - 125.216.243.1

客户端

# 初始化配置文件
./go-public init client
# 使用保存的令牌修改配置文件
vim go-public-client.yaml
# 启动客户端
# 注意,远程端口不是配置文件中设置的服务器所监听的端口,
# 而是你想在哪一个端口上映射本地端口
./go-public <本地端口> <远程端口>
# 例如:
./go-public 3000 8080  # 将本地 3000 端口映射到远程服务器上的 8080 端口

流程图

其他

项目地址: https://github.com/songquanpeng/go-public

欢迎试用反馈!

2760 次点击
所在节点    分享创造
7 条回复
z836454898
2023-04-12 16:01:23 +08:00
可以,比 iptables
chaodada
2023-04-12 16:34:37 +08:00
之前有写过一个基于 ssh 的 端口转发
gongquanlin
2023-04-12 21:27:04 +08:00
和 frp 的区别是什么呀
JusticeIsHere
2023-04-13 15:45:45 +08:00
@gongquanlin 这个只有端口转发的功能(就我个人而言这也是我唯一需要的),因此相应的配置起来会简单很多
w123456w30w
2023-04-14 06:57:27 +08:00
支持单一端口映射到端口范围吗?
mdgwmt0
2023-04-14 11:12:09 +08:00
太好了,几十个端口一百多兆的流量资源消耗如何
JusticeIsHere
2023-04-15 19:15:45 +08:00
@w123456w30w 目前仅支持一对一,请问一对多的使用场景是什么呢?

@mdgwmt0 还没测,之后写个 Benchmark 脚本测一下

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/931877

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX