本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用安全群組控制 AWS 資源的流量
安全群組負責控制允許到達和離開其關聯資源的流量。例如,將安全群組與 EC2 執行個體建立關聯後,它會控制執行個體的傳入和傳出流量。
當您建立 VPC 時,它會隨附一個預設安全群組。您可以為 VPC 建立其他安全群組,每個群組都有自己的傳入和傳出規則。您可以為每個傳入規則指定來源、連接埠範圍和通訊協定。您可以為每個傳出規則指定目的地、連接埠範圍和通訊協定。
下圖顯示具有子網路、網際網路閘道和安全群組的 VPC。子網路包含 EC2 執行個體。指派給執行個體的安全群組。安全群組會做為虛擬防火牆。僅有安全群組規則允許的流量才能到達執行個體。例如,如果安全群組包含規則,允許 ICMP 流量從網路傳送至執行個體,則您可以從電腦 ping 執行個體。如果安全群組不包含允許 SSH 流量的規則,則無法使用 SSH 連線至執行個體。
定價
使用安全群組無需額外收費。
安全群組基礎知識
-
您只能將安全群組指派給與安全群組在相同 VPC 中建立的資源。您可以將多個安全群組指派資源。
-
當您建立安全群組時,您必須提供名稱和描述。適用的規定如下:
-
安全群組名稱在 VPC 中必須是唯一的。
-
名稱和描述的長度最多可達 255 個字元。
-
名稱和描述僅能使用下列字元:a-z、A-Z、0-9、空格,以及 ._-:/()#,@[]+=&;{}!$*。
-
當名稱包含結尾空格時,我們會裁剪名稱結尾處的空格。例如,如果您輸入「測試安全群組」做為名稱,我們會將其儲存為「測試安全群組」。
-
安全群組名稱的開頭不能是
sg-
。
-
-
安全群組具狀態。例如,若您從執行個體傳送請求,則允許該請求的回應流量到達執行個體,不論傳入安全群組規則為何。都會允許對允許傳入流量的回應離開執行個體,不論傳出規則為何。
-
安全群組不會篩選往返下列位置的流量:
-
Amazon Domain Name Services (DNS)
-
Amazon 動態主機組態通訊協定 (DHCP)
-
Amazon EC2 執行個體中繼資料
-
Amazon ECS 任務中繼資料端點
-
Windows 執行個體的授權啟動
-
Amazon Time Sync Service
-
預設 VPC 路由器使用的預留 IP 地址
-
-
您可以為每個 VPC 建立的安全群組數量、可新增至每個安全群組的規則數量,以及可與網路介面建立關聯的安全群組數量有配額。如需詳細資訊,請參閱Amazon VPC 配額。
最佳實務
-
僅授權特定 IAM 主體來建立和修改安全群組。
-
建立您需要的最小數量的安全群組,以降低發生錯誤的風險。使用每個安全群組來管理對具有類似功能和安全要求之資源的存取權。
-
當您新增連接埠 22 (SSH) 或 3389 (RDP) 的傳入規則,以便存取 EC2 執行個體時,請僅授權特定的 IP 地址範圍。如果您指定 0.0.0.0/0 (IPv4) 和 ::/ (IPv6),這可讓任何人使用指定的通訊協定從任何 IP 地址存取執行個體。
-
請勿開啟較大的連接埠範圍。確保透過每個連接埠進行的存取僅限於需要連接埠的來源或目的地。
-
請考慮使用類似安全群組的規則建立網路 ACLs,以為您的 VPC 增加額外的安全層。如需安全群組與網路 ACLs 之間差異的詳細資訊,請參閱 比較安全群組和網路 ACLs。
安全群組範例
下圖顯示具有兩個安全群組和兩個子網路的 VPC。子網路 A 中的執行個體具有相同的連線需求,因此與安全群組 1 相關聯。子網路 B 中的執行個體具有相同的連線需求,因此與安全群組 2 相關聯。安全群組規則允許流量如下:
-
安全群組 1 中的第一個傳入規則允許 SSH 流量從指定的地址範圍 (例如,您自己的網路中的範圍) 到子網路 A 中的執行個體。
-
安全群組 1 中的第二個輸入規則允許子網路 A 中的執行個體使用任何通訊協定和連接埠相互通訊。
-
安全群組 2 中的第一個輸入規則允許子網路 B 中的執行個體使用任何通訊協定和連接埠相互通訊。
-
安全群組 2 中的第二個傳入規則允許子網路 A 中的執行個體使用 SSH 與子網路 B 中的執行個體通訊。
-
兩個安全群組均使用預設傳出規則,允許所有流量。