整合網路負載平衡器與安全群組
IBM Cloud® Network Load Balancer for VPC (NLB) 允許您綁定 安全群組,以強化應用程式的安全性。
以下資訊不適用於專用路徑網路負載平衡器。
安全群組是保護 NLB 實例安全的便利方式。 使用連接至負載平衡器的安全群組,您可以完全控制進出負載平衡器的接聽器及其目標的入埠及出埠資料流量。 目標可以直接使用負載平衡器的安全群組作為其自己安全群組定義中的來源,而不是使用其 IP 位址或 CIDR 範圍來識別負載平衡器。 這可確保自動容許來自所有負載平衡器應用裝置的資料流量,而不論其 IP 位址為何。
如果網路負載平衡器沒有相關聯的安全群組,則安全群組規則將容許所有資料流量,並在 VSI 層次 (根據 iptables 規則) 完成過濾。
網路資料流量規則
下表提供公用及專用網路負載平衡器的入埠及出埠資料流量的最佳作法。
公用網路負載平衡器
入埠規則
一般會容許從所有來源到公用負載平衡器上接聽器埠的入埠資料流量。 例如:
| 通訊協定 | 來源類型 | 來源 | 值 |
|---|---|---|---|
| TCP | IP 位址 | 0.0.0.0/0 |
Listener port |
不過,如果您需要限制入埠資料流量,則可以指定來源 CIDR,例如 209.173.53.167/20。 這可讓 IP 範圍內的所有公用 IP 位址呼叫到公用負載平衡器。 例如:
| 通訊協定 | 來源類型 | 來源 | 值 |
|---|---|---|---|
| TCP | IP 位址 | 209.173.53.167/20 |
Listener port |
出埠規則
請確定您的目標位於安全群組中,並在出埠規則中配置為目的地。 如需詳細資訊,請參閱 有關安全群組。
| 通訊協定 | 目的地類型 | 目的地 | 值 |
|---|---|---|---|
| TCP | 安全群組 | target |
target port |
| TCP | 安全群組 | target |
Health check port |
您可以將出埠規則配置成比顯示的更寬鬆 (例如,您可以容許所有傳輸至任何目的地)。 不過,基於安全理由,不建議這麼做。
專用網路負載平衡器
入埠規則
| 通訊協定 | 來源類型 | 來源 | 值 |
|---|---|---|---|
| TCP | IP 位址 | Subnet CIDR or VPC security group |
Listener port |
一般作法是將專用負載平衡器的入埠規則限制為您自己的工作量。 請確定您指定來自特定子網路 CIDR 的來源,或來源裝置所屬的安全群組。 最好使用特定的 CIDR;但是,個別 IP 位址也可以。 如需詳細資訊,請參閱 有關安全群組。
出埠規則
| 通訊協定 | 目的地類型 | 目的地 | 值 |
|---|---|---|---|
| TCP | 安全群組 | Target security group |
Target port |
| TCP | 安全群組 | Target security group |
Health check port(如果與目標埠不同) |
請確保目標位於安全群組中,並在出埠規則中配置為目的地。 如需詳細資訊,請參閱 有關安全群組。
此外,您的目標必須具有與 DNS 解析器的連線功能,才能解析負載平衡器的名稱。 這是因為負載平衡器是透過其 DNS 名稱來存取。
在負載平衡器佈建期間連接安全群組
建立網路負載平衡器時,您最多可以連接五個安全群組。 如果在建立負載平衡器期間未指定安全群組,則會使用 VPC 的預設安全群組。
如果您未選取至少一個安全群組,則應該更新預設安全群組規則,以將新建立的網路負載平衡器上的資料流量中斷減至最少。
必要條件: 配置安全群組和規則
請確定您已建立要連接至 NLB 的安全群組。 也請確定已針對負載平衡器資料流量配置其規則。 如果您需要建立安全群組,請執行下列程序。
此外,您也可以使用 IBM Cloud VPC API 來建立安全群組。
若要使用使用者介面來建立安全群組,請執行下列動作:
-
請在瀏覽器中開啟 IBM Cloud 控制台,並登入您的帳戶。
-
選取導覽功能表
,然後按一下基礎結構
> 網路 > 安全群組。
-
按一下建立。
-
請為您的安全群組指定一個唯一的名稱。
-
選取安全群組的 VPC。 必須在與負載平衡器相同的 VPC 中建立安全群組。
-
按一下「新增」以設定入站與出站規則,用以定義允許哪些類型的流量進出該安全群組。 針對每項規則,請填寫以下資訊:
- 為允許的資料流量指定 CIDR 區塊或 IP 位址。 此外,您也可以在同一 VPC 中指定一個安全群組,以允許與該安全群組關聯的所有來源之間的流量進出。
- 選取要套用規則的通訊協定及埠。 如需網路規則的最佳作法,請參閱 網路資料流量規則。
提示:
- 所有規則都會被評估,無論它們是按什麼順序加入的。
- 規則是有狀態的,表示會自動允許回應所容許資料流量的傳回資料流量。 舉例來說,若您建立一條規則,允許透過 80 號埠接收來自 TCP 的傳入流量,該規則也會自動允許透過 80 號埠發送回傳至原始主機的 TCP 傳出流量,無需另行建立規則。
-
選用項目: 如果您計劃將此安全群組套用至其他實例,請編輯介面。 在負載平衡器區段中執行連接安全群組。
-
完成建立規則之後,請按一下 建立安全群組。
安全群組範例
例如,請設定以下進站規則,允許 TCP 監聽器( TCP 埠 80)上的所有流量。
| 通訊協定 | 來源類型 | 來源 | 值 |
|---|---|---|---|
| TCP | 全部 | 0.0.0.0/0 |
埠 80 |
接著,請設定出站規則,允許 TCP 的流量傳輸至您的目標:
| 通訊協定 | 目的地類型 | 目的地 | 值 |
|---|---|---|---|
| TCP | 全部 | 10.11.12.13/32 (目標 IP 位址) |
80 (目標埠) |
| TCP | 全部 | 10.11.12.14/32 (目標 IP 位址) |
80 (目標性能檢查埠) |
程序: 在 NLB 建立期間連接安全群組
若要在 建立網路負載平衡器 時連接安全群組,請遵循下列步驟:
- 請在瀏覽器中開啟 IBM Cloud 控制台,並登入您的帳戶。
- 選取導覽功能表
,然後按一下 Infrastructure
> Network > Load balancers。
- 按一下建立。
- 視需要配置名稱、VPC、類型、子網路、接聽器及儲存區。
- 從安全群組表格中選取您要附加的安全群組的勾選框。
- 按一下 建立 以佈建負載平衡器。
請確定您的安全群組規則容許負載平衡器資料流量。 請確保安全群組中容許您的接聽器、儲存區及性能檢查埠。
連接及分離安全群組
若要將安全群組連接至現有負載平衡器,請遵循下列步驟:
在 07 August 2023 之前建立的負載平衡器未連接安全群組,且容許所有入埠及出埠資料流量。 如果您將安全群組連接至沒有安全群組的負載平衡器,則永遠無法移除它。 您可以透過附加具有容許所有入埠及出埠資料流量之規則的安全群組,來回復先前的「容許所有入埠及出埠資料流量」行為。 不過,此規則本來就不安全,因此不建議使用。
- 請在瀏覽器中開啟 IBM Cloud 控制台,並登入您的帳戶。
- 選取導覽功能表
,然後按一下 Infrastructure
> Network > Load balancers。
- 從負載平衡器清單中,選取負載平衡器以檢視其詳細資料頁面。
- 按一下 附加的安全群組 標籤,以檢視附加的安全群組。
- 若要連接一或多個安全群組,請按一下 連接。 您最多可以選取五個安全群組來連接至 NLB。
- 選取要連接的安全群組。
- 按一下連接。
若要從負載平衡器分離安全群組,請遵循下列步驟:
- 請在瀏覽器中開啟 IBM Cloud 控制台,並登入您的帳戶。
- 選取導覽功能表
,然後按一下 Infrastructure
> Network > Load balancers。
- 從負載平衡器清單中,選取負載平衡器以檢視其詳細資料頁面。
- 按一下 附加的安全群組 標籤,以檢視附加的安全群組。
- 若要分離安全群組,請按一下安全群組的「動作」功能表
。
- 按一下分離。