V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
yestodayHadRain
V2EX  ›  问与答

阿里云服务器设置了安全组,大家是怎么在外网环境访问服务器的呢?

  •  
  •   yestodayHadRain · 139 天前 · 1624 次点击
    这是一个创建于 139 天前的主题,其中的信息可能已经有所发展或是发生改变。

    楼主这边的情况是这样,有一台阿里云服务器 A 设置了安全组,只有公司内网才能访问到其他的 ip 访问不到.怎么做才能做到在外网也能访问到服务 A 呢?

    尝试过在 A 服务器上运行一个 openVPN server,然后本地通过 openVPN 客户端去访问.发现在外网环境,因为 A 服务器设置了安全组外网的 ip 会被拦截,请求根本打不过去.这种情况要怎么做呢?

    最后解释一下为什么 A 服务器要设置安全组不让别的 ip 访问,因为 A 服务器上运行着 环境部署平台,害怕被人登录上去后 回滚线上或者测试环境的代码,所以设置了阿里云安全组只让公司内网访问

    第 1 条附言  ·  139 天前
    现在有个想法是,在另外一台没有设置安全组的阿里云机器 B 上运行 vpn Server 然后 A 机器的安全组白名单里加上 B 机器的 ip,最后外网环境的本地通过 vpn 客户单连接 B 机器上的 vpn Server 可以访问到 A 机器上的服务吗?
    31 条回复    2020-09-09 22:39:34 +08:00
    finian
        1
    finian   139 天前
    1. 安全组开放相应的端口 or
    2. 先连跳板机,再连 A
    yestodayHadRain
        2
    yestodayHadRain   139 天前
    @finian 安全组开放了 openVPN 服务的端口,并且内网环境下是可以连接到 A 服务器的 VPN 的.但是外网环境不行,我感觉是外网环境的 ip 没有在阿里云安全组的白名单里所以被拦截了,这个要怎么处理呢?
    finian
        3
    finian   139 天前
    @yestodayHadRain #2 那要看你的安全组规则的「授权对象」是怎么设置的,是不是设置只有内网部分 IP 可以访问
    opengps
        4
    opengps   139 天前 via Android
    让你们公司买堡垒机服务
    shynome
        5
    shynome   139 天前 via Android
    应该有 VPN 的,问问网管,没有的话让老大开端口(安全意识到这了应该有网管的吧)

    你可以在公司网络下把公司的电脑和自己的云服务器组 VPN,然后连上自己组的 VPN 后把公司的电脑当成跳板机,这里注意的是公司电脑不能关机,关机就连不上了
    yestodayHadRain
        6
    yestodayHadRain   139 天前
    @shynome 没有 vpn,公司刚成立.目前让我来做这件事.如果在公司内网搞一台机器做跳板机的话,是不是就不需要 vpn 了呀.之前没有搞过这块,对这些不是太了解呢
    yestodayHadRain
        7
    yestodayHadRain   139 天前
    @finian 不是设置的内网部分 ip,公司内网 大家都是连的公司同一个路由器,然后阿里云安全组把这个路由器的外网 ip 设置成白名单了.
    yestodayHadRain
        8
    yestodayHadRain   139 天前
    @opengps 有什么不花钱的办法吗?
    nuk
        9
    nuk   139 天前
    把 openvpn server 设置在其他地方,阿里云上运行 client
    反向连接 vpn
    yestodayHadRain
        10
    yestodayHadRain   139 天前
    @nuk 现在有个想法是,在另外一台没有设置安全组的阿里云机器 B 上运行 vpn Server 然后 A 机器的安全组白名单里加上 B 机器的 ip,最后外网环境的本地通过 vpn 客户单连接 B 机器上的 vpn Server 可以访问到 A 机器上的服务吗?
    wangxiaoaer
        11
    wangxiaoaer   139 天前
    最后解释一下为什么 A 服务器要设置安全组不让别的 ip 访问,因为 A 服务器上运行着 环境部署平台,害怕被人登录上去后 回滚线上或者测试环境的代码,所以设置了阿里云安全组只让公司内网访问
    -------------------

    所以你为什么还要从外网登陆上去?开个口子出了问题谁负责?
    yestodayHadRain
        12
    yestodayHadRain   139 天前
    @wangxiaoaer 那如果周六日大家都在家,有个服务要上线或者线上出了问题要回滚.外网访问不到部署平台,这时候该怎么办呢?
    shynome
        13
    shynome   139 天前 via Android
    @yestodayHadRain 那就安全组里放行 VPN 端口给所有地址连接,所有的方法都需要这步,接下来就是保证 VPN 的安全性了
    对于 opengps 说的堡垒机我没接触过,不清楚是啥样的
    Xusually
        14
    Xusually   139 天前
    @yestodayHadRain 可行。但是注意网络 B 的 VPN 网络配置,避免客户端相互隔离。
    brendanliu
        15
    brendanliu   139 天前
    可以看下 VPN 网关这个产品能不能满足,云厂商提供了现成的服务
    yestodayHadRain
        16
    yestodayHadRain   139 天前
    @Xusually 避免客户端相互隔离,是什么意思呢?
    opengps
        17
    opengps   139 天前
    @yestodayHadRain 不花钱的办法:每次要登录时候单独找总负责人添加当前 ip 到白名单
    lower
        18
    lower   139 天前
    直接用阿里云提供的在线 vnc 呗……还能咋办😭
    Xusually
        19
    Xusually   139 天前
    @yestodayHadRain 很多在网上抄的 vpn 服务器的配置,会配置成客户端是相互隔离的,虽然 ip 段看上去是同一个子网的,实际上不能互通,如果配置成这样就不能达到你外面的客户端和 A 机器能通信的目的了。
    注意一下即可。
    yestodayHadRain
        20
    yestodayHadRain   139 天前
    @opengps .......要这样搞,总感觉有一天会被拿去祭天呢
    wakzz
        21
    wakzz   139 天前
    部署个堡垒机,外网用堡垒机登录生产机器
    yestodayHadRain
        22
    yestodayHadRain   139 天前
    @wakzz 公司目前没有堡垒机(公司比较难,机器比较少),另外如果有堡垒机 像一些 web 服务 也可以通过堡垒机访问到吗?我印象中堡垒机多数都是 ssh 的吧?
    yestodayHadRain
        23
    yestodayHadRain   139 天前
    @lower 阿里云在线 vnc 可以无视阿里云安全组,在外网把请求打到阿里云服务器上吗?
    opengps
        24
    opengps   139 天前
    @yestodayHadRain 23#楼提到既然都有权限去登录阿里云帐号 vnc 了,就跟安全组临时添加 ip 一个意思了,阿里云帐号在谁手里,谁就是离开公司后唯一能连接服务器的
    lower
        25
    lower   139 天前
    @yestodayHadRain 查了一下没看到详细说明,但是至少可以选内网方式连接,而且阿里云好像可以创建子账号,来分配权限。。。不知道这种方式是否适合你
    yestodayHadRain
        26
    yestodayHadRain   139 天前
    @Xusually 我按照这个方法试了一遍, A 机器用 openVPN 客户端 连接 B 机器的 openVPN server,然后我本地的外网环境也用 openVPN 的客户端连接 B 机器的 server.通过查看 B 机器上的日志发现, A 机器和我本地 在 openVPN 的虚拟网络中在同一个网段下了,我本地也可以 ping 通 A 机器的虚拟 ip,但是还是访问不了 A 机器上的服务.这个是为什么呢?
    Xusually
        27
    Xusually   139 天前
    @yestodayHadRain A 的安全组里面需要把你 vpn 客户端们所在的虚拟网的 ip 段开放对应的访问权限。
    Xusually
        28
    Xusually   139 天前
    @Xusually @yestodayHadRain 接上条,而且还要检查你 A 机器上部署的你需要访问的服务,是监听在哪些网络接口上的,如果制定的是监听在公网 ip 上的话,你从私有地址访问也是不行的。
    yestodayHadRain
        29
    yestodayHadRain   139 天前
    @Xusually 27#楼 这个应该不需要,因为我在安全组里给 B 机器的外网 ip 加了白名单.而且现在没有加白名单,我的外网本地环境也可以 ping 通 A 机器的虚拟 ip
    yestodayHadRain
        30
    yestodayHadRain   139 天前
    @Xusually 28#楼 现在是不是只要配置下 iptables 的路由转发就可以了呢?
    whileFalse
        31
    whileFalse   138 天前
    太费劲了。就两种方式:

    1. 用阿里云的堡垒机服务,花钱省事儿。
    2. 用一台可以从任意 IP 访问的机器当堡垒机。内网服务器的安全组信任来自这台堡垒机的入流量。
    这台堡垒机可以运行 VPN Server,也可以就是一台简单的 Windows 。
    关于   ·   帮助文档   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   3127 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 14:26 · PVG 22:26 · LAX 06:26 · JFK 09:26
    ♥ Do have faith in what you're doing.