AWS控制台出现授权错误,security group修改不生效Apache无法加载
AWS控制台授权报错+安全组变更不生效问题解决方案
触发的报错信息
User: arn:aws:sts::276097608444:assumed-role/vocstartsoft/user1553276=pawar.jitendra@iiitg.ac.in is not authorized to perform: compute-optimizer:GetEnrollmentStatus on resource: * with an explicit deny
该报错含义为当前使用的IAM角色缺少Compute Optimizer服务的获取注册状态权限,且权限被策略显式拒绝。
问题现象
- 修改安全组规则后控制台未显示变更内容
- 无法正常访问EC2实例上部署的Apache服务
解决方案
1. 授权报错修复步骤
- 检查当前关联的
vocstartsoft角色的权限策略,排查是否存在包含Effect: Deny、且覆盖compute-optimizer:GetEnrollmentStatus操作的策略条目,移除对应拒绝配置即可 - 若使用AWS组织账号,需要联系组织管理员检查SCP(服务控制策略),移除组织层面对该操作的显式拒绝规则
- 若不需要使用Compute Optimizer服务,可在控制台关闭该服务的自动提示,避免后续触发该报错
2. 安全组变更不生效、Apache无法访问修复步骤
- 安全组规则修改后存在1-2分钟的传播延迟,修改完成后等待2分钟再刷新控制台确认规则是否同步
- 确认目标安全组的入站规则已经开放Apache默认端口:80(HTTP)、443(HTTPS),源地址配置符合你的访问场景(如公网访问可配置为
0.0.0.0/0,仅限本地访问则配置为你的公网出口IP) - 确认目标EC2实例已经绑定你修改的安全组,避免误修改未关联的安全组导致规则不生效
- 登录EC2实例执行命令
sudo systemctl status httpd检查Apache服务运行状态,排查服务启动失败、端口冲突、配置文件错误的问题
应急绕过方案
如果遇到AWS控制台自动跳转无法打开服务器访问链接的情况,手动复制EC2实例的公网IP/公网DNS到浏览器地址栏访问即可。
内容的提问来源于stack exchange,提问作者iyushh
相关产品推荐
相关产品推荐

