TigerZF
🌐Español

64.14. Zend_Service_Amazon_Ec2: Grupos de seguridad

Un grupo de seguridad es una colección con nombre de reglas de acceso. Estas reglas de acceso especifican qué tráfico de red entrante (es decir, de entrada) debe entregarse a su instancia. Todo el demás tráfico entrante se descartará.

Puede modificar las reglas de un grupo en cualquier momento. Las nuevas reglas se aplican automáticamente a todas las instancias en ejecución e instancias lanzadas en el futuro.

[Note] Máximo de grupos de seguridad

Puede crear hasta 100 grupos de seguridad.

64.14.1. Mantenimiento de grupos de seguridad

Ejemplo 64.56. Crear un nuevo grupo de seguridad

create crea un nuevo grupo de seguridad. Cada instancia se lanza en un grupo de seguridad. Si no se especifica ningún grupo de seguridad durante el lanzamiento, las instancias se lanzan en el grupo de seguridad predeterminado. Las instancias dentro del mismo grupo de seguridad tienen acceso de red irrestricto entre sí. Las instancias rechazarán los intentos de acceso de red provenientes de otras instancias en un grupo de seguridad diferente.

create devuelve un booleano TRUE o FALSE

$ec2_sg = new Zend_Service_Amazon_Ec2_Securitygroups('aws_key',
                                                     'aws_secret_key');
$return = $ec2_sg->create('mygroup', 'my group description');

Ejemplo 64.57. Describir un grupo de seguridad

describe devuelve información sobre los grupos de seguridad que usted posee.

Si especifica nombres de grupos de seguridad, se devuelve información sobre esos grupos de seguridad. De lo contrario, se devuelve información sobre todos los grupos de seguridad. Si especifica un grupo que no existe, se devuelve un error (fault).

describe devolverá un array que contiene información sobre los grupos de seguridad, el cual incluye el ownerId, groupName, groupDescription y un array que contiene todas las reglas de ese grupo de seguridad.

$ec2_sg = new Zend_Service_Amazon_Ec2_Securitygroups('aws_key',
                                                     'aws_secret_key');
$return = $ec2_sg->describe('mygroup');

Ejemplo 64.58. Eliminar un grupo de seguridad

delete eliminará el grupo de seguridad. Si intenta eliminar un grupo de seguridad que contiene instancias, se devuelve un error (fault). Si intenta eliminar un grupo de seguridad al que hace referencia otro grupo de seguridad, se devuelve un error (fault). Por ejemplo, si el grupo de seguridad B tiene una regla que permite el acceso desde el grupo de seguridad A, el grupo de seguridad A no se puede eliminar hasta que se elimine la regla de permiso.

delete devuelve un booleano TRUE o FALSE.

$ec2_sg = new Zend_Service_Amazon_Ec2_Securitygroups('aws_key',
                                                     'aws_secret_key');
$return = $ec2_sg->delete('mygroup');

64.14.2. Autorizar acceso

Ejemplo 64.59. Autorizar por IP

authorizeIp añade permisos a un grupo de seguridad basándose en una dirección IP, un tipo de protocolo y un rango de puertos.

Los permisos se especifican por el protocolo IP (TCP, UDP o ICMP), el origen de la solicitud (por rango de IP o por un par usuario-grupo de Amazon EC2), los rangos de puertos de origen y destino (para TCP y UDP), y los códigos y tipos ICMP (para ICMP). Al autorizar ICMP, se puede usar -1 como comodín en los campos de tipo y código.

Los cambios de permisos se propagan a las instancias dentro del grupo de seguridad lo más rápido posible. Sin embargo, dependiendo del número de instancias, puede producirse un pequeño retraso.

authorizeIp devuelve un booleano TRUE o FALSE

$ec2_sg = new Zend_Service_Amazon_Ec2_Securitygroups('aws_key',
                                                     'aws_secret_key');
$return = $ec2_sg->authorizeIp('mygroup',
                                'protocol',
                                'fromPort',
                                'toPort',
                                'ipRange');

Ejemplo 64.60. Autorizar por grupo

authorizeGroup añade permisos a un grupo de seguridad.

Los cambios de permisos se propagan a las instancias dentro del grupo de seguridad lo más rápido posible. Sin embargo, dependiendo del número de instancias, puede producirse un pequeño retraso.

authorizeGroup devuelve un booleano TRUE o FALSE.

$ec2_sg = new Zend_Service_Amazon_Ec2_Securitygroups('aws_key',
                                                     'aws_secret_key');
$return = $ec2_sg->authorizeGroup('mygroup', 'securityGroupName', 'ownerId');

64.14.3. Revocar acceso

Ejemplo 64.61. Revocar por IP

revokeIp revoca permisos de un grupo de seguridad basándose en una dirección IP, un tipo de protocolo y un rango de puertos. Los permisos que se revocan deben especificarse usando los mismos valores usados para conceder los permisos.

Los permisos se especifican por el protocolo IP (TCP, UDP o ICMP), el origen de la solicitud (por rango de IP o por un par usuario-grupo de Amazon EC2), los rangos de puertos de origen y destino (para TCP y UDP), y los códigos y tipos ICMP (para ICMP). Al autorizar ICMP, se puede usar -1 como comodín en los campos de tipo y código.

Los cambios de permisos se propagan a las instancias dentro del grupo de seguridad lo más rápido posible. Sin embargo, dependiendo del número de instancias, puede producirse un pequeño retraso.

revokeIp devuelve un booleano TRUE o FALSE

$ec2_sg = new Zend_Service_Amazon_Ec2_Securitygroups('aws_key',
                                                     'aws_secret_key');
$return = $ec2_sg->revokeIp('mygroup',
                             'protocol',
                             'fromPort',
                             'toPort',
                             'ipRange');

Ejemplo 64.62. Revocar por grupo

revokeGroup añade permisos a un grupo de seguridad. Los permisos que se van a revocar deben especificarse usando los mismos valores usados para conceder los permisos.

Los cambios de permisos se propagan a las instancias dentro del grupo de seguridad lo más rápido posible. Sin embargo, dependiendo del número de instancias, puede producirse un pequeño retraso.

revokeGroup devuelve un booleano TRUE o FALSE.

$ec2_sg = new Zend_Service_Amazon_Ec2_Securitygroups('aws_key',
                                                     'aws_secret_key');
$return = $ec2_sg->revokeGroup('mygroup', 'securityGroupName', 'ownerId');