本文介紹了幾個常見的安全性群組應用案例,同時包括專有網路(VPC)和經典網路 的安全性群組設定說明。

说明

案例 1:實現內網互通

使用安全性群組實現相同地域不同帳號下或不同安全性群組內ECS執行個體間的內網互通。有兩種情況:

  • 場景 1:執行個體屬於同一個地域、同一個帳號
  • 場景 2:執行個體屬於同一個地域、不同帳號
说明

對於VPC網路類型的ECS執行個體,如果它們在同一個VPC網路內,可以通過安全性群組規則實現內網互通。如果ECS執行個體不在同一個VPC內(無論是否屬於同一個帳號或在同一個地域裡),您可以 使用Express Connect實現VPC互通

場景 1:同一地域、同一帳號
  • VPC:處於同一個VPC內的ECS執行個體,在執行個體所在安全性群組中分別添加一條安全性群組規則,授權另一個安全性群組內的執行個體訪問本安全性群組內的執行個體,實現內網互通。安全性群組規則如下表所示。
    網卡類型 規則方向 授權策略 協議類型 通信埠範圍 優先順序 授與類型 授權對象
    不需要設定 入方向 允許 設定適用的協議類型 設定通信埠範圍 1 安全性群組訪問(本帳號授權) 選擇允許訪問的執行個體所在的安全性群組ID
  • 經典網路:在執行個體所在安全性群組中分別添加一條安全性群組規則,授權另一個安全性群組內的執行個體訪問本安全性群組內的執行個體,實現內網互通。安全性群組規則如下表所示。
    網路類型 網卡類型 規則方向 授權策略 協議類型 通信埠範圍 優先順序 授與類型 授權對象
    經典網路 內網 入方向 允許 設定適用的協議類型 設定通信埠範圍 1 安全性群組訪問(本帳號授權) 選擇允許訪問的執行個體所在的安全性群組ID

同一地域、同一帳號的2個執行個體,如果在同一個安全性群組內,預設內網互通,不需要設定。如果在不同的安全性群組內,預設內網不通,此時,根據網路類型做不同的設定:

場景 2:同一地域、不同帳號

這部分的描述僅適用於經典網路類型的ECS執行個體。

同一個地域內、不同帳號下,經典網路執行個體可以通過安全性群組授權實現內網互通。比如:

  • UserA在華東1有一台經典網路的ECS執行個體InstanceA(內網IP:A.A.A.A),InstanceA所屬的安全性群組為GroupA。
  • UserB在華東1有一台經典網路的ECS執行個體InstanceB(內網IP:B.B.B.B),InstanceB所屬的安全性群組為GroupB。
  • 在GroupA中添加安全性群組規則,授權InstanceB內網訪問InstanceA,如下表所示。
    網卡類型 規則方向 授權策略 協議類型 通信埠範圍 授與類型 授權對象 優先順序
    內網 入方向 允許 選擇適用的協議類型 設定通信埠範圍 安全性群組訪問(跨帳號授權) GroupB的ID,並在 帳號ID 裡填寫UserB的ID 1
  • 在GroupB中添加安全性群組規則,授權InstanceA內網訪問InstanceB,如下表所示。
    網卡類型 規則方向 授權策略 協議類型 通信埠範圍 授與類型 授權對象 優先順序
    內網 入方向 允許 選擇適用的協議類型 設定通信埠範圍 安全性群組訪問(跨帳號授權) GroupA的ID,並在 帳號ID 裡填寫UserA的ID 1
    说明
    出於安全性考慮,經典網路的內網入方向規則,授與類型優先選擇 安全性群組訪問;如果選擇 地址段訪問,則僅支援單IP授權,授權對象的格式只能是a.b.c.d/32,其中IP地址應根據您的實際需求設定,僅支援IPv4,子網路遮罩必須是/32。

案例 2:屏蔽、攔截、阻斷特定IP地址對執行個體或執行個體特定通信埠的訪問

如果需要使用安全性群組屏蔽、攔截、阻止特定IP地址對您的ECS執行個體的訪問,或者屏蔽特定IP地址訪問ECS執行個體的特定通信埠(如本例中的TCP 22通信埠),您可以參考以下樣本設定安全性群組規則:

  • 如果要拒絕特定公網IP地址段對ECS所有通信埠的訪問,添加如下表所示的安全性群組規則:
    網路類型 網卡類型 規則方向 授權策略 協議類型 通信埠範圍 授與類型 授權對象 優先順序
    VPC 不需要設定 入方向 拒絕 全部 -1/-1 地址段訪問 待屏蔽的IP地址段,採用CIDR格式,如a.b.c.d/27。 1
    經典網路 公網
  • 如果要拒絕特定IP地址段對ECS特定通信埠(如TCP 22通信埠)的訪問,添加如下安全性群組規則:
    網路類型 網卡類型 規則方向 授權策略 協議類型 通信埠範圍 授與類型 授權對象 優先順序
    VPC 不需要設定 入方向 拒絕 SSH(22) 22/22 地址段訪問 待屏蔽的IP地址段,採用CIDR格式,如a.b.c.d/27。 1
    經典網路 公網

案例 3:只允許特定IP地址遠程登入到執行個體

如果您只想讓某些特定IP地址遠程登入到執行個體,可以參考以下樣本的步驟在執行個體所在安全性群組裡添加以下2條規則(以Linux執行個體為例,設定只讓特定IP地址訪問TCP 22通信埠):

  1. 允許特定IP地址訪問TCP 22通信埠,優先順序為1,優先順序最高,最先執行。安全性群組規則如下表所示。
    網路類型 網卡類型 規則方向 授權策略 協議類型 通信埠範圍 授與類型 授權對象 優先順序
    VPC 不需要配置 入方向 允許 SSH(22) 22/22 地址段訪問 允許遠端連線的IP地址,如1.2.3.4。 1
    經典網路 公網
  2. 拒絕其他IP地址訪問TCP 22通信埠,優先順序為2,低於優先順序為1的規則。安全性群組規則如下表所示。
    網路類型 網卡類型 規則方向 授權策略 協議類型 通信埠範圍 授與類型 授權對象 優先順序
    VPC 不需要配置 入方向 拒絕 SSH(22) 22/22 地址段訪問 0.0.0.0/0 2
    經典網路 公網

完成設定後:

  • 使用IP地址為 1.2.3.4 的機器遠端連線Linux執行個體時,串連成功。
  • 其他IP地址的機器遠端連線Linux執行個體時,串連失敗。

案例 4:只允許執行個體訪問外部特定IP地址

如果您只想讓執行個體訪問特定的IP地址,參考以下樣本的步驟在執行個體所在安全性群組中添加安全性群組規則:

  1. 禁止執行個體以任何協議訪問所有公網IP地址,優先順序應低於允許訪問的規則(如本例中設定優先權為2)。安全性群組規則如下表所示。
    網路類型 網卡類型 規則方向 授權策略 協議類型 通信埠範圍 授與類型 授權對象 優先順序
    VPC 不需要配置 出方向 拒絕 全部 -1/-1 地址段訪問 0.0.0.0/0 2
    經典網路 公網
  2. 允許執行個體訪問特定公網IP地址,優先順序應高於拒絕訪問的安全性群組規則的優先順序(如本例中設定為1)
    網路類型 網卡類型 規則方向 授權策略 協議類型 通信埠範圍 授與類型 授權對象 優先順序
    VPC 不需要配置 出方向 允許 選擇適用的協議類型 設定通信埠範圍 地址段訪問 允許執行個體訪問的特定公網IP地址,如1.2.3.4。 1
    經典網路 公網

添加了安全性群組規則後,在串連執行個體,執行 pingtelnet 等測試。如果執行個體只能訪問允許訪問的IP地址,說明安全性群組規則已經生效。

案例 5:允許遠端連線執行個體

允許遠端連線ECS執行個體分為兩種情況:

  • 場景 1:允許公網遠端連線指定執行個體
  • 場景 2:允許內網其他帳號下的某台ECS執行個體或所有ECS執行個體遠端連線指定執行個體
場景 1:允許公網遠端連線執行個體

如果要允許公網遠端連線執行個體,參考以下樣本添加安全性群組規則。

  • VPC:添加如下所示安全性群組規則。
    網路類型 網卡類型 規則方向 授權策略 協議類型 通信埠範圍 授與類型 授權對象 優先順序
    VPC 不需要設定 入方向 允許 Windows:RDP(3389) 3389/3389 地址段訪問 如果允許任意公網IP地址串連執行個體,填寫0.0.0.0/0。如果只允許特定IP地址遠端連線執行個體,參見 案例 3:只允許特定IP地址遠程登入到執行個體 1
    Linux:SSH(22) 22/22
    自訂TCP 自訂
  • 經典網路:添加如下表所示安全性群組規則。
    網路類型 網卡類型 規則方向 授權策略 協議類型 通信埠範圍 授與類型 授權對象 優先順序
    經典網路 公網 入方向 允許 Windows:RDP(3389) 3389/3389 地址段訪問 如果允許任意公網IP地址串連執行個體,填寫0.0.0.0/0。如果只允許特定公網IP地址串連執行個體,參見 案例 3:只允許特定IP地址遠程登入到執行個體 1
    Linux:SSH(22) 22/22
    自訂TCP 自訂

自訂遠端連線通信埠的詳細操作,請參見 伺服器預設遠程通信埠修改

場景 2:允許內網其他帳號下某個安全性群組內的ECS執行個體遠端連線您的執行個體

如果您的帳號與同地域其他帳號內網互通,而且您想允許內網其他帳號下某個安全性群組內的ECS執行個體遠端連線執行個體,按以下樣本添加安全性群組規則。

  • 允許內網其他帳號某個執行個體內網IP地址串連您的執行個體
    • VPC:先保證2個帳號的執行個體同账号VPC互连 ,再添加如下表所示的安全性群組規則。
      網路類型 網卡類型 規則方向 授權策略 協議類型 通信埠範圍 授與類型 授權對象 優先順序
      VPC 不需要設定 入方向 允許 Windows:RDP(3389) 3389/3389 地址段訪問 對方執行個體的私有IP地址 1
      Linux:SSH(22) 22/22
      自訂TCP 自訂
    • 經典網路:應添加如下表所示的安全性群組規則。
      網路類型 網卡類型 規則方向 授權策略 協議類型 通信埠範圍 授與類型 授權對象 優先順序
      經典網路 內網 入方向 允許 Windows:RDP(3389) 3389/3389 地址段訪問 對方執行個體的內網IP地址,出於安全性考慮,僅支援單IP授權,例如:a.b.c.d/32。 1
      Linux:SSH(22) 22/22
      自訂TCP 自訂
  • 允許內網其他帳號某個安全性群組裡的所有ECS執行個體串連您的執行個體
    • VPC類型的執行個體,先保證2個帳號的執行個體同账号VPC互连,再添加如下表所示的安全性群組規則。
      網路類型 網卡類型 規則方向 授權策略 協議類型 通信埠範圍 授與類型 授權對象 優先順序
      VPC 不需要設定 入方向 允許 Windows:RDP(3389) 3389/3389 安全性群組訪問(跨帳號授權) 對方ECS執行個體所屬的安全性群組ID,並填寫對方帳號ID 1
      Linux:SSH(22) 22/22
      自訂TCP 自訂
    • 經典網路執行個體,添加如下表所示的安全性群組規則。
      網路類型 網卡類型 規則方向 授權策略 協議類型 通信埠範圍 授與類型 授權對象 優先順序
      經典網路 內網 入方向 允許 Windows:RDP(3389) 3389/3389 安全性群組訪問(跨帳號授權) 對方ECS執行個體所屬的安全性群組ID,並填寫對方帳號ID 1
      Linux:SSH(22) 22/22
      自訂TCP 自訂

案例 6:允許公網通過HTTP、HTTPS等服務訪問執行個體

如果您在執行個體上架設了一個網站,希望您的使用者能通過HTTP或HTTPS服務訪問到您的網站,您需要在執行個體所在安全性群組中添加以下安全性群組規則。

  • VPC:假設允許公網上所有IP地址訪問您的網站,添加如下表所示的安全性群組規則。
    網路類型 網卡類型 規則方向 授權策略 協議類型 通信埠範圍 授與類型 授權對象 優先順序
    VPC 不需要配置 入方向 允許 HTTP(80) 80/80 地址段訪問 0.0.0.0/0 1
    HTTPS(443) 443/443
    自訂TCP 自訂,如8080/8080
  • 經典網路:假設允許公網上所有IP地址訪問您的網站,添加如下表所示的安全性群組規則。
    網路類型 網卡類型 規則方向 授權策略 協議類型 通信埠範圍 授與類型 授權對象 優先順序
    經典網路 公網 入方向 允許 HTTP(80) 80/80 地址段訪問 0.0.0.0/0 1
    HTTPS(443) 443/443
    自訂TCP 自訂,如8080/8080
说明