建立及管理 VPC 安全群組

虛擬私有雲 4.15 後來

在叢集建立期間新增安全群組

當您建立 VPC 叢集時,會自動建立名為 kube-<clusterID> 的預設工作程式安全群組,並將其套用至叢集裡的所有工作程式。 您也可以將其他安全群組與預設工作者安全群組一起附加。 套用至叢集裡的工作者節點的安全群組是建立叢集及建立工作者節點儲存區時所套用之安全群組的組合。 您的叢集最多可套用五個安全性群組。

一旦建立叢集,就無法變更套用至叢集的安全群組。 您可以變更套用至叢集之安全群組的規則,但無法在叢集層次新增或移除安全群組。 如果您在建立叢集時套用不正確的安全群組,則必須刪除叢集並建立新的叢集。

如果您只想要預設安全群組

建立叢集時,請勿指定任何其他安全群組。

 ibmcloud oc cluster create vpc-gen2 --name CLUSTER-NAME --zone ZONE --vpc-id VPC-ID --subnet-id SUBNET-ID

檢視安全群組

遵循步驟以檢視 VPC 安全群組的相關詳細資料。

  1. 列出叢集,並記下您正在其中工作之叢集的 ID

    若要檢查叢集位於哪個 VPC 中,請執行 ibmcloud oc cluster get --cluster <cluster_name_or_id> 並檢查輸出中的 VPC ID

    ibmcloud oc cluster ls --provider vpc-gen2
    
  2. 列出連接至叢集所在 VPC 的安全群組。 VPC 安全群組會獲指派隨機產生的名稱,例如 trench-hexagon-matriarch-flower。 叢集安全群組以 kube-<cluster-ID> 格式命名。

    ibmcloud is sgs | grep <vpc_name>
    

    輸出範例

    ID                                          Name                                             Rules   Network interfaces   VPC                          Resource group   
    r006-111aa1aa-1a1a-1a11-1111-a111aaa1a11a   trench-hexagon-matriarch-flower                    4       0                    my-vpc                      default   
    r006-222aa2aa-2a2a-2a22-2222-a222aaa2a22a   kube-a111a11a11aa1aa11a11                          4       0                    my-vpc                      default   
    r006-333aa3aa-3a3a-3a33-3333-a333aaa3a33a   kube-r006-111a11aa-aaa1-1a1a-aa11-1a1a111aa11      4       0                    my-vpc                      default   
    
  3. 取得安全群組的詳細資料。 在輸出中尋找 Rules 區段,以檢視附加至安全群組的入埠及出埠規則。

    ibmcloud is sg GROUP
    

    輸出範例

    ...
    Rules      
    ID                                          Direction   IP version   Protocol                  Remote   
    r006-111bb1bb-1b1b-1b11-1111-b111bbb1b11b   outbound    ipv4         all                       0.0.0.0/0   
    r006-222bb2bb-2b2b-2b22-2222-b222bbb2b22b   inbound     ipv4         all                       behind-unbuilt-guidable-anthill   
    r006-333bb3bb-3b3b-3b33-3333-b333bbb3b33b   inbound     ipv4         icmp Type=8               0.0.0.0/0   
    r006-444bb4bb-4b4b-4b44-4444-b444bbb4b44b   inbound     ipv4         tcp Ports:Min=22,Max=22   0.0.0.0/0
    

在主控台中檢視安全群組

  1. VPC 的安全群組儀表板中,尋找連接至叢集所在 VPC 的安全群組。

  2. 按一下安全群組。

    若要依安全群組所連接的 VPC 來排序安全群組,請按一下表格中的 Virtual Private Cloud 直欄標題。

  3. 若要檢視附加至安全群組的入埠及出埠規則,請按一下 規則 標籤。

在主控台中建立安全群組規則

  1. 虛擬專用雲端儀表板中,按一下叢集所在 VPC 的 預設安全群組 名稱。

  2. 點選「規則」索引標籤。

    • 若要建立新的入埠規則以控制工作者節點的入埠資料流量,請在「入埠規則」區段中按一下 建立
    • 若要建立新規則來控制工作者節點的出站流量,請在 Outbound rules(出站規則 )區段中,按一下 Create(建立 )。

    新增規則後,請勿刪除允許控制台所有出站流量的預設值。 相反,請從 CLI 執行 ibmcloud is security-group-rule-delete 指令來移除該規則。

在指令行中建立安全群組規則

使用 IBM Cloud CLI,為您的叢集預設安全群組新增進站與出站規則。

  1. 安裝「infrastructure-service」外掛程式。 用於執行指令的字首是 ibmcloud is
    ibmcloud plugin install infrastructure-service
    
  2. 請選擇您的 VPC 所處的區域。
    ibmcloud target -r REGION
    
  3. 取得您的叢集 ID
    ibmcloud oc cluster get -c CLUSTER
    
  4. 列出您的安全群組,並註明 ID
    ibmcloud is sgs
    
    隨機產生名稱 chamomile-dislodge-showier-unfilled 之 VPC 的預設安全群組輸出範例。
    ID                                          Name                                       Rules   Network interfaces   VPC          Resource group
    1a111a1a-a111-11a1-a111-111111111111        chamomile-dislodge-showier-unfilled        5       2                    events-vpc   default
    2b222b2b-b222-22b2-b222-222222222222        kube-df253b6025d64744ab99ed63bb4567b6      5       3                    gen2-vpn     default
    
  5. 將安全群組 ID 儲存為環境變數。
    sg=GROUP
    
  6. 檢閱安全群組的預設規則。
    ibmcloud is sg $sg
    
        ibmcloud is sg-rulec $sg inbound <protocol> [--remote <remote_address> | <CIDR_block> | <security_group_ID>] [--icmp-type <icmp_type> [--icmp-code <icmp_code>]] [--port-min <port_min>] [--port-max <port_max>]
        ```
    
    * 若要建立出埠資料流量規則,請使用 [`ibmcloud is sg-rulec <sg> outbound` 指令](/docs/vpc?topic=vpc-creating-vpc-resources-with-cli-and-api&interface=cli#add-rules-to-default-security-group)。
    
    ```sh {: pre}
        ibmcloud is sg-rulec $sg outbound <protocol> [--remote <remote_address> | <CIDR_block> | <security_group_ID>] [--icmp-type <icmp_type> [--icmp-code <icmp_code>]] [--port-min <port_min>] [--port-max <port_max>]
        ```
        1. 建立自訂出埠規則之後,取得容許所有出埠資料流量的預設規則 ID。
    
            ```sh {: pre}
            ibmcloud is sg $sg
            ```
            輸出範例
            ```sh {: screen}
            Rules
            ID                                          Direction   IP version   Protocol                        Remote
            r010-e3a34cbb-d5e8-4713-a57e-3e35a7458272   inbound     ipv4         all                             freeload-flavored-surging-repaying
            r010-036c3a13-1c16-4425-9667-a4ec34b1702b   inbound     ipv4         icmp Type=8                     0.0.0.0/0
            r010-15591636-6976-493f-a94f-70721702860a   inbound     ipv4         tcp Ports:Min=22,Max=22         0.0.0.0/0
            ```
        1. 刪除容許所有出埠資料流量的預設規則。
    
            ```sh {: pre}
            ibmcloud is security-group-rule-delete $sg <rule_ID>
            ```