Share via


Creación y administración de reglas de firewall de Azure Database for PostgreSQL: servidor flexible mediante la CLI de Azure

SE APLICA A: Azure Database for PostgreSQL: servidor flexible

El servidor flexible de Azure Database for PostgreSQL admite dos tipos de métodos de conectividad de red mutuamente excluyentes para conectarse a la instancia de servidor flexible de Azure Database for PostgreSQL. Las dos opciones son las siguientes:

  • Acceso público (direcciones IP permitidas). Ese método se puede proteger aún más mediante redes basadas en Private Link con el servidor flexible de Azure Database for PostgreSQL en versión preliminar.
  • Acceso privado (integración con red virtual)

Este artículo se centra en la creación de una instancia de servidor flexible de Azure Database for PostgreSQL con acceso público (direcciones IP permitidas) mediante la CLI de Azure y proporciona información general sobre los comandos de la CLI de Azure que puede usar para crear, actualizar, eliminar, enumerar y mostrar reglas de firewall después de la creación del servidor. Con el acceso público (direcciones IP permitidas), las conexiones a la instancia de servidor flexible de Azure Database for PostgreSQL solo están restringidas a direcciones IP permitidas. Las direcciones IP del cliente se deben permitir en reglas de firewall. Para obtener más información al respecto, vea Acceso público (direcciones IP permitidas). Las reglas de firewall se pueden definir en el momento de crear el servidor (recomendado), pero también se pueden agregar después.

Inicio de Azure Cloud Shell

Azure Cloud Shell es un shell interactivo gratuito que puede usar para ejecutar los pasos de este artículo. Tiene las herramientas comunes de Azure preinstaladas y configuradas para usarlas en la cuenta.

Para abrir Cloud Shell, seleccione Pruébelo en la esquina superior derecha de un bloque de código. También puede abrir Cloud Shell en una pestaña independiente acudiendo a https://shell.azure.com/bash. Seleccione Copiar para copiar los bloques de código, péguelos en Cloud Shell y, después, seleccione Entrar para ejecutarlos.

Si prefiere instalar y usar la CLI de forma local, en este inicio rápido se requiere la versión 2.0 o posterior de la CLI de Azure. Ejecute az --version para encontrar la versión. Si necesita instalarla o actualizarla, vea Instalación de la CLI de Azure.

Requisitos previos

Debe iniciar sesión en la cuenta con el comando az login. Tenga en cuenta la propiedad id, que hace referencia al id. de suscripción de su cuenta de Azure.

az login

Seleccione la suscripción específica en su cuenta mediante el comando az account set. Anote el valor de id de la salida de az login para usarlo como valor del argumento subscription del comando. Si tiene varias suscripciones, elija la suscripción adecuada en la que se debe facturar el recurso. Para obtener todas las suscripciones, use az account list.

az account set --subscription <subscription id>

Creación de una regla de firewall durante la creación de instancias de servidor flexible de Azure Database for PostgreSQL mediante la CLI de Azure

Puede usar el az postgres flexible-server --public access comando para crear la instancia de servidor flexible de Azure Database for PostgreSQL con acceso público (direcciones IP permitidas) y configurar las reglas de firewall durante la creación de la instancia de servidor flexible de Azure Database for PostgreSQL. Puede usar el modificador --public-access para especificar las direcciones IP permitidas que podrán conectarse al servidor. Puede especificar una sola dirección IP o el intervalo de direcciones IP que se van a incluir en la lista de direcciones IP permitidas. El intervalo de direcciones IP debe estar separado por guiones y no contener espacios. Hay varias opciones para crear una instancia de servidor flexible de Azure Database for PostgreSQL mediante la CLI, como se muestra en los ejemplos siguientes.

Consulte la documentación de referencia de la CLI de Azure para ver la lista completa de parámetros configurables de la CLI. Por ejemplo, en los siguientes comandos puede especificar opcionalmente el grupo de recursos.

  • Cree una instancia de servidor flexible de Azure Database for PostgreSQL con acceso público y agregue una dirección IP de cliente para tener acceso al servidor:

    az postgres flexible-server create --public-access <my_client_ip>
    
  • Cree una instancia de servidor flexible de Azure Database for PostgreSQL con acceso público y agregue el intervalo de direcciones IP para tener acceso a este servidor:

    az postgres flexible-server create --public-access <start_ip_address-end_ip_address>
    
  • Cree una instancia de servidor flexible de Azure Database for PostgreSQL con acceso público y permita que las aplicaciones de las direcciones IP de Azure se conecten a la instancia de servidor flexible de Azure Database for PostgreSQL:

    az postgres flexible-server create --public-access 0.0.0.0
    

    Importante

    Esta opción configura el firewall para permitir el acceso público desde los servicios y recursos de Azure a este servidor, incluidas las conexiones desde las suscripciones de otros clientes. Al seleccionar esta opción, asegúrese de que los permisos de usuario y el inicio de sesión limiten el acceso solamente a los usuarios autorizados.

    • Cree una instancia de servidor flexible de Azure Database for PostgreSQL con acceso público y permita todas las direcciones IP:
      az postgres flexible-server create --public-access all
      

      Nota:

      El comando anterior crea una regla de firewall con start IP address=0.0.0.0, end IP address=255.255.255.255 y no se bloquea ninguna dirección IP. Cualquier host de Internet puede acceder a este servidor. Se recomienda encarecidamente usar esta regla solo temporalmente y solo en servidores de prueba que no contengan datos confidenciales.

  • Cree una instancia de servidor flexible de Azure Database for PostgreSQL con acceso público y sin dirección IP:

    az postgres flexible-server create --public-access none
    

    Nota:

    No se recomienda crear un servidor sin ninguna regla de firewall. Si no agrega ninguna regla de firewall, ningún cliente podrá conectarse al servidor.

Creación y administración de una regla de firewall después de crear el servidor

El comando az postgres flexible-server firewall-rule se utiliza desde la CLI de Azure para crear, eliminar, enumerar, mostrar y actualizar reglas de firewall.

Comandos:

  • create: cree una regla de firewall de servidor flexible de Azure Database for PostgreSQL.
  • list: enumera las reglas de firewall de servidor flexible de Azure Database for PostgreSQL.
  • update: actualice una regla de firewall de servidor flexible de Azure Database for PostgreSQL.
  • show: muestra los detalles de una regla de firewall de servidor flexible de Azure Database for PostgreSQL.
  • delete: elimine una regla de firewall de servidor flexible de Azure Database for PostgreSQL.

Consulte la documentación de referencia de la CLI de Azure para ver la lista completa de parámetros configurables de la CLI. Por ejemplo, en los siguientes comandos, puede especificar opcionalmente el grupo de recursos.

Creación de una regla de firewall

Use el comando az postgres flexible-server firewall-rule create para crear una regla de firewall en el servidor. Para permitir el acceso a un intervalo de direcciones IP, especifique la dirección IP en forma de dirección IP inicial y dirección IP final, como en este ejemplo. Este comando también espera el nombre del grupo de recursos de Azure donde el servidor se encuentra como parámetro.

az postgres flexible-server firewall-rule create --name mydemoserver --resource-group testGroup --start-ip-address 13.83.152.0 --end-ip-address 13.83.152.15

Para permitir el acceso a una única dirección IP, especifique una sola dirección IP, como en este ejemplo.

az postgres flexible-server firewall-rule create --name mydemoserver  --resource-group testGroup  --start-ip-address 1.1.1.1

Para permitir que las aplicaciones de las direcciones IP de Azure se conecten a la instancia de servidor flexible de Azure Database for PostgreSQL, proporcione la dirección IP 0.0.0.0 como dirección IP de inicio, como en este ejemplo.

az postgres flexible-server firewall-rule create --name mydemoserver --resource-group testGroup --start-ip-address 0.0.0.0

Importante

Esta opción configura el firewall para permitir el acceso público desde los servicios y recursos de Azure a este servidor, incluidas las conexiones desde las suscripciones de otros clientes. Al seleccionar esta opción, asegúrese de que los permisos de usuario y el inicio de sesión limiten el acceso solamente a los usuarios autorizados.

Tras la operación correcta, cada salida de comando de creación muestra los detalles de la regla de firewall que creó, en formato JSON (de forma predeterminada). Si se produce un error, la salida muestra el texto del mensaje de error.

Enumerar reglas de firewall

Use el comando az postgres flexible-server firewall-rule list para mostrar las reglas de firewall de servidor existentes en el servidor. Observe que el atributo de nombre del servidor se especifica en el modificador --name.

az postgres flexible-server firewall-rule list --name mydemoserver --resource-group testGroup

La salida enumera las reglas existentes, si existen, en formato JSON (de forma predeterminada). Puede usar el modificador --output table** para que los resultados se generen en un formato de tabla más legible.

az postgres flexible-server firewall-rule list --name mydemoserver --resource-group testGroup --output table

Actualización de una regla de firewall

Use el comando az postgres flexible-server firewall-rule update para actualizar una regla de firewall existente en el servidor. Especifique el nombre de una regla de firewall existente como entrada, así como los atributos de dirección IP inicial y dirección IP final que se van a actualizar.

az postgres flexible-server firewall-rule update --name mydemoserver --rule-name FirewallRule1 --resource-group testGroup --start-ip-address 13.83.152.0 --end-ip-address 13.83.152.1

Tras la operación correcta, la salida del comando muestra los detalles de la regla de firewall que actualizó, en formato JSON (de forma predeterminada). Si se produce un error, la salida muestra el texto del mensaje de error.

Nota:

Si la regla de firewall no existe, el comando update crea la regla.

Mostrar los detalles de la regla de firewall

Use el comando az postgres flexible-server firewall-rule show para mostrar los detalles de la regla de firewall existente del servidor. Proporcione como entrada el nombre de una regla de firewall existente.

az postgres flexible-server firewall-rule show --name mydemoserver --rule-name FirewallRule1 --resource-group testGroup

Cuando se realiza correctamente, la salida del comando muestra los detalles de la regla de firewall que ha especificado, en formato JSON (de forma predeterminada). Si se produce un error, la salida muestra el texto del mensaje de error.

Eliminar una regla de firewall

Use el comando az postgres flexible-server firewall-rule delete para eliminar una regla de firewall existente del servidor. Proporcione el nombre de una regla de firewall existente.

az postgres flexible-server firewall-rule delete --name mydemoserver --rule-name FirewallRule1 --resource-group testGroup

Cuando se realiza correctamente, no hay ninguna salida. En caso de error, se muestra el texto del mensaje de error.

Pasos siguientes