Administrar los Grupos de Seguridad usando el CLI de Openstack

Generalidades

Los Grupos de Seguridad se pueden crear y administrar dentro del panel de DreamCompute. Sin embargo, los usuarios avanzados pueden aprovechar la CLI de OpenStack para administrar grupos de seguridad.

Este artículo asume que ya has configurado la CLI de OpenStack.

Crear y eliminar Grupos de Seguridad

Después de iniciar sesión en tu instancia, corre el siguiente comando para enumerar los grupos de seguridad configurados actualmente.

[user@localhost]$ openstack security group list

Crear un Grupo de Seguridad

Corre el siguiente comando para crear un Grupo de Seguridad con un nombre y una descripción especificados.

El carácter de barra invertida \ se usa al ingresar un comando largo. Cuando ingresas \, el comando de terminal continúa a la siguiente línea hasta que termines de ingresarlo.

También puedes eliminar el carácter \ y poner cada parámetro en una sola línea.

[user@localhost]$ openstack security group create \
--description GROUP_DESCRIPTION SECURITY_GROUP_NAME

Si corres el comando openstack security group list de arriba, verás que ahora existe. También puedes verlo en tu panel de DreamCompute en la página 'Network > Security Groups'.

Eliminar un Grupo de Seguridad

Corre lo siguiente para eliminar un Grupo de Seguridad.

[user@localhost]$ openstack security group delete SECURITY_GROUP_NAME

No puedes eliminar un Grupo de Seguridad de tu proyecto 'default'. Tampoco es posible eliminar un Grupo de Seguridad que está asignado a una instancia.

Crear y administrar reglas de Grupos de Seguridad

Puedes modificar los Grupos de Seguridad con el comando openstack security group rule.

Lista de reglas para Grupo de Seguridad

[user@localhost]$ openstack security group rule list SECURITY_GROUP_NAME

Permitir solicitudes al puerto 8080

Para permitir solicitudes al puerto 8080 en todas las instancias que usan este grupo, elige una de las siguientes opciones:

Crear nuevas reglas para un grupo

Permitir acceso para todas las direcciones IP (especificadas como una subnet de IP 0.0.0.0/0 en la notación de CIDR).

[user@localhost]$ openstack security group rule create \
--proto tcp --dst-port 8080 SECURITY_GROUP_NAME
+-------------------+------------------------+
| Field             | Value                  |
+-------------------+------------------------+
| created_at        | 2018-02-08T20:33:38Z   |
| description       |                        |
| direction         | ingress                |
| ether_type        | IPv4                   |
| id                | fdd92e21-c474-4349-8...|
| name              | None                   |
| port_range_max    | 8080                   |
| port_range_min    | 8080                   |
| project_id        | e52cde3c560547cf950b...|
| protocol          | tcp                    |
| remote_group_id   | None                   |
| remote_ip_prefix  | 0.0.0.0/0              |
| revision_number   | 1                      |
| security_group_id | 36f1dcb4-e2fb-3a03-9...|
| updated_at        | 2018-02-08T20:33:38Z   |
+-------------------+------------------------+

Si ves las reglas de nuevo, verás el nuevo que ha sido agregado:

[user@localhost]$ openstack security group rule list SECURITY_GROUP_NAME
+---------------+-------------+-----------+------------+-----------------------+
| ID            | IP Protocol | IP Range  | Port Range | Remote Security Group |
+---------------+-------------+-----------+------------+-----------------------+
| 7b106e0e-0... | None        | None      |            | None                  |
| 87b0de27-1... | None        | None      |            | None                  |
| fdd92e91-c... | tcp         | 0.0.0.0/0 | 8080:8080  | None                  |
+---------------+-------------+-----------+------------+-----------------------+

Agregar reglas de un grupo existente

Permite el acceso solo desde direcciones IP de otros grupos de seguridad (grupos de origen) para acceder al puerto especificado.

Corre lo siguiente para ver el ID y Nombre de los grupos de seguridad existentes:

[user@localhost]$ openstack security group list
+----------------+-------------+------------------------------+-------------+
| ID             | Name        | Description                  | Project     |
+----------------+-------------+------------------------------+-------------+
| 26f1dfb4-e2... | NEW_group   | OSCLI_Desc                   | e52ede2a... |
| 29abef85-b8... | default     | Default security group       | e52ede2a... |
| 7b450512-d3... | Cloud       | Security Group for NextCloud | e52ede2a... |
+----------------+-------------+------------------------------+-------------+

Una vez que hayas localizado el ID y Nombre del grupo que deseas importar, corre siguiente:

[user@localhost]$ openstack security group rule create \
--proto tcp --dst-port 8080 --remote-group SOURCE_GROUP_ID GROUP_NAME_TO_ADD_RULE_TO

SOURCE_GROUP_ID es el ID del grupo que deseas agregar.

GROUP_NAME_TO_ADD_RULE_TO es el grupo al que estás agregando la regla.

Mira la página 'Grupos de Seguridad' en tu panel. A la derecha del nuevo Grupo de Seguridad, haz clic en el botón Administrar. Verás una nueva regla agregada y el nombre del otro Grupo de Seguridad ahora está debajo de la columna Grupo de Seguridad Remoto. En el ejemplo anterior, el otro Grupo de Seguridad se denomina 'Cloud'.

Esto permite que el tráfico de origen de cualquier otra instancia de ese grupo de seguridad acceda a cualquier otra instancia.

Permitir el acceso a través de un puerto UDP

Agregar reglas para UDP es lo mismo que para TCP. Puedes usar los mismos comandos anteriores, solo asegúrate de cambiar --proto tcp con --proto udp y cambia el puerto a 53.

Eliminar una regla de un Grupo de Seguridad

Primero, corre el siguiente comando para ver todas las reglas del Grupo de Seguridad.

[user@localhost]$ openstack security group rule list

Esto enumera todas las reglas con su ID correspondiente. El ID es una larga cadena de números y letras. Por ejemplo:

  • 55f3cf46d-2c57-4b05-8dab-e12ab585af33

Para eliminar una regla, corre el siguiente comando con el ID de regla correcto.

[user@localhost]$ openstack security group rule delete SECURITY_GROUP_RULE_ID

¿Este artículo ha respondido sus preguntas?

Última actualización el PST.

¿Aún no encuentra lo que busca?