С помощью приведенного ниже шаблона CloudFormation я могу подключиться по SSH к экземпляру EC2.
PublicSecurityGroup:
Type: AWS::EC2::SecurityGroup
Properties:
GroupName: PublicSecurityGroup
GroupDescription: Public Security Group
VpcId:
Ref: Vpc
SecurityGroupEgress:
- IpProtocol: "-1"
FromPort: 0
ToPort: 65535
CidrIp: 0.0.0.0/0
SecurityGroupIngress:
- IpProtocol: tcp
FromPort: 22
ToPort: 22
CidrIp: 0.0.0.0/0
PublicEc2Instance:
Type: AWS::EC2::Instance
Properties:
ImageId:
Ref: ImageId
InstanceType:
Ref: InstanceType
KeyName:
Ref: KeyName
SecurityGroupIds:
- Fn::GetAtt:
- PublicSecurityGroup
- GroupId
SubnetId:
Ref: PublicSubnet
Tags:
- Key: Name
Value: PublicEc2Instance
Когда я изменяю определение SecurityGroup
на приведенную ниже структуру
PublicSecurityGroup:
Type: AWS::EC2::SecurityGroup
Properties:
GroupName: PublicSecurityGroup
GroupDescription: Public Security Group
VpcId:
Ref: Vpc
PublicOutboundRule1:
Type: AWS::EC2::SecurityGroupEgress
Properties:
GroupId: !Ref PublicSecurityGroup
SourceSecurityGroupId: !Ref PublicSecurityGroup
IpProtocol: "-1"
FromPort: 0
ToPort: 65535
PublicInboundRule1:
Type: AWS::EC2::SecurityGroupIngress
Properties:
GroupId: !Ref PublicSecurityGroup
SourceSecurityGroupId: !Ref PublicSecurityGroup
IpProtocol: tcp
FromPort: 22
ToPort: 22
Я больше не могу использовать SSH в экземпляре EC2.
Почему экстернализация SecurityGroupEgress
и SecurityGroupIngress
блокирует доступ SSH к EC2?
Благодарю вас!