AWS CLI新手配置凭证后无法连接iam.af-south-1.amazonaws.com,如何排查?
问题排查步骤
核心原因先明确
IAM是AWS的全局管理服务,不是所有区域都有专属的IAM端点,af-south-1(开普敦)区域根本没有独立的IAM服务端点,所以你用这个区域调用IAM命令时,CLI尝试访问的https://iam.af-south-1.amazonaws.com/本身就是不存在的地址,自然连不上。
具体排查&解决步骤
直接测试全局/可用区域的IAM端点
先绕开默认区域,执行指定区域的IAM命令试试,比如用us-east-1(这个区域有IAM端点):aws iam list-users --region us-east-1或者直接用全局IAM端点:
aws iam list-users --endpoint-url https://iam.amazonaws.com如果这两个命令能正常执行,说明核心问题就是区域选错了。
调整CLI默认区域或命令指定区域
如果你平时主要操作af-south-1的其他资源(比如EC2、S3),可以保留默认区域为af-south-1,但执行IAM命令时必须手动指定--region us-east-1或者全局端点;如果经常用IAM命令,也可以修改默认区域为us-east-1,操作其他区域资源时再单独指定--region af-south-1。验证网络连通性
用curl测试全局和us-east-1的IAM端点是否能访问:curl -v https://iam.amazonaws.com curl -v https://iam.us-east-1.amazonaws.com如果这两个地址能通,但af-south-1的IAM地址不通,就坐实了端点不存在的问题;如果这两个也不通,那可能是网络防火墙/代理拦截了这些地址,需要检查本地或公司网络的规则。
检查AWS CLI版本
旧版本的CLI可能对区域端点的映射有错误,执行aws --version查看版本,要是版本比较老(比如v1.x的旧版本),建议更新到最新版,避免因为版本问题导致的端点解析错误。
内容的提问来源于stack exchange,提问作者Moses
相关产品推荐
相关产品推荐

