使用云形成创建安全组时出现 'Property IpProtocol cannot be empty' 错误
Getting 'Property IpProtocol cannot be empty' error while creating security group using cloud formation
我正在 AWS 上使用云形成创建基本安全组,但我收到 属性 IpProtocol cannot be empty. 错误。以下是我运行ning:
的yml代码
Resources:
testsecuritygroup:
Type: AWS::EC2::SecurityGroup
Properties:
GroupName: test-group
GroupDescription: test security group
SecurityGroupIngress:
- IpProtocol: tcp
FromPort: 80
ToPort: 80
- SourceSecurityGroupId: sg-xxxxxxxxxx
SecurityGroupEgress:
- IpProtocol: tcp
FromPort: 80
ToPort: 80
CidrIp: 0.0.0.0
Tags:
- Key: group
Value: test
VpcId: !ImportValue VPC
当我 运行 create-stack 命令时,它 运行ning 成功但堆栈回滚 CREATE_FAILED 状态和 属性 IpProtocol cannot be empty 错误。我在这里做错了什么?
您的 cidr 无效。应该是 0.0.0.0/0
我解决了这个问题。要添加安全组,我们必须创建一个 Ingress 规则并将其附加到安全组,而不是在安全组中定义它。
Resources:
test:
Type: AWS::EC2::SecurityGroup
Properties:
VpcId: !ImportValue VPC
GroupName: test-group
GroupDescription: test security group
SecurityGroupEgress:
- IpProtocol: tcp
FromPort: 80
ToPort: 80
CidrIp: 0.0.0.0/0
Tags:
- Key: group
Value: test
TestInboundRule:
Type: AWS::EC2::SecurityGroupIngress
Properties:
GroupId: !GetAtt test.GroupId
IpProtocol: tcp
FromPort: 80
ToPort: 80
SourceSecurityGroupId: sg-xxxxxxxxx
我正在 AWS 上使用云形成创建基本安全组,但我收到 属性 IpProtocol cannot be empty. 错误。以下是我运行ning:
的yml代码Resources:
testsecuritygroup:
Type: AWS::EC2::SecurityGroup
Properties:
GroupName: test-group
GroupDescription: test security group
SecurityGroupIngress:
- IpProtocol: tcp
FromPort: 80
ToPort: 80
- SourceSecurityGroupId: sg-xxxxxxxxxx
SecurityGroupEgress:
- IpProtocol: tcp
FromPort: 80
ToPort: 80
CidrIp: 0.0.0.0
Tags:
- Key: group
Value: test
VpcId: !ImportValue VPC
当我 运行 create-stack 命令时,它 运行ning 成功但堆栈回滚 CREATE_FAILED 状态和 属性 IpProtocol cannot be empty 错误。我在这里做错了什么?
您的 cidr 无效。应该是 0.0.0.0/0
我解决了这个问题。要添加安全组,我们必须创建一个 Ingress 规则并将其附加到安全组,而不是在安全组中定义它。
Resources:
test:
Type: AWS::EC2::SecurityGroup
Properties:
VpcId: !ImportValue VPC
GroupName: test-group
GroupDescription: test security group
SecurityGroupEgress:
- IpProtocol: tcp
FromPort: 80
ToPort: 80
CidrIp: 0.0.0.0/0
Tags:
- Key: group
Value: test
TestInboundRule:
Type: AWS::EC2::SecurityGroupIngress
Properties:
GroupId: !GetAtt test.GroupId
IpProtocol: tcp
FromPort: 80
ToPort: 80
SourceSecurityGroupId: sg-xxxxxxxxx