V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
angryfish
V2EX  ›  程序员

如何在只能访问外部 80, 443 端口的网络里,实现 vpn 或者组建局域网

  •  
  •   angryfish · 2020-07-13 21:57:39 +08:00 via iPhone · 3542 次点击
    这是一个创建于 1376 天前的主题,其中的信息可能已经有所发展或是发生改变。

    防火墙限制,只能访问互联网 80.443 两个端口。

    现有 vps 一台。希望该台电脑当成中转路由,实现多个地点的 pc 组成局域网,能互联互通。多个地点的 pc 均只能访问外网的 80 和 443 端口。

    第 1 条附言  ·  2020-07-14 10:50:40 +08:00
    感谢大家建议。问题已经解决了。
    最后方案选择了 openvpn 。
    18 条回复    2020-07-14 21:49:28 +08:00
    imdong
        1
    imdong  
       2020-07-13 22:07:49 +08:00
    如果开端口没有检查流量的话。

    你 VPS 直接开个服务就可以了啊,端口设置为 80 or 443 不就好了?

    如果你的防火墙在 80 443 端口上还做了协议检测。

    那就只能考虑用类似某些出国软件的方法,封装为 https 包。

    但是它那个不能组网,还有 frp 可以组网,但是好像不能伪装协议。
    angryfish
        2
    angryfish  
    OP
       2020-07-13 22:10:02 +08:00 via iPhone
    @imdong 不需要伪装协议。关键是那些 vpn 或者其他组网软件,可以仅仅使用两个两个端口
    illl
        3
    illl  
       2020-07-13 22:13:49 +08:00 via iPhone
    nginx 反代
    angryfish
        4
    angryfish  
    OP
       2020-07-13 22:23:09 +08:00 via iPhone
    @illl 反代不了。多个 pc 在 nat 之下
    yanyuechuixue
        5
    yanyuechuixue  
       2020-07-13 22:27:00 +08:00
    用 websocket 啊~~~
    ytoworld
        6
    ytoworld  
       2020-07-13 22:28:55 +08:00
    softether vpn 应该就可以, 它可以监听 443
    ladypxy
        7
    ladypxy  
       2020-07-13 22:29:51 +08:00   ❤️ 2
    ssl vpn 啊,多简单的事。。。
    defunct9
        8
    defunct9  
       2020-07-13 22:31:20 +08:00 via iPhone
    简单,vps 的 443 走 openvpn 就行。
    CheekiBreeki
        9
    CheekiBreeki  
       2020-07-13 22:45:42 +08:00 via Android
    你甚至可以用 Haproxy 端口復用
    Blacate
        10
    Blacate  
       2020-07-13 22:54:17 +08:00 via iPhone
    tinc
    throns
        11
    throns  
       2020-07-14 00:09:17 +08:00 via iPhone
    dsvpn
    billlee
        12
    billlee  
       2020-07-14 00:23:03 +08:00
    不需要伪装协议,那就直接 openvpn 监听 443/tcp.
    jim9606
        13
    jim9606  
       2020-07-14 00:26:30 +08:00   ❤️ 1
    如果检查不严的话,开个监听 TCP443 的 OpenVPN 就行。

    如果会检测协议的话,还有几种办法:

    1. 设置 tls-crypt 选项
    2. 在 443 开一个 HTTP 代理,用正向代理模式连接 OpenVPN 服务器的端口
    3. 如果 443 还想同时开 web 服务,使用 port-share 选项
    flynaj
        14
    flynaj  
       2020-07-14 00:29:49 +08:00 via Android
    softervpn,只要一个端口就可以,其实还有 DNS 的 53 端口可以用
    mason961125
        15
    mason961125  
       2020-07-14 00:36:20 +08:00
    wireguard
    mikeguan
        16
    mikeguan  
       2020-07-14 01:06:59 +08:00 via Android
    wireguard +1
    简单好用
    treizeor
        17
    treizeor  
       2020-07-14 09:48:09 +08:00
    在 frps.ini 里这样配置,绑定域名

    [common]
    bind_port = 443
    vhost_http_port = 80
    realpg
        18
    realpg  
       2020-07-14 21:49:28 +08:00
    任何 SSL VPN 标准部署不就用 443 端口……
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1072 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 18:42 · PVG 02:42 · LAX 11:42 · JFK 14:42
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.