NS首发!开源项目Link一键搞定安全认证、内网穿透和服务转发

同步来源:树洞剪藏 源站剪藏 ID:92 原文地址:https://www.nodeseek.com/post-193976-1
NS首发!开源项目Link一键搞定安全认证、内网穿透和服务转发
NodeSeek beta 日常 技术 情报 测评 交易 拼车 推广
NS首发!开源项目Link一键搞定安全认证、内网穿透和服务转发
Volt 楼主 1day ago edited 1day ago in 技术 #0
工作学习过程中经常有内网穿透需求的场景,传统的frp、nps虽然功能完善,但是缺少灵活性,不够简洁易用。
如果再有需要进行TCP转发的时候,iptables又有些不方便,不易于管理。
在有些情况下需要我们的服务有白名单限制,但又需要防火墙繁琐的配置。
根据这些需求,项目主完全从零开始打造出了一款灵活处理上述需求的工具:Link
概述
Link 是一款强大的 TCP 连接管理工具,可简化 NAT 穿透、TCP 转发等功能。通过在单个可执行文件中集成三种不同的运行模式,Link 能跨越不同的网络环境,无缝重定向服务并处理 TCP 连接,确保可靠的网络连接和理想的网络环境。凭借高度集成的授权管理,Link 让您高效管理用户权限,建立不间断的数据流,以确保敏感资源的保护,同时保持应用程序的高性能和响应性。
功能
统一操作 :Link 可作为服务端、客户端或转发模式运行,三种角色仅需一个可执行文件。
授权管理 :通过 IP 地址管理,Link 确保只有授权用户可以访问敏感资源。
自动证书 :使用 Certmagic 进行无缝的自动证书颁发和更新(当域名可用时)。
内存证书 :提供有效期为一年的自签名 HTTPS 证书,完全存储在内存中。
自动重连 :提供可靠的短期重连功能,确保服务不中断。
连接更新 :在连接中断的情况下,Link 支持实时连接更新。
服务转发 :高效管理和重定向 TCP 连接,从一个服务到各个入口点。
使用方法
运行程序时,请提供指定模式和连接地址的 URL。URL 格式如下:
server://linkAddr/targetAddr client://linkAddr/targetAddr broker://linkAddr/targetAddr
注意,只有 server 和 broker 模式支持授权管理,您可以在 # 后添加授权条目。例如:
server://linkAddr/targetAddr#authScheme://authAddr/secretPath broker://linkAddr/targetAddr#authScheme://authAddr/secretPath
authScheme :该选项允许选择使用 HTTP 或 HTTPS。
authAddr :指定授权管理的服务器地址和端口。
secretPath :用于处理授权请求的密钥端点。
服务端模式
linkAddr :用于接受客户端连接的地址。例如 :10101 。
targetAddr :用于监听外部连接的地址。例如 :10022 。
以服务端模式运行
./link server://:10101/:10022
该命令将在端口 10101 上监听客户端连接,并在端口 10022 上监听和转发数据。
以授权方式运行服务端
./link server://:10101/:10022#https://hostname:8443/server
服务端在 https://hostname:8443/server 进行授权管理,访问时记录您的 IP。
服务端将在端口 10101 上监听客户端连接,并在端口 10022 上监听和转发数据。
客户端模式
linkAddr :要连接的服务端地址。例如 server_ip:10101 。
targetAddr :要连接的目标服务地址。例如 127.0.0.1:22 。
以客户端模式运行
./link client://server_hostname_or_IP:10101/127.0.0.1:22
该命令将与 server_hostname_or_IP:10101 建立链接,并连接和转发数据到 127.0.0.1:22 。
转发模式
linkAddr :用于接受客户端连接的地址。例如 :10101 。
targetAddr :要连接的目标服务地址。例如 127.0.0.1:22 。
以转发模式运行
./link broker://:10101/127.0.0.1:22
该命令将在端口 10101 上监听客户端连接,并连接和转发数据到 127.0.0.1:22 。
以授权方式运行转发模式
./link broker://:10101/127.0.0.1:22#https://hostname:8443/broker
服务端在 https://hostname:8443/broker 进行授权管理,访问时记录您的 IP。
服务端将在端口 10101 上监听客户端连接,并连接和转发数据到 127.0.0.1:22 。
容器使用
您也可以使用容器运行 Link 。镜像可从 ghcr.io/yosebyte/link 获取。
在服务端模式下使用容器运行(带或不带授权):
docker run --rm ghcr.io/yosebyte/link server://:10101/:10022#https://hostname:8443/server
docker run --rm ghcr.io/yosebyte/link server://:10101/:10022
在客户端模式下使用容器运行:
docker run --rm ghcr.io/yosebyte/link client://server_hostname_or_IP:10101/127.0.0.1:22
在转发模式下使用容器运行(带或不带授权):
docker run --rm ghcr.io/yosebyte/link broker://:10101/127.0.0.1:22#https://hostname:8443/broker
docker run --rm ghcr.io/yosebyte/link broker://:10101/127.0.0.1:22
本项目托管在GitHub上:
https://github.com/yosebyte/link
欢迎STAR本项目,有技术问题可留言私信TG沟通。
TG@yosebyte | 开源项目Link认证网穿转发
11 0 43 引用 回复
1 2 3 4
Volt 楼主 1day ago edited 1day ago #14
补充几种使用示例:
NAT内网穿透,假设A位于内网,B在公网,A的服务22端口需要外部访问,那么A就是client模式,B就是server模式,B需要指定一个端口作为心跳端口(例如10101),还需要一个客户端的暴露端口,一键命令的话,服务端B是server://:10101/:10022,A这边就client://B:10101/127.0.0.1:22,这样A的22端口就暴露在B的10022端口了。
服务转发,假设A直连不上,B线路优秀,想用B的8080端口拉A的8080端口服务,那么只需要在B上一键命令broker://:8080/A:8080,就可以通过B的8080访问A的8080。
如果需要安全认证功能,注意只针对server和broker模式生效,只需要在最后加上#http://:8080/api,或者,https://:8443/api,端口自定,注意https如果不主动指定域名,会自动生成一个随机自签证书,存下内存中,保证安全,主动指定域名,会自动申请可信证书并维护证书有效,也算是一个亮点。api这里填写指定的路径,避免遍历破解。这样设置之后,想要访问server模式对应的客户端端口映射,或者broker模式转发的端口,必须首先访问以上设置的网页,会返回当前ip地址,在服务器内存中存储白名单ip,并只允许这些ip访问client或者broker对应的服务。
TG@yosebyte | 开源项目Link认证网穿转发
3 0 引用 回复
qfdk 1day ago #1
马克 感谢先
ipfs 文件管理 | 绿草挂机邀请 | FR-ORY 法兰西大带宽开机筹划中,欢迎pm
0 0 引用 回复
沃尔玛 1day ago #2
太懒了主要是,frp懒得动了。等佬做大做强在搞。BD
0 0 引用 回复
JuneSame 临时禁言 1day ago #3
✈️TG
0 0 引用 回复
Crazybbok 1day ago #4
大佬 BD
0 0 引用 回复
hedy 1day ago #5
在用frp 不想折腾了 因为很简单
大魚海棠
0 0 引用 回复
smzdsg 1day ago #6
点赞
活着,开心就好
0 0 引用 回复
Volt 楼主 1day ago #7
@qfdk #1 @JuneSame #3 @Crazybbok #4 感谢支持
TG@yosebyte | 开源项目Link认证网穿转发
0 0 引用 回复
dira 1day ago #8
马克 感谢先
0 0 引用 回复
Volt 楼主 1day ago #9
@沃尔玛 #2 感谢,持续维护
TG@yosebyte | 开源项目Link认证网穿转发
0 0 引用 回复
mdd 1day ago #10
看不懂,有大佬试用说说感受吗
0 0 引用 回复
1 2 3 4
内容 预览 对照
支持 markdown语法
鼓励友善发言,禁止人身攻击
xxxxxxxxxx
1
1
AC娘
洋葱头
小黄鸡
发布评论
88
等级 Lv 4 鸡腿 1907 关注 0 通知 0
主题帖 10 评论数 290 粉丝 2 收藏 182 发帖
快捷功能区 推荐阅读 管理记录 幸运抽奖 邀请好友 合作商家 友站链接
所有版块 日常 技术 情报 测评 交易 曝光 拼车 生活 贴图 推广 内版 Dev 无意义 沙盒
📈用户数目📈
目前论坛共有22061位seeker
🎉欢迎新用户🎉
huotuchensha
alanlu
相关网站 LowEndTalk LowEndSpirit HostLoc ServerHunter
站内导航 关于本站 隐私协议 RSS订阅 sitemap
商业推广 商家申请规则 Premium Provider 合作商家展示
其他平台 电报频道 电报群组
联系我们
Copyright © 2022 - 2024 All rights Reserved