V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
zanelee
V2EX  ›  程序员

公司服务器不允许随意访问公网的情况下,调用外部接口会使用什么方式放通

  •  
  •   zanelee · 8 小时 48 分钟前 · 1629 次点击

    公司现在的所有服务器都不能直接访问公网,想要进行管控,使用了 APISIX 作为反代,但是发现在实施过程中发现反代之后的域名在某些前面调用中因为域名改变无法成功,使用 SDK 的调用因为源码不易修改,调用的域名也没法修改导致无法使用这种反代网关,想要问下大家公司都是怎么做的

    25 条回复    2025-12-29 23:03:43 +08:00
    lovejoy
        1
    lovejoy  
       8 小时 43 分钟前
    NAT 防火墙?
    Panameragt
        2
    Panameragt  
       8 小时 33 分钟前   ❤️ 2
    请勿违法公司规定,谨防牢底坐穿
    106npo
        3
    106npo  
       8 小时 28 分钟前
    发工单给 IT 部门,然后倒杯咖啡耐心等待.咖啡喝完还没通过就点个外卖耐心等待
    pckillers
        4
    pckillers  
       8 小时 7 分钟前
    把问题抛给想要限制公网的层级,让这个层级推动 IT 部门解决问题。 在解决问题前装作想尽一切办法研究替代方案但无一成功。 然后慢慢等待你的服务器被解禁开通公网。
    orion1
        5
    orion1  
    PRO
       8 小时 4 分钟前
    使用公司允许的方法,往上反馈,申请。
    否则就是违法
    loginv2
        6
    loginv2  
       8 小时 3 分钟前
    首先 这个问题一般牵扯到合规,所以不要自己单独瞎搞。让领导想办法才是正道。
    如果不存在合规问题,我的解决方案在用一台可以访问公网的服务器做跳板,搭建一个代理,在代理规则里面限制访问范围,同时记录访问日志,然后调用者通过这个代理访问。代理软件可以使用常规的开源梯子软件就行
    zanelee
        7
    zanelee  
    OP
       7 小时 39 分钟前
    @lovejoy nat 防火墙其实类似于上网管控那种硬件设备,这个我们上面是有的,但是因为是不想把策略全部做在这个上面所以想着有没有其他的方法
    sanqian
        8
    sanqian  
       7 小时 38 分钟前
    别瞎搞哦。
    zanelee
        9
    zanelee  
    OP
       7 小时 35 分钟前
    @loginv2 我们现在服务器的流量都会在最后经过 AC 上网行为管理设备,但是我们不想把策略都配置在 AC 上,所以想着有没有代替的。反代和正代我们都在试,反代就是上面说的问题因为要修改域名,导致一些 sdk 和签名会出错。正代主要涉及到开发在写代码的时候会涉及到配置正代的代码
    cxh116
        10
    cxh116  
       7 小时 35 分钟前 via Android
    确认允许的话,简单的办法就是机器上面改 hosts ,把域名的 ip 指向你的反代机。
    zanelee
        11
    zanelee  
    OP
       7 小时 35 分钟前
    @Panameragt 哈哈哈,我们就是基础设施部门,我们主要是不想用上网行为管理硬件设备来做的情况下可不可以有其他的方式
    zanelee
        12
    zanelee  
    OP
       7 小时 34 分钟前
    @cxh116 这种方式在调用 http 的时候可行的,调用 https 的话就比较复杂了得配置中间人,这块没有操作过没经验
    cxh116
        13
    cxh116  
       7 小时 29 分钟前 via Android
    @zanelee https 的话,你可以看一下 sni proxy ,前题是你的 sdk 相关的库都有启用 sni 。
    zanelee
        14
    zanelee  
    OP
       6 小时 55 分钟前
    @cxh116 sni proxy ?这个是代理过去的时候的配置吧。我的意思是我反代了之后,比如我原来是请求 https://a.com ,反代之后这个域名一般情况下就会变成其他域名比如 https://a1.com 。但是修改 hosts 的话就是还是需要按照原来的域名访问 https://a.com 但是这个时候我没有 a.com 的证书它会报不安全
    sansam
        15
    sansam  
       6 小时 45 分钟前
    @zanelee #12 https 用 sni proxy ,不需要配置中间证书。不过也没法审计传的内容了。
    bbao
        16
    bbao  
       6 小时 38 分钟前
    安全部门发工单,开白名单。
    bbao
        17
    bbao  
       6 小时 36 分钟前
    [我们主要是不想用上网行为管理硬件设备来做的情况下可不可以有其他的方式]

    我们曾经的方式时,电脑开虚拟机,公司的安全软件全部在虚拟机中安装,然后网络搭个桥;继合法,又无法监控到你电脑。虚拟机它爱怎么扫怎么扫。
    cxh116
        18
    cxh116  
       6 小时 24 分钟前 via Android
    @zanelee 你可以 ai 问一下 sni 代理原理。sni 请求不是加密的,所以可行的
    luhuisicnu
        19
    luhuisicnu  
       6 小时 0 分钟前
    用反向代理需要证书什么的,用正向代理应该就不需要了吧
    mangomickey
        20
    mangomickey  
       5 小时 54 分钟前
    理解下来,你想做的是透明代理,那就必须要结合 nat 来将流量强制转发到代理服务。否则这个管控形同虚设。
    至于 https 的问题,如果你的代理服务不解密 https 不做明文审计,那就不会出现证书问题。
    如果你的代理服务要做中间人解密 https ,那就需要在所有服务器上配置信任根证书。
    realpg
        21
    realpg  
    PRO
       5 小时 50 分钟前
    你的服务器信任公司审计自签证书
    让审计设备反代目标站 并审计全部流量
    chengxiao
        22
    chengxiao  
       5 小时 49 分钟前
    正确方式不是找 IT 走流程申请开白名单吗?
    bfdh
        23
    bfdh  
       5 小时 31 分钟前
    这么多人都不审题的吗,楼主就是 IT ,还怎么找 IT ?
    litchinn
        24
    litchinn  
       5 小时 5 分钟前
    安全无小事
    遵循最佳实践都不能保证没错
    自己想的方法可能漏洞一大堆
    所以还是硬件上开白名单最靠谱
    wheat0r
        25
    wheat0r  
       15 分钟前
    实际上,不应该因为不想在行为管理上做策略而找替代方案,而是要在所有能做策略的节点做策略
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   2587 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 15:19 · PVG 23:19 · LAX 07:19 · JFK 10:19
    ♥ Do have faith in what you're doing.