Tôi có một ngăn xếp cfn (trong số những thứ khác), tạo VPC, một số nhóm bảo mật và một số phiên bản EC2. Việc gán các nhóm bảo mật được tạo trong ngăn xếp cho các trường hợp cũng được tạo bởi ngăn xếp là chuyện nhỏ. Tuy nhiên, tôi quan tâm đến VPC SG mặc định.
Khi một VPC được tạo (cho dù là thủ công qua GUI, bằng thông tin đám mây hoặc bất kỳ phương tiện nào khác), AWS sẽ tạo một nhóm bảo mật mặc định với quy tắc "cho phép tất cả" cho bất kỳ trường hợp nào trong nhóm đó.
Những gì tôi đang cố gắng làm là gán nhóm bảo mật mặc định này cùng với một số SG khác cho các trường hợp được tạo bởi ngăn xếp. Điều này đang chứng tỏ là khó khăn hơn nhiều so với tôi dự đoán. Dưới đây là một số đoạn trích cho thấy những gì tôi đang diễn ra:
"AllowSSHSecGroup":{
"Type":"AWS::EC2::SecurityGroup",
"Properties":{
"GroupDescription":"Allow SSH from anywhere",
"VpcId":{
"Ref":"DevVPC"
},
"SecurityGroupIngress":[
{
"IpProtocol":"tcp",
"FromPort":"22",
"ToPort":"22",
"CidrIp":"0.0.0.0/0"
}
]
}
},
"Instance001" : {
"Type" : "AWS::EC2::Instance",
"Properties" : {
"ImageId" : "ami-7eab224e",
"InstanceType" : "m1.large",
"AvailabilityZone" : "us-west-2a",
"PrivateIpAddress" : "10.22.0.110",
"SecurityGroupIds" : [ {"Ref" : "AllowSSHSecGroup"} ],
"SubnetId" : { "Ref" : "PublicSubnet" },
"KeyName" : "erik-key",
"DisableApiTermination" : "false",
"Tags" : [ { "Key": "Name", "Value": "Instance001"} ]
}
}
Trong đoạn trích trên, tôi đang tạo nhóm bảo mật "allow ssh" và gán nó cho một thể hiện. Như đã đề cập, ngăn xếp của tôi cũng tạo ra một VPC (phiên bản này được khởi chạy), từ đó tạo ra một nhóm bảo mật mặc định. Thật không may, vì nhóm này được AWS tạo tự động, ID nhóm của nó không có sẵn cho ngăn xếp, khiến ID không thể tham chiếu bằng ID. Ban đầu tôi nghĩ rằng SecurityGroups
tài sản sẽ là một tùy chọn, vì điều đó sẽ cho phép tôi tham chiếu SG mặc định theo tên của nó , default
. Tuy nhiên, điều đó không hoạt động vì thuộc SecurityGroups
tính chỉ dành cho Nhóm bảo mật EC2, không phải Nhóm bảo mật VPC.
Vì vậy, tôi bị mắc kẹt. Tôi đã mở một trường hợp với sự hỗ trợ của AWS về vấn đề này, nhưng cho đến nay, chúng không hữu ích. Bất kỳ ý tưởng về làm thế nào tôi có thể thực hiện điều này?
SecurityGroupIngress
, tham khảo nhóm bảo mật mặc định tổng hợp của bạn, bạn có thể có được tham chiếu tự mà bạn muốn, trong một triển khai ngăn xếp