Seleziona le tue preferenze relative ai cookie

Utilizziamo cookie essenziali e strumenti simili necessari per fornire il nostro sito e i nostri servizi. Utilizziamo i cookie prestazionali per raccogliere statistiche anonime in modo da poter capire come i clienti utilizzano il nostro sito e apportare miglioramenti. I cookie essenziali non possono essere disattivati, ma puoi fare clic su \"Personalizza\" o \"Rifiuta\" per rifiutare i cookie prestazionali.

Se sei d'accordo, AWS e le terze parti approvate utilizzeranno i cookie anche per fornire utili funzionalità del sito, ricordare le tue preferenze e visualizzare contenuti pertinenti, inclusa la pubblicità pertinente. Per continuare senza accettare questi cookie, fai clic su \"Continua\" o \"Rifiuta\". Per effettuare scelte più dettagliate o saperne di più, fai clic su \"Personalizza\".

Gestisci i gruppi di sicurezza con AWS CloudFormation

Modalità Focus
Gestisci i gruppi di sicurezza con AWS CloudFormation - AWS CloudFormation

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Filtro Visualizza

I seguenti frammenti mostrano come gestire i gruppi di sicurezza e AWS CloudFormation le EC2 istanze Amazon per controllare l'accesso alle tue risorse. AWS

Associare un' EC2istanza Amazon a un gruppo di sicurezza

I seguenti frammenti di esempio mostrano come associare un' EC2 istanza Amazon a un gruppo di sicurezza Amazon VPC predefinito utilizzando. AWS CloudFormation

Associa un' EC2 istanza Amazon a un gruppo di sicurezza VPC predefinito

Il seguente frammento crea un Amazon VPC, una sottorete all'interno del VPC e un'istanza Amazon. EC2 Il VPC viene creato utilizzando una risorsa AWS::EC2: :VPC. L'intervallo di indirizzi IP per il VPC è definito nel modello più grande e viene richiamato dal parametro MyVPCCIDRRange.

Una sottorete viene creata all'interno del VPC utilizzando una risorsa AWS:::EC2: Subnet. La sottorete è associata al VPC, a cui si fa riferimento come MyVPC.

Un' EC2 istanza viene avviata all'interno del VPC e della sottorete utilizzando una risorsa. AWS::EC2::Instance Questa risorsa specifica l'Amazon Machine Image (AMI) da utilizzare per avviare l'istanza, la sottorete in cui verrà eseguita l'istanza e il gruppo di sicurezza da associare all'istanza. La Fn::FindInMap funzione viene utilizzata per recuperare i valori dalla AWSRegionToAMI mappatura definita nel modello per determinare la ImageId risorsa. AWS::EC2::Instance

L'ID del gruppo di sicurezza viene ottenuto utilizzando la funzione Fn::GetAtt, che recupera il gruppo di sicurezza predefinito dalla risorsa MyVPC.

L'istanza viene inserita all'interno della risorsa MySubnet definita nel frammento.

Quando crei un VPC utilizzando AWS CloudFormation, crea AWS automaticamente risorse predefinite all'interno del VPC, incluso un gruppo di sicurezza predefinito. Tuttavia, quando definisci un VPC all'interno di un AWS CloudFormation modello, potresti non avere accesso a queste risorse predefinite quando crei il modello. IDs Per accedere e utilizzare le risorse predefinite specificate nel modello, puoi utilizzare funzioni intrinseche come Fn::GetAtt. Questa funzione consente di lavorare con le risorse predefinite create automaticamente da AWS CloudFormation.

JSON

"MyVPC": { "Type": "AWS::EC2::VPC", "Properties": { "CidrBlock": { "Ref": "MyVPCCIDRRange" }, "EnableDnsSupport": false, "EnableDnsHostnames": false, "InstanceTenancy": "default" } }, "MySubnet": { "Type": "AWS::EC2::Subnet", "Properties": { "CidrBlock": { "Ref": "MyVPCCIDRRange" }, "VpcId": { "Ref": "MyVPC" } } }, "MyInstance": { "Type": "AWS::EC2::Instance", "Properties": { "ImageId": { "Fn::FindInMap": [ "AWSRegionToAMI", { "Ref": "AWS::Region" }, "64" ] }, "SecurityGroupIds": [ { "Fn::GetAtt": [ "MyVPC", "DefaultSecurityGroup" ] } ], "SubnetId": { "Ref": "MySubnet" } } }

YAML

MyVPC: Type: AWS::EC2::VPC Properties: CidrBlock: Ref: MyVPCCIDRRange EnableDnsSupport: false EnableDnsHostnames: false InstanceTenancy: default MySubnet: Type: AWS::EC2::Subnet Properties: CidrBlock: Ref: MyVPCCIDRRange VpcId: Ref: MyVPC MyInstance: Type: AWS::EC2::Instance Properties: ImageId: Fn::FindInMap: - AWSRegionToAMI - Ref: AWS::Region - "64" SecurityGroupIds: - Fn::GetAtt: - MyVPC - DefaultSecurityGroup SubnetId: Ref: MySubnet

Crea un' EC2 istanza Amazon con un volume e un gruppo di sicurezza collegati

Il seguente frammento crea un' EC2 istanza Amazon utilizzando una AWS::EC2::Instancerisorsa, che viene lanciata da un AMI designato. L'istanza è associata a un gruppo di sicurezza che consente il traffico SSH in entrata sulla porta 22 da un indirizzo IP specificato, utilizzando una risorsa. AWS::EC2::SecurityGroup Crea un volume Amazon EBS da 100 GB utilizzando una AWS::EC2::Volumerisorsa. Il volume viene creato nella stessa zona di disponibilità dell'istanza, come specificato dalla funzione GetAtt, e viene montato sull'istanza sul dispositivo /dev/sdh.

Per ulteriori informazioni sulla creazione di volumi Amazon EBS, consulta Creazione di un volume Amazon EBS.

JSON

"Ec2Instance": { "Type": "AWS::EC2::Instance", "Properties": { "SecurityGroups": [ { "Ref": "InstanceSecurityGroup" } ], "ImageId": "ami-1234567890abcdef0" } }, "InstanceSecurityGroup": { "Type": "AWS::EC2::SecurityGroup", "Properties": { "GroupDescription": "Enable SSH access via port 22", "SecurityGroupIngress": [ { "IpProtocol": "tcp", "FromPort": "22", "ToPort": "22", "CidrIp": "192.0.2.0/24" } ] } }, "NewVolume": { "Type": "AWS::EC2::Volume", "Properties": { "Size": "100", "AvailabilityZone": { "Fn::GetAtt": [ "Ec2Instance", "AvailabilityZone" ] } } }, "MountPoint": { "Type": "AWS::EC2::VolumeAttachment", "Properties": { "InstanceId": { "Ref": "Ec2Instance" }, "VolumeId": { "Ref": "NewVolume" }, "Device": "/dev/sdh" } }

YAML

Ec2Instance: Type: AWS::EC2::Instance Properties: SecurityGroups: - !Ref InstanceSecurityGroup ImageId: ami-1234567890abcdef0 InstanceSecurityGroup: Type: AWS::EC2::SecurityGroup Properties: GroupDescription: Enable SSH access via port 22 SecurityGroupIngress: - IpProtocol: tcp FromPort: 22 ToPort: 22 CidrIp: 192.0.2.0/24 NewVolume: Type: AWS::EC2::Volume Properties: Size: 100 AvailabilityZone: !GetAtt [Ec2Instance, AvailabilityZone] MountPoint: Type: AWS::EC2::VolumeAttachment Properties: InstanceId: !Ref Ec2Instance VolumeId: !Ref NewVolume Device: /dev/sdh

Creazione di gruppi di sicurezza con regole di ingresso

I frammenti di esempio seguenti mostrano come configurare i gruppi di sicurezza con regole di ingresso specifiche utilizzando AWS CloudFormation.

Creazione di un gruppo di sicurezza con regole di ingresso per l'accesso SSH e HTTP

Il seguente frammento descrive due regole di ingresso per gruppi di sicurezza che utilizzano una risorsa. AWS::EC2::SecurityGroup La prima regola di ingresso consente l'accesso SSH (porta 22) da un gruppo di sicurezza esistente denominatoMyAdminSecurityGroup, di proprietà dell'account con il numero di AWS account. 1111-2222-3333 La seconda regola di ingresso consente l'accesso HTTP (porta 80) da un gruppo di sicurezza diverso denominato MySecurityGroupCreatedInCFN, creato nello stesso modello. La funzione Ref viene utilizzata per fare riferimento al nome logico del gruppo di sicurezza creato nello stesso modello.

Nella prima regola di ingresso, è necessario aggiungere un valore per entrambe le proprietà SourceSecurityGroupName e SourceSecurityGroupOwnerId. Nella seconda regola di ingresso, MySecurityGroupCreatedInCFNTemplate fa riferimento a un gruppo di sicurezza diverso, creato nello stesso modello. Verifica che il nome logico MySecurityGroupCreatedInCFNTemplate corrisponda al nome logico effettivo della risorsa del gruppo di sicurezza specificata nel modello più grande.

Per ulteriori informazioni sui gruppi di sicurezza, consulta Gruppi EC2 di sicurezza Amazon per istanze Linux o Gruppi EC2 di sicurezza Amazon per istanze Windows.

JSON

"SecurityGroup": { "Type": "AWS::EC2::SecurityGroup", "Properties": { "GroupDescription": "Allow connections from specified source security group", "SecurityGroupIngress": [ { "IpProtocol": "tcp", "FromPort": "22", "ToPort": "22", "SourceSecurityGroupName": "MyAdminSecurityGroup", "SourceSecurityGroupOwnerId": "1111-2222-3333" }, { "IpProtocol": "tcp", "FromPort": "80", "ToPort": "80", "SourceSecurityGroupName": { "Ref": "MySecurityGroupCreatedInCFNTemplate" } } ] } }

YAML

SecurityGroup: Type: 'AWS::EC2::SecurityGroup' Properties: GroupDescription: Allow connections from specified source security group SecurityGroupIngress: - IpProtocol: tcp FromPort: '22' ToPort: '22' SourceSecurityGroupName: MyAdminSecurityGroup SourceSecurityGroupOwnerId: '1111-2222-3333' - IpProtocol: tcp FromPort: '80' ToPort: '80' SourceSecurityGroupName: Ref: MySecurityGroupCreatedInCFNTemplate

Creazione di un gruppo di sicurezza con regole di ingresso per l'accesso HTTP e SSH da intervalli CIDR specificati

Il seguente frammento crea un gruppo di sicurezza per un' EC2 istanza Amazon con due regole in entrata. Le regole in entrata consentono il traffico TCP in ingresso sulle porte specificate dagli intervalli CIDR designati. Una AWS::EC2::SecurityGrouprisorsa viene utilizzata per specificare le regole. È possibile specificare un protocollo per ciascuna regola. Per TCP, è necessario anche specificare una porta o un intervallo di porte. Se non si specifica un gruppo di sicurezza di origine o un intervallo CIDR, lo stack verrà avviato correttamente, ma la regola non verrà applicata al gruppo di sicurezza.

Per ulteriori informazioni sui gruppi di sicurezza, consulta Gruppi EC2 di sicurezza Amazon per istanze Linux o Gruppi EC2 di sicurezza Amazon per istanze Windows.

JSON

"ServerSecurityGroup": { "Type": "AWS::EC2::SecurityGroup", "Properties": { "GroupDescription": "Allow connections from specified CIDR ranges", "SecurityGroupIngress": [ { "IpProtocol": "tcp", "FromPort": "80", "ToPort": "80", "CidrIp": "192.0.2.0/24" }, { "IpProtocol": "tcp", "FromPort": "22", "ToPort": "22", "CidrIp": "192.0.2.0/24" } ] } }

YAML

ServerSecurityGroup: Type: AWS::EC2::SecurityGroup Properties: GroupDescription: Allow connections from specified CIDR ranges SecurityGroupIngress: - IpProtocol: tcp FromPort: 80 ToPort: 80 CidrIp: 192.0.2.0/24 - IpProtocol: tcp FromPort: 22 ToPort: 22 CidrIp: 192.0.2.0/24

Crea gruppi di sicurezza con riferimenti incrociati e regole di ingresso

Il seguente frammento utilizza la AWS::EC2::SecurityGrouprisorsa per creare due gruppi di EC2 sicurezza Amazon e. SGroup1 SGroup2 Le regole di ingresso che consentono la comunicazione tra i due gruppi di sicurezza vengono create utilizzando la AWS::EC2::SecurityGroup risorsa Ingress. SGroup1Ingressstabilisce una regola di ingresso SGroup1 che consente il traffico TCP in entrata sulla porta 80 dal gruppo di sicurezza di origine,. SGroup2 SGroup2Ingressstabilisce una regola di ingresso SGroup2 che consente il traffico TCP in entrata sulla porta 80 dal gruppo di sicurezza di origine,. SGroup1

JSON

"SGroup1": { "Type": "AWS::EC2::SecurityGroup", "Properties": { "GroupDescription": "EC2 instance access" } }, "SGroup2": { "Type": "AWS::EC2::SecurityGroup", "Properties": { "GroupDescription": "EC2 instance access" } }, "SGroup1Ingress": { "Type": "AWS::EC2::SecurityGroupIngress", "Properties": { "GroupName": { "Ref": "SGroup1" }, "IpProtocol": "tcp", "ToPort": "80", "FromPort": "80", "SourceSecurityGroupName": { "Ref": "SGroup2" } } }, "SGroup2Ingress": { "Type": "AWS::EC2::SecurityGroupIngress", "Properties": { "GroupName": { "Ref": "SGroup2" }, "IpProtocol": "tcp", "ToPort": "80", "FromPort": "80", "SourceSecurityGroupName": { "Ref": "SGroup1" } } }

YAML

SGroup1: Type: AWS::EC2::SecurityGroup Properties: GroupDescription: EC2 Instance access SGroup2: Type: AWS::EC2::SecurityGroup Properties: GroupDescription: EC2 Instance access SGroup1Ingress: Type: AWS::EC2::SecurityGroupIngress Properties: GroupName: !Ref SGroup1 IpProtocol: tcp ToPort: 80 FromPort: 80 SourceSecurityGroupName: !Ref SGroup2 SGroup2Ingress: Type: AWS::EC2::SecurityGroupIngress Properties: GroupName: !Ref SGroup2 IpProtocol: tcp ToPort: 80 FromPort: 80 SourceSecurityGroupName: !Ref SGroup1

Creazione di un Elastic Load Balancer con una regola di ingresso al gruppo di sicurezza

Il modello seguente crea una AWS::ElasticLoadBalancing::LoadBalancerrisorsa nella zona di disponibilità specificata. La AWS::ElasticLoadBalancing::LoadBalancerrisorsa è configurata per ascoltare il traffico HTTP sulla porta 80 e indirizzare le richieste alle istanze anche sulla porta 80. Elastic Load Balancer è responsabile del bilanciamento del carico del traffico HTTP in entrata tra le istanze.

Inoltre, questo modello genera una AWS::EC2::SecurityGrouprisorsa associata al load balancer. Questo gruppo di sicurezza viene creato con un'unica regola di ingresso, descritta come ELB ingress group, che consente il traffico TCP in entrata sulla porta 80. L'origine di questa regola di ingresso viene definita utilizzando la funzione Fn::GetAtt per recuperare gli attributi dalla risorsa di bilanciamento del carico. SourceSecurityGroupOwnerId utilizza Fn::GetAtt per ottenere l'OwnerAlias del gruppo di sicurezza di origine del sistema di bilanciamento del carico. SourceSecurityGroupName utilizza Fn::Getatt per ottenere il GroupName del gruppo di sicurezza di origine dell'ELB.

Questa configurazione garantisce una comunicazione sicura tra l'ELB e le istanze.

Per ulteriori informazioni su Elastic Load Balancing, consulta la Guida per l'utente di Elastic Load Balancing.

JSON

{ "AWSTemplateFormatVersion": "2010-09-09", "Resources": { "MyELB": { "Type": "AWS::ElasticLoadBalancing::LoadBalancer", "Properties": { "AvailabilityZones": [ "aa-example-1a" ], "Listeners": [ { "LoadBalancerPort": "80", "InstancePort": "80", "Protocol": "HTTP" } ] } }, "MyELBIngressGroup": { "Type": "AWS::EC2::SecurityGroup", "Properties": { "GroupDescription": "ELB ingress group", "SecurityGroupIngress": [ { "IpProtocol": "tcp", "FromPort": 80, "ToPort": 80, "SourceSecurityGroupOwnerId": { "Fn::GetAtt": [ "MyELB", "SourceSecurityGroup.OwnerAlias" ] }, "SourceSecurityGroupName": { "Fn::GetAtt": [ "MyELB", "SourceSecurityGroup.GroupName" ] } } ] } } } }

YAML

AWSTemplateFormatVersion: '2010-09-09' Resources: MyELB: Type: 'AWS::ElasticLoadBalancing::LoadBalancer' Properties: AvailabilityZones: - aa-example-1a Listeners: - LoadBalancerPort: '80' InstancePort: '80' Protocol: HTTP MyELBIngressGroup: Type: 'AWS::EC2::SecurityGroup' Properties: GroupDescription: ELB ingress group SecurityGroupIngress: - IpProtocol: tcp FromPort: '80' ToPort: '80' SourceSecurityGroupOwnerId: Fn::GetAtt: - MyELB - SourceSecurityGroup.OwnerAlias SourceSecurityGroupName: Fn::GetAtt: - MyELB - SourceSecurityGroup.GroupName
PrivacyCondizioni del sitoPreferenze cookie
© 2025, Amazon Web Services, Inc. o società affiliate. Tutti i diritti riservati.