Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Trabaje con grupos de seguridad en Amazon EC2
Creación de un grupo de seguridad
Para crear un grupo de seguridad, llame al createSecurityGroup
método de Ec2Client con un CreateSecurityGroupRequest
Importaciones
import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.ec2.Ec2Client; import software.amazon.awssdk.services.ec2.model.CreateSecurityGroupRequest; import software.amazon.awssdk.services.ec2.model.AuthorizeSecurityGroupIngressRequest; import software.amazon.awssdk.services.ec2.model.AuthorizeSecurityGroupIngressResponse; import software.amazon.awssdk.services.ec2.model.Ec2Exception; import software.amazon.awssdk.services.ec2.model.IpPermission; import software.amazon.awssdk.services.ec2.model.CreateSecurityGroupResponse; import software.amazon.awssdk.services.ec2.model.IpRange;
Código
CreateSecurityGroupRequest createRequest = CreateSecurityGroupRequest.builder() .groupName(groupName) .description(groupDesc) .vpcId(vpcId) .build(); CreateSecurityGroupResponse resp= ec2.createSecurityGroup(createRequest);
Consulte el ejemplo completo
Configurar un grupo de seguridad
Un grupo de seguridad puede controlar el tráfico entrante (entrada) y saliente (salida) de sus instancias. Amazon EC2
Para agregar reglas de entrada a su grupo de seguridad, utilice el authorizeSecurityGroupIngress
método de Ec2Client, proporcionando el nombre del grupo de seguridad y las reglas de acceso (IpPermission
Importaciones
import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.ec2.Ec2Client; import software.amazon.awssdk.services.ec2.model.CreateSecurityGroupRequest; import software.amazon.awssdk.services.ec2.model.AuthorizeSecurityGroupIngressRequest; import software.amazon.awssdk.services.ec2.model.AuthorizeSecurityGroupIngressResponse; import software.amazon.awssdk.services.ec2.model.Ec2Exception; import software.amazon.awssdk.services.ec2.model.IpPermission; import software.amazon.awssdk.services.ec2.model.CreateSecurityGroupResponse; import software.amazon.awssdk.services.ec2.model.IpRange;
Código
Primero, cree un Ec2Client
Region region = Region.US_WEST_2; Ec2Client ec2 = Ec2Client.builder() .region(region) .build();
Luego, use el método authorizeSecurityGroupIngress
de Ec2Client,
IpRange ipRange = IpRange.builder() .cidrIp("0.0.0.0/0").build(); IpPermission ipPerm = IpPermission.builder() .ipProtocol("tcp") .toPort(80) .fromPort(80) .ipRanges(ipRange) .build(); IpPermission ipPerm2 = IpPermission.builder() .ipProtocol("tcp") .toPort(22) .fromPort(22) .ipRanges(ipRange) .build(); AuthorizeSecurityGroupIngressRequest authRequest = AuthorizeSecurityGroupIngressRequest.builder() .groupName(groupName) .ipPermissions(ipPerm, ipPerm2) .build(); AuthorizeSecurityGroupIngressResponse authResponse = ec2.authorizeSecurityGroupIngress(authRequest); System.out.printf( "Successfully added ingress policy to Security Group %s", groupName); return resp.groupId(); } catch (Ec2Exception e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } return ""; }
Para añadir una regla de salida al grupo de seguridad, proporcione datos similares en uno y otro método del AuthorizeSecurityGroupEgressRequestauthorizeSecurityGroupEgress
Consulte el ejemplo completo
Describir grupos de seguridad
Para describir los grupos de seguridad o para obtener información sobre ellos, llame al método describeSecurityGroups
de Ec2Client. Devuelve un DescribeSecurityGroupsResponsesecurityGroups
método, que devuelve una lista de SecurityGroup
Importaciones
import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.ec2.Ec2Client; import software.amazon.awssdk.services.ec2.model.DescribeSecurityGroupsRequest; import software.amazon.awssdk.services.ec2.model.DescribeSecurityGroupsResponse; import software.amazon.awssdk.services.ec2.model.SecurityGroup; import software.amazon.awssdk.services.ec2.model.Ec2Exception;
Código
public static void describeEC2SecurityGroups(Ec2Client ec2, String groupId) { try { DescribeSecurityGroupsRequest request = DescribeSecurityGroupsRequest.builder() .groupIds(groupId).build(); DescribeSecurityGroupsResponse response = ec2.describeSecurityGroups(request); for(SecurityGroup group : response.securityGroups()) { System.out.printf( "Found Security Group with id %s, " + "vpc id %s " + "and description %s", group.groupId(), group.vpcId(), group.description()); } } catch (Ec2Exception e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } }
Consulte el ejemplo completo
Eliminación de un grupo de seguridad
Para eliminar un grupo de seguridad, llame al deleteSecurityGroup
método Ec2Client y pásele un DeleteSecurityGroupRequest
Importaciones
import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.ec2.Ec2Client; import software.amazon.awssdk.services.ec2.model.DeleteSecurityGroupRequest; import software.amazon.awssdk.services.ec2.model.Ec2Exception;
Código
public static void deleteEC2SecGroup(Ec2Client ec2,String groupId) { try { DeleteSecurityGroupRequest request = DeleteSecurityGroupRequest.builder() .groupId(groupId) .build(); ec2.deleteSecurityGroup(request); System.out.printf( "Successfully deleted Security Group with id %s", groupId); } catch (Ec2Exception e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } }
Consulte el ejemplo completo
Más información
-
Amazon EC2 Grupos de seguridad en la guía Amazon EC2 del usuario de instancias de Linux
-
Autorice el tráfico entrante para sus instancias de Linux en la Guía del Amazon EC2 usuario de instancias de Linux
-
CreateSecurityGroupen la referencia de la Amazon EC2 API
-
DescribeSecurityGroupsen la referencia Amazon EC2 de la API
-
DeleteSecurityGroupen la referencia Amazon EC2 de la API
-
AuthorizeSecurityGroupIngressen la referencia Amazon EC2 de la API