AWS EC2安全组规则怎么配置?怎样只允许特定IP访问80端口?

文章导读
最稳妥的做法是在 EC2 关联的安全组入站规则中,将 80 端口的源地址设置为你的特定 IP 地址(CIDR 格式 /32),并移除原本开放的 0.0.0.0/0 规则。
📋 目录
  1. A 命令速用版
  2. B 为什么会这样
  3. C 分步处理
A A

最稳妥的做法是在 EC2 关联的安全组入站规则中,将 80 端口的源地址设置为你的特定 IP 地址(CIDR 格式 /32),并移除原本开放的 0.0.0.0/0 规则。

先说结论:安全组默认拒绝所有入站流量,需显式添加允许规则。限制 80 端口仅对特定 IP 开放可降低被扫描和攻击的风险,但操作不当会导致无法访问服务

  • 先判断:确认当前操作机器的公网 IP,并确保该 IP 在允许列表中后再删除旧规则,避免锁死。
  • 优先做:在入站规则中添加 TCP 80 端口,源设置为你的公网 IP/32。
  • 再验证:修改后立即使用外部网络测试端口连通性,确保规则生效且未误锁。

命令速用版

如果你习惯使用 AWS CLI,可以通过以下命令快速添加规则。请将 sg-12345678 替换为你的安全组 ID,203.0.113.0 替换为允许访问的具体 IP。

AWS EC2安全组规则怎么配置?怎样只允许特定IP访问80端口?
aws ec2 authorize-security-group-ingress \
    `--group-id` sg-12345678 \
    `--protocol` tcp \
    `--port` 80 \
    `--cidr` 203.0.113.0/32

若要删除原本开放的 0.0.0.0/0 规则,需先查看现有规则详情,确认新规则生效后,再使用 revoke-security-group-ingress 命令移除。

为什么会这样

AWS 安全组(Security Group)充当实例的虚拟防火墙,控制进出流量。它的核心机制是“白名单”:默认情况下,所有入站流量都被拒绝,只有你明确允许的规则才会放行。

AWS EC2安全组规则怎么配置?怎样只允许特定IP访问80端口?

将源地址设置为 0.0.0.0/0 意味着允许互联网上任何 IP 访问该端口,这会暴露服务给全网扫描器。限制为特定 IP(CIDR 后缀为 /32 表示单个 IP)可以显著减少攻击面,只允许可信来源连接。

分步处理

以下是通过 AWS 管理控制台进行配置的具体步骤,请严格按顺序操作以防失联:

  1. 查询当前公网 IP:在浏览器搜索"what is my ip",记录当前操作机器的公网 IP 地址。注意:必须是当前用来管理 AWS 控制台这台机器的 IP,否则保存后你将无法访问服务。
  2. 找到安全组:登录 AWS 控制台,进入 EC2 Dashboard,在左侧菜单选择“安全组”。找到关联到你目标实例的安全组 ID。
  3. 编辑入站规则:选中该安全组,点击下方的“入站规则”标签页,然后点击“编辑入站规则”。
  4. 添加特定 IP 规则:
    • 点击“添加规则”。
    • 类型选择