爱意满满的作品展示区。
uncat

基于 FRP 和 WireGuard 远程办公解决方案

  •  
  •   uncat ·
    jinmiaoluo · Dec 25, 2021 · 11511 views
    This topic created in 1780 days ago, the information mentioned may be changed or developed.

    实现内网虚拟化环境的公网可达. 实现了基本的添加和删除人员权限的逻辑.

    适用对象:

    • 团队在公司内网有一台虚拟化服务器, 公司成员远程办公, 需要能公网访问这些在内网虚拟化下的自建服务, 比如内网的 GitLab 或 Jira 或 Confluence.
    • 自己有一台工作站, 希望通过 vscode 的 remote 功能, SSH 回家中的工作站, 实现开发环境性能跃升.

    https://github.com/jinmiaoluo/wireguard-helper

    Supplement 1  ·  Dec 27, 2021

    我的家庭网络拓扑

    Supplement 2  ·  Dec 27, 2021

    优势:

    • 用户本地环境只要能访问互联网, 就可以访问到 192.168.188.0/24 和 192.168.121.0/24 下的所有主机.
    • 网络安全性由 WireGuard 来保证. 一人一证书, 权限细粒度可以控制到人为单位.
    • 用户本地环境通过维护路由来实现转发, 不会影响本地的翻墙服务.
    Supplement 3  ·  Jan 28, 2024

    旧方案已废弃。请参考新方案:WireGuard:远程办公网络

    新方案与旧方案的区别:

    新方案不再依赖 FRP,完全基于 WireGuard 来实现同样的效果。 相比于旧方案(有 FRP),新方案(无 FRP 的纯 WireGuard 方案)彻底发挥了协议本身的无状态的优势。公网服务器抗 DoS 能力更强,被探测到的机率更低。有更好的安全性。

    32 replies  •  2024-01-28 23:12:45 +08:00
    Ganing
    Ganing
    Dec 25, 2021
    1
    没看懂 frp 的意义
    cweijan
    cweijan
    Dec 25, 2021
    2
    1. FRP 是端口转发, 不是内网穿透
    2. 内网穿透是指通过 UDP 的方式, 让两台机器直接通信, 不走中转服务器, wireguard 天生就支持, 和 ftp 一点关系都没有
    3. 如果你运行 FRP 的服务端有公网 IP, 那用不用 wireguard 没有区别.
    uncat
    uncat
    OP
    Dec 25, 2021 via iPhone
    3
    @Ganing 私有虚拟化,无公网 IP ,需公网访问。
    uncat
    uncat
    OP
    Dec 25, 2021 via iPhone
    4
    @cweijan 私有虚拟化,无公网 IP ,需公网访问。NAT 网关和权限管理,类似 OpenVPN 。
    xsen
    xsen
    Dec 25, 2021❤️2
    5
    tailscale

    若有自建后台需求,tailscale + headscale
    patrickyoung
    patrickyoung
    Dec 25, 2021 via iPhone❤️1
    6
    Zerotier 一步到位
    ciaoly
    ciaoly
    Dec 25, 2021 via Android
    7
    🌚我觉得用个 mesh VPN 挺不错的🤔
    tinc 或者 zerotier
    uncat
    uncat
    OP
    Dec 25, 2021
    8
    @xsen headscale 不错.
    uncat
    uncat
    OP
    Dec 25, 2021
    9
    @patrickyoung 准备试试, 谢谢.
    uncat
    uncat
    OP
    Dec 25, 2021
    10
    @ciaoly tinc 抽空试试.
    cweijan
    cweijan
    Dec 26, 2021
    11
    @uncat 我明白你的使用场景, 只是说你的文章有些术语描述的不对.
    uncat
    uncat
    OP
    Dec 26, 2021
    12
    @cweijan updated.
    miyunda
    miyunda
    Dec 26, 2021
    13
    有公网 IP 的话就一个 ocserv
    hawei
    hawei
    Dec 26, 2021 via iPhone
    14
    @patrickyoung 同 zeortie 一把梭
    uncat
    uncat
    OP
    Dec 26, 2021
    15
    @miyunda 不是很了解 ocserv. 请问 ocserv 客户端可以只指针对某一个网络段(比如 192.168.1.0/24)进行路由吗?
    JustSong
    JustSong
    Dec 27, 2021 via Android
    16
    刚刚试了一下,zerotier 也太香了吧
    tobylee
    tobylee
    Dec 27, 2021
    17
    如果有一台具有公网 IP 的 VPS ,那就 Wireguard 或 OpenVPN ,都可以完美实现。反代请求到内网服务器就行了,如果没有具有公网 IP 的 VPS ,那就用 Zerotier 吧,但是要忍受极慢的网速。
    uncat
    uncat
    OP
    Dec 27, 2021
    18
    @tobylee 不是只访问一台或几台, 是要做内网整个网络段的公网可达. Zerotier 我来试试.
    joesonw
    joesonw
    Dec 27, 2021 via iPhone
    19
    公网服务器也装 wireguard 不就好了?要 frp 干嘛,又不是 OpenVPN 。
    uncat
    uncat
    OP
    Dec 27, 2021
    20
    @joesonw 不是只访问一台或几台, 是要做 WireGuard 服务端所在内网整个网络段的公网可达.
    uncat
    uncat
    OP
    Dec 27, 2021
    21
    @joesonw 小公司的自建虚拟化在电信 NAT 设备后, 无公网 IP, 因此需要 FRP.
    junmoxiao
    junmoxiao
    Dec 29, 2021
    22
    nebula 不香嘛
    uncat
    uncat
    OP
    Dec 29, 2021
    23
    @junmoxiao 没用过,我了解一下。
    squirrelBdg
    squirrelBdg
    Dec 29, 2021
    24
    我用的是 nps 很省心 但是也有一些 bug
    uncat
    uncat
    OP
    Dec 29, 2021
    25
    @squirrelBdg nps 也很棒
    SimonOne
    SimonOne
    Dec 30, 2021
    26
    这图用哪个工具画的?
    sacuba
    sacuba
    Mar 30, 2022
    28
    偶然间搜到了这样一个主题,可能楼主已经知道了。
    wireguard 利用 iptables 以及 allowdips 是可以实现你想要的效果的,不用 frp 。
    sacuba
    sacuba
    Mar 30, 2022❤️1
    29
    https://zhuanlan.zhihu.com/p/447375895 随手搜了下,可以看看这个博主的帖子
    uncat
    uncat
    OP
    Jan 28, 2024
    30
    @sacuba 哈哈哈,我现在才明白你想跟我表达的意思。
    sacuba
    sacuba
    Jan 28, 2024
    31
    @uncat #30 手动狗头一个。 不过看到你的文章,虽然我没试,但是我感觉你的 key 都是可用的,建议隐藏一下
    uncat
    uncat
    OP
    Jan 28, 2024
    32
    @sacuba

    > 感觉你的 key 都是可用的,建议隐藏一下

    有意为之。key 相关的公网(内网)服务器是临时资源,验证完文章的正确性后就回收了。保持 key 的可用,可以让文章的读者更顺利的复现。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2309 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 58ms · UTC 13:03 · PVG 21:03 · LAX 05:03 · JFK 08:03
    ♥ Do have faith in what you're doing.