首页 > 代码库 > 阿里云实现内网互通

阿里云实现内网互通

1、首先第一步应该是提交工单,告知两台服务器的外网IP,然后通过工单进行反馈。

2、如果地域都是一样那就好办很多,比如参考官方的案例:https://help.aliyun.com/document_detail/25475.html?spm=5176.doc25385.2.1.dRRsk9

官方内容如下:

除了提供安全保障,您还可以使用安全组实现:

  • 案例 1:内网互通
  • 案例 2:拦截特定 IP 或 端口
  • 案例 3:只允许特定 IP 远程登录到实例
  • 案例 4:只允许实例访问外部特定 IP

说明:本文档介绍的案例仅适用于经典网络

安全组有如下限制

  • 每个用户最多创建 100 个安全组
  • 每个安全组最多添加 1000 个实例
  • 每个实例最多加入 5 个安全组
  • 每个安全组最多创建 100 条规则

案例 1:使用安全组实现内网互通

在经典网络下,您可以使用安全组实现不同 ECS 实例间的内网互通。有两种情况:

  • 场景 1:实例属于同一个地域,同一个账号
  • 场景 2:实例属于同一个地域,不同账号

场景 1:同一地域,同一账号

同一个地域内,同一个账号下,经典网络下可以通过安全组规则设置云服务器之间内网互通。

同一个安全组下的云服务器,默认内网互通。不同的安全组下的云服务器,默认内网不通。要实现内网互通,有以下解决办法:

  • 方案 1:可以把云服务器放入到相同的安全组中,就可以满足内网都互通了。
  • 方案 2:如果云服务器不在同一个安全组内,两个安全组互相内网授权安全组访问类型的安全组规则。在 授权对象 中添加对方的 IP 地址即可。

场景 2:同一地域,不同账号

同一个地域内,不同账号下,经典网络下可以通过安全组规则设置两台云服务器之间内网互通。比如:

  • UserA 的用户在 华东 1 有一台经典网络的 ECS 云服务器 InstanceA(内网 IP:A.A.A.A),InstanceA 所属的安全组为 GroupA;
  • UserB 的用户在 华东 1 有一台经典网络的 ECS 云服务器 InstanceB(内网 IP:B.B.B.B),InstanceB 所属的安全组为 GroupB。

这种情况下,可以通过安全组配置实现 InstanceA 和 InstanceB 在内网上互通。步骤如下:

  1. UserA 为 GroupA 添加一条这样的规则:在 内网入方向 授权 B.B.B.B 的 IP 可以访问 GroupA 下的所有 ECS 云服务器。
  2. UserB 为 GroupB 添加一条这样的规则:在 内网入方向 授权 A.A.A.A 的 IP 可以访问 GroupB 下的所有 ECS 云服务器。

这样两台实例就可以互通了。

案例 2:使用安全组屏蔽、拦截、阻断特定 IP 或端口对 ECS 实例的访问

您可以使用安全组屏蔽、拦截、阻止特定 IP 对用户云服务器的访问,或者屏蔽 IP 访问服务器的特定端口。操作如下:

  1. 登录 云服务器管理控制台。

  2. 找到要配置的实例。

  3. 打开实例的 本实例安全组,然后单击 配置规则
    技术分享

  4. 单击 公网入方向,然后单击 添加安全组规则
    技术分享

  5. 授权策略选择 拒绝授权对象 输入需要屏蔽的 IP 地址。单击 确定
    技术分享

  6. 如果是针对特定端口的限制,比如屏蔽一个特定 IP 访问自己 ECS 实例的 22 端口,授权策略 选择 拒绝协议类型 选择 TCP,端口范围填写为 22/22,授权对象填写待屏蔽的 IP 地址和子网掩码,格式为 x.x.x.x/xx,例如 10.1.1.1/32。然后单击 确认
    技术分享

案例 3:只允许特定 IP 远程登录到实例

通过配置安全组规则可以设置只让特定 IP 远程登录到实例。只需要在公网入方向配置规则就可以了。

以 Linux 服务器为例,设置只让特定 IP 访问 22 端口。

  1. 添加一条公网入方向安全组规则,允许访问协议类型选择 TCP端口22/22授权类型地址段访问授权对象填写允许远程连接的 IP 地址段,格式为 x.x.x.x/xx,即 IP地址/子网掩码,本例中的地址段为 182.92.253.20/32。优先级 1
    技术分享
  2. 再添加一条规则,拒绝访问协议类型选择 TCP端口22/22授权类型地址段访问授权对象写所有 0.0.0.0/0,优先级为 2
  3. 再添加一条规则,允许访问协议类型选择全部,端口全部默认,授权对象写所有 0.0.0.0/0优先级3

添加完毕后总共如下三条规则就可以了。设置完之后:

  • 来自 IP 182.92.253.20 访问 22 端口优先执行优先级为 1 的规则允许。
  • 来自其他 IP 访问 22 端口优先执行优先级为 2 的规则拒绝了。
  • 访问其他端口执行优先级为 3 的规则允许。

案例 4:只允许实例访问外部特定 IP

您可以先配置一条公网出方向规则禁止访问任何 IP(0.0.0.0/0),然后再添加一条公网出方向规则允许实例对外访问的IP。允许规则的优先级设置成高于禁止规则的优先级。

    1. 单击 公网出方向>添加安全组规则授权策略选择 拒绝授权对象 0.0.0.0/0,优先级可设置为比1大的数字。
      技术分享

    2. 在公网出方向继续添加安全组规则,授权策略选择 允许授权对象是允许实例访问的特定外部 IP。
      技术分享

    3. 在实例内部进行 ping、telnet 等测试,访问非允许规则中列出的 IP均不通,说明安全组的限制已经生效。

阿里云实现内网互通