AWS Transfer Server VPC模式Terraform部署遇默认安全组错误
问题原因
报错的核心原因是你指定的VPC(vpc-008ef7e599)的默认安全组已被删除。尽管AWS文档说明endpoint_type设为"VPC"时无需手动指定安全组,但Transfer Family服务在创建VPC端点时,会默认尝试关联该VPC的默认安全组;如果这个默认组不存在,就会触发该错误。
解决方案
你可以通过以下两种方式解决:
方式一:恢复VPC的默认安全组
- 登录AWS EC2控制台,进入「安全组」页面
- 点击「创建安全组」,配置如下:
- 名称:输入
default - 描述:输入
Default security group - VPC:选择目标VPC(vpc-008ef7e599)
- 入站规则:添加规则,允许所有来自该VPC内部的流量(源选择该VPC的CIDR,协议选所有)
- 出站规则:保持默认的允许所有流量即可
- 名称:输入
- 创建完成后,这个安全组会自动成为该VPC的默认安全组,重新执行Terraform部署即可。
方式二:手动指定安全组到Terraform配置
在你的aws_transfer_server资源块的vpc_settings中添加security_group_ids参数,指定一个或多个属于目标VPC的有效安全组ID。示例配置如下:
resource "aws_transfer_server" "your_server" { endpoint_type = "VPC" vpc_settings { subnet_ids = ["subnet-xxxxxx", "subnet-yyyyyy"] # 你的子网ID security_group_ids = ["sg-xxxxxx"] # 替换为你在该VPC中存在的安全组ID } # 其他配置项... }
注意:指定的安全组需要开放Transfer Family服务所需的端口(比如SFTP用22端口),同时配置合理的出站规则以满足业务需求。
内容的提问来源于stack exchange,提问作者Moses01
相关产品推荐
相关产品推荐

