要管理 EC2 instance 的網路存取, Amazon Web Services (AWS) 提供多種機制,協助你允許或封鎖特定 IP 位址。以下是一份一步一步的指南,教你如何控制 EC2 instances 的存取權限:
了解 Security Groups 與 Network ACLs
在進入細節之前,你需要先理解兩個重要的 AWS 元件:Security Groups 與 Network Access Control Lists(ACLs)。
- AWS 安全群組(Security Groups):它們就像是 EC2 instances 的虛擬防火牆,在 instance 層級 控制 inbound 與 outbound 流量。
- AWS 網路存取控制清單(Network ACLs):它們在 subnet 層級 提供一層安全防護,用來控制進出一個或多個 subnets 的流量。
什麼是 Inbound 與 Outbound Rules?
Inbound:這些規則用來控制「進入」EC2 instance 的網路流量。Inbound rules 會定義哪些流量可以進到 instance。舉例來說,如果你的 EC2 instance 上有運行 web server,你就會設定 inbound rule 允許 port 80(HTTP)與 443(HTTPS)的流量,讓使用者可以存取你的網站。
Outbound:這些規則用來控制「離開」EC2 instance 的網路流量。Outbound rules 會指定哪些流量可以從 instance 對外送出。舉例來說,如果你的應用程式需要存取外部的 database 或 API,你就會設定 outbound rule,允許流量連到該 database 或 API 所在的特定 IP 位址或 port。
使用 Security Groups 在 EC2 instance 上允許或封鎖 IP 的操作步驟
- 登入你的 AWS console,並進到 EC2 服務。接著點擊「Instances」,查看目前可用的 instances。

- 接著選擇你想要允許 IP 的 instance,並切換到「Security」分頁。

- 在這裡你會看到有哪些「Security groups」已經套用到你的 EC2 instance。你也可以看到所有 inbound 與 outbound rules。現在點擊「Security groups」的名稱,進入該 security group。

- 接著選擇你需要的 Inbound/Outbound rules。本例將示範如何封鎖所有 IP 存取你的 EC2 SSH(Inbound),只保留你自己的 IP 可以連線。現在選擇 Inbound Rules,並點擊「Edit inbound rules」。

- SSH 通常會預設建立。在「Source」欄位點擊下拉選單,選擇「My IP」。

- 點擊「Save rules」。這樣就只允許你存取 SSH。若要封鎖特定 IP,請確保你沒有把它們放進允許的規則中。因為 AWS Security Groups 是 stateful,並且採用 whitelist(白名單)模型,也就是除了你明確允許的流量之外,其它都會被拒絕。若要封鎖特定 IP,請確保你沒有把它們放進允許的規則中。
使用 Network ACLs 在 EC2 實例 上允許或封鎖 IP 的操作步驟
- 登入你的 AWS console,並進到 EC2 服務。接著點擊「Instances」,查看目前可用的 instances。

- 接著選擇你想要允許/封鎖 IP 的 instance。在詳細資訊區塊點擊「Subnet ID」。

- 進到 subnet 後,切換到「Network ACL」分頁,並點擊「Network ACL」名稱。

- 接著再點一次「Network ACL ID」。切換到「Inbound rules」分頁,並點擊「Edit inbound rules」。這裡我們要拒絕來自某個特定 IP CIDR 的所有流量。

- 現在點擊「Add new rule」。設定一個「Rule number」(rule number 代表規則執行的順序,會以數字由小到大決定優先順序)。這裡填「90」,因為我們已經有一條 rule number 為 100 的規則;要拒絕某個 IP,就必須用更小的數字,讓拒絕規則先被執行。接著在「Source」填入該 IP CIDR,並在「Allow/Deny」選擇「Deny」。完成後點擊「Save Changes」。

這個變更會立即生效。Network ACLs 是 stateless,而且在預設情況下,Network ACL rules 會允許雙向的所有流量。
結論
透過正確使用 Security Groups 與 Network ACLs,你可以非常精準地控制誰能存取你的 EC2 instances。請隨時記得在安全性與功能性之間取得平衡,確保你的設定不會不小心擋到合法流量,或讓你的 instances 暴露在不必要的風險中。
🔐 擔心你的 EC2 instances 安全性嗎?
勤英科技 提供 Amazon EC2 資安強化的專業建議,涵蓋從 IAM roles、security groups 到加密(encryption)、修補(patching),以及正式環境(production environments)的最佳實務。
👉 立即預約勤英科技顧問,讓你的 EC2 workloads 在兼顧信心、合規(compliance)的前提下完成加固!



