Definición de la configuración del proxy en un sensor de OT

Este artículo forma parte de una serie de artículos que describen la ruta de implementación para la supervisión de OT con Microsoft Defender para IoT y describe cómo definir la configuración del proxy en el sensor de OT para conectarse a Azure.

Diagram of a progress bar with Deploy your sensors highlighted.

Puede omitir este paso en los casos siguientes:

Requisitos previos

Para seguir los pasos que se describen en este artículo, necesitará lo siguiente:

Este paso lo realizan los equipos de implementación y conectividad.

Configurar los valores del proxy en un sensor de OT

En esta sección se describe cómo configurar los valores de un proxy existente en la consola del sensor de OT. Si aún no tiene un proxy, configure uno mediante los procedimientos siguientes:

Definir los valores del proxy en un sensor de OT:

  1. Inicie sesión en el sensor de OT y seleccione Configuración del sistema > Configuración de red del sensor.

  2. Active la opción Habilitar proxy y, a continuación, escriba los detalles siguientes para el servidor proxy:

    • Host de proxy
    • Puerto proxy
    • Nombre de usuario de proxy (opcional)
    • Contraseña de proxy (opcional)

    Por ejemplo:

    Screenshot of the proxy setting page.

  3. Si procede, seleccione Certificado de cliente para cargar un certificado de autenticación de proxy para acceder a un servidor proxy SSL/TLS.

    Nota

    Se requiere un certificado SSL/TLS de cliente para los servidores proxy que inspeccionan el tráfico SSL/TLS, como cuando se usan servicios como Zscaler y Palo Alto Prisma.

  4. Seleccione Guardar.

Configurar un proxy de Azure

Puede usar un proxy de Azure para conectar el sensor a Defender para IoT en las situaciones siguientes:

  • Necesita conectividad privada entre el sensor y Azure.
  • El sitio está conectado a Azure a través de ExpressRoute.
  • El sitio está conectado a Azure a través de una VPN.

Si ya tiene un proxy configurado, continúe directamente con Definir la configuración de proxy en la consola del sensor.

Si aún no tiene un proxy configurado, use los procedimientos de esta sección para configurar uno en la red virtual de Azure.

Requisitos previos

Antes de empezar, asegúrese de que dispone de lo siguiente:

  • Un área de trabajo de Log Analytics para supervisar los registros.

  • Conectividad de sitio remoto a la red virtual de Azure.

  • El tráfico HTTPS saliente en el puerto 443 se permita desde el sensor a los puntos de conexión necesarios para Defender para IoT. Para más información, consulte Aprovisionamiento de sensores de OT para la administración en la nube.

  • Un recurso de servidor proxy con permisos de firewall para acceder a los Servicios en la nube de Microsoft. El procedimiento descrito en este artículo usa un servidor de Squid hospedado en Azure.

Importante

Microsoft Defender para IoT no ofrece compatibilidad con Squid ni con ningún otro servicio de proxy. Es responsabilidad del cliente configurar y mantener el servicio de proxy.

Definición de la configuración del proxy del sensor

En esta sección se describe cómo configurar un proxy en la red virtual de Azure para su uso con un sensor de OT e incluye los pasos siguientes:

  1. Definición de una cuenta de almacenamiento para registros de NSG
  2. Definición de redes virtuales y subredes
  3. Definición de una puerta de enlace de red local o virtual
  4. Definición de grupos de seguridad de red
  5. Definición de un conjunto de escalado de máquinas virtuales de Azure
  6. Creación de una instancia de Azure Load Balancer
  7. Configuración de una instancia de NAT Gateway

Paso 1: Definición de una cuenta de almacenamiento para registros de NSG

En Azure Portal, cree una nueva cuenta de almacenamiento con la siguiente configuración:

Área Configuración
Conceptos básicos Rendimiento: estándar.
Tipo de cuenta: Almacenamiento de blobs
Replicación: LRS
Network Método de conectividad: Public endpoint (selected network) (Punto de conexión público [red seleccionada])
En Redes virtuales: Ninguna
Preferencia de enrutamiento: Enrutamiento de red de Microsoft
Protección de datos Mantenga todas las opciones desactivadas.
Avanzadas Mantenga todos los valores predeterminados.

Paso 2: Definición de redes virtuales y subredes

Cree la red virtual y las subredes contenidas que se indican a continuación:

Nombre Tamaño recomendado
MD4IoT-VNET /26 o /25 con Bastion
Subredes:
- GatewaySubnet /27
- ProxyserverSubnet /27
- AzureBastionSubnet (opcional) /26

Paso 3: Definición de una puerta de enlace de red local o virtual

Cree una instancia de VPN Gateway o una puerta de enlace de ExpressRoute para puertas de enlace virtuales o cree una puerta de enlace local, en función de cómo conecte la red local a Azure.

Conecte la puerta de enlace a la subred GatewaySubnet que creó anteriormente.

Para más información, consulte:

Paso 4: Definición de grupos de seguridad de red

  1. Cree un NSG y defina las siguientes reglas de entrada:

    • Cree una regla 100 para permitir el tráfico desde los sensores (los orígenes) a la dirección IP privada del equilibrador de carga (el destino). Use el puerto tcp3128.

    • Cree una regla 4095 como duplicado de la regla del sistema 65001. Esto se debe a que la regla 4096 sobrescribirá la regla 65001.

    • Cree una regla 4096 para denegar todo el tráfico para la microsegmentación.

    • Opcional. Si usa Bastion, cree una regla 4094 para permitir la conexión mediante SSH de Bastion a los servidores. Use la subred de Bastion como origen.

  2. Asigne el NSG a la subred ProxyserverSubnet que creó anteriormente.

  3. Defina el registro de NSG:

    1. Seleccione el nuevo NSG y, a continuación, Diagnostic setting (Configuración de diagnóstico) > Agregar configuración de diagnóstico.

    2. Introduzca un nombre para la configuración de diagnóstico. En Categoría, seleccione allLogs.

    3. Seleccione Sent to Log Analytics workspace (Se envió al área de trabajo de Log Analytics) y, a continuación, seleccione el área de trabajo de Log Analytics que quiera usar.

    4. Seleccione enviar Registros de flujos de NSG y, a continuación, defina los valores siguientes:

      En la pestaña "Aspectos básicos":

      • Escriba un nombre descriptivo.
      • Seleccione la cuenta de almacenamiento que creó anteriormente.
      • Defina los días de retención necesarios.

      En la pestaña "Configuración":

      • Seleccione Versión 2.
      • Seleccione Habilitar Análisis de tráfico.
      • Selección del área de trabajo de Log Analytics

Paso 5: Definición de un conjunto de escalado de máquinas virtuales de Azure

Defina un conjunto de escalado de máquinas virtuales de Azure para crear y administrar un grupo de máquinas virtuales de carga equilibrada, donde puede aumentar o disminuir automáticamente el número de máquinas virtuales según sea necesario.

Para más información, consulte ¿Qué son los conjuntos de escalado de máquinas virtuales?

Para crear un conjunto de escalado que se usará con la conexión del sensor:

  1. Cree un conjunto de escalado con las siguientes definiciones de parámetros:

    • Orchestration Mode (Modo de orquestación): Uniforme
    • Tipo de seguridad: estándar
    • Imagen: Ubuntu server 18.04 LTS – Gen1 (Ubuntu server 18.04 LTS: Gen1)
    • Tamaño: Standard_DS1_V2
    • Autenticación: basada en el estándar corporativo

    Mantenga el valor predeterminado de la configuración Discos.

  2. Cree una interfaz de red en la subred Proxyserver que creó anteriormente, pero no defina ningún equilibrador de carga aún.

  3. Defina la configuración de escalado como se muestra a continuación:

    • Defina el recuento inicial de instancias como 1.
    • Defina la directiva de escalado como Manual.
  4. Defina la siguiente configuración de administración:

    • Para el modo de actualización, seleccione Automatic - instance will start upgrading (Automático: la instancia comenzará a actualizarse).
    • Deshabilite los diagnósticos de arranque.
    • Borre la configuración de Identidad y Microsoft Entra ID.
    • Seleccione Sobreaprovisionamiento.
    • Seleccione Enabled automatic OS upgrades (Actualizaciones automáticas del sistema operativo habilitadas).
  5. Defina la siguiente configuración de estado:

    • Seleccione Habilitar supervisión de estado de la aplicación.
    • Seleccione el protocolo TCP y el puerto 3128.
  6. En la configuración avanzada, defina el Algoritmo de propagación como Propagación máxima.

  7. Para el script de datos personalizado, haga lo siguiente:

    1. Cree el siguiente script de configuración, en función del puerto y los servicios que use:

      # Recommended minimum configuration:
      # Squid listening port
      http_port 3128
      # Do not allow caching
      cache deny all
      # allowlist sites allowed
      acl allowed_http_sites dstdomain .azure-devices.net
      acl allowed_http_sites dstdomain .blob.core.windows.net
      acl allowed_http_sites dstdomain .servicebus.windows.net
      acl allowed_http_sites dstdomain .download.microsoft.com
      http_access allow allowed_http_sites
      # allowlisting
      acl SSL_ports port 443
      acl CONNECT method CONNECT
      # Deny CONNECT to other unsecure ports
      http_access deny CONNECT !SSL_ports
      # default network rules
      http_access allow localhost
      http_access deny all
      
    2. Codifique el contenido del archivo de script en Base 64.

    3. Copie el contenido del archivo codificado y, a continuación, cree el siguiente script de configuración:

      #cloud-config
      # updates packages
      apt_upgrade: true
      # Install squid packages
      packages:
       - squid
      run cmd:
       - systemctl stop squid
       - mv /etc/squid/squid.conf /etc/squid/squid.conf.factory
      write_files:
      - encoding: b64
        content: <replace with base64 encoded text>
        path: /etc/squid/squid.conf
        permissions: '0644'
      run cmd:
       - systemctl start squid
       - apt-get -y upgrade; [ -e /var/run/reboot-required ] && reboot
      

Paso 6: Creación de una instancia de Azure Load Balancer

Azure Load Balancer es un equilibrador de carga de capa 4 que distribuye el tráfico entrante entre instancias correctas de máquina virtual mediante un algoritmo de distribución basado en hash.

Para más información, consulte la documentación de Azure Load Balancer.

Para crear un equilibrador de carga de Azure para la conexión del sensor:

  1. Cree un equilibrador de carga con una SKU estándar y un tipo Interno para asegurarse de que el equilibrador de carga está cerrado a Internet.

  2. Defina una dirección IP de front-end dinámica en la subred proxysrv que creó anteriormente y establezca la disponibilidad en "Con redundancia de zona".

  3. En el caso de un back-end, elija el conjunto de escalado de máquinas virtuales que creó anteriormente.

  4. En el puerto definido en el sensor, cree una regla de equilibrio de carga TCP que conecte la dirección IP de front-end con el grupo de back-end. El puerto predeterminado es el 3128.

  5. Cree un nuevo sondeo de estado y defina un sondeo de estado TCP en el puerto 3128.

  6. Defina el registro del equilibrador de carga:

    1. En Azure Portal, vaya al equilibrador de carga que ha creado.

    2. Seleccione Diagnostic setting (Configuración de diagnóstico)>Agregar configuración de diagnóstico.

    3. Escriba un nombre descriptivo y defina la categoría como allMetrics.

    4. Seleccione Sent to Log Analytics workspace (Se envió al área de trabajo de Log Analytics) y, a continuación, seleccione el área de trabajo de Log Analytics.

Paso 7: Configuración de una instancia de NAT Gateway

A fin de configurar una instancia de NAT Gateway para la conexión del sensor, siga estos pasos:

  1. Cree una nueva instancia de NAT Gateway.

  2. En la pestaña Outbound IP (IP de salida), seleccione Crear una dirección IP pública.

  3. En la pestaña Subred, seleccione la subred ProxyserverSubnet que creó anteriormente.

El proxy ya está completamente configurado. A continuación, defina la configuración del proxy en el sensor de OT.

Conexión a través de un encadenamiento de proxies

Puede conectar el sensor a Defender para IoT en Azure mediante el encadenamiento de proxy en las siguientes situaciones:

  • El sensor necesita un proxy para acceder a la nube desde la red de OT.
  • Quiere que varios sensores se conecten a Azure a través de un único punto.

Si ya tiene un proxy configurado, continúe directamente con Definir la configuración de proxy en la consola del sensor.

Si aún no tiene un proxy configurado, siga los procedimientos que se indican en esta sección para configurar el encadenamiento de proxy.

Para obtener más información, consulte Conexiones de proxy con un encadenamiento de proxies.

Requisitos previos

Antes de empezar, asegúrese de que tiene un servidor host que ejecuta un proceso de proxy en la red del sitio. El proceso de proxy debe ser accesible tanto para el sensor como para el siguiente proxy de la cadena.

Este procedimiento se ha validado mediante el proxy Squid de código abierto. Este proxy usa la tunelización HTTP y el comando HTTP CONNECT para la conectividad. Cualquier otra conexión de encadenamiento de proxies que admita el comando CONNECT se puede usar para este método de conexión.

Importante

Microsoft Defender para IoT no ofrece compatibilidad con Squid ni con ningún otro servicio de proxy. Es responsabilidad del cliente configurar y mantener el servicio de proxy.

Configuración de una conexión de encadenamiento del proxy

En este procedimiento se describe cómo instalar y configurar una conexión entre los sensores y Defender para IoT mediante la versión más reciente de Squid en un servidor Ubuntu.

  1. Defina la configuración del proxy en cada sensor:

    1. Inicie sesión en el sensor de OT y seleccione Configuración del sistema > Configuración de red del sensor.

    2. Active la opción Habilitar proxy y defina el nombre de usuario, la contraseña, el puerto y el host del proxy.

  2. Instale el proxy Squid:

    1. Inicie sesión en la máquina Ubuntu de proxy e inicie una ventana de terminal.

    2. Actualice el sistema e instale Squid. Por ejemplo:

      sudo apt-get update
      sudo apt-get install squid
      
    3. Busque el archivo de configuración de Squid. Por ejemplo, en /etc/squid/squid.conf o /etc/squid/conf.d/ y abra el archivo en un editor de texto.

    4. En el archivo de configuración de Squid, busque el texto siguiente: # INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS.

    5. Agregue acl <sensor-name> src <sensor-ip> y http_access allow <sensor-name> en el archivo. Por ejemplo:

      # INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
      acl sensor1 src 10.100.100.1
      http_access allow sensor1
      

      Agregue más sensores según sea necesario; para ello, agregue líneas adicionales para el sensor.

    6. Configure el servicio Squid para que se ejecute en el inicio. Ejecute:

      sudo systemctl enable squid
      
  3. Conecte el proxy a Defender para IoT. Asegúrese de que el tráfico HTTPS saliente en el puerto 443 se permita desde el sensor a los puntos de conexión necesarios para Defender para IoT.

    Para más información, consulte Aprovisionamiento de sensores de OT para la administración en la nube.

El proxy ya está completamente configurado. A continuación, defina la configuración del proxy en el sensor de OT.

Configurar la conectividad para entornos multinube

En esta sección se describe cómo conectar el sensor a Defender para IoT en Azure desde sensores implementados en una o varias nubes públicas. Para obtener más información, consulte Conexiones multinube.

Requisitos previos

Antes de empezar, asegúrese de que tiene un sensor implementado en una nube pública, como AWS o Google Cloud, y configurado para supervisar el tráfico SPAN.

Seleccionar un método de conectividad multinube

Use el siguiente gráfico de flujo para determinar qué método de conectividad usar:

Flow chart to determine which connectivity method to use.

  • Use direcciones IP públicas a través de Internet si no necesita intercambiar datos mediante direcciones IP privadas.

  • Use una VPN de sitio a sitio a través de Internet solo si no* necesita nada de lo siguiente:

    • Rendimiento predecible
    • Contrato de nivel de servicio
    • Transferencias de volúmenes de datos elevados
    • Evitar conexiones a través de la red pública de Internet
  • Use ExpressRoute si necesita un rendimiento predecible, un contrato de nivel de servicio, transferencias de volúmenes de datos elevados o evitar conexiones a través de la red pública de Internet.

    En este caso:

    • Si quiere poseer y administrar los enrutadores que realizan la conexión, use ExpressRoute con enrutamiento administrado por el cliente.
    • Si no necesita poseer ni administrar los enrutadores que realizan la conexión, use ExpressRoute con un proveedor de intercambio en la nube.

Configuración

  1. Configure el sensor para conectarse a la nube mediante uno de los métodos recomendados de Cloud Adoption Framework para Azure. Para más información, consulte Conectividad con otros proveedores de nube.

  2. Para habilitar la conectividad privada entre las VPC y Defender para IoT, conecte la VPC a una red virtual de Azure a través de una conexión VPN. Por ejemplo, si se conecta desde una VPC de AWS, consulte nuestro blog de TechCommunity sobre la creación de una VPN entre Azure y AWS solo con soluciones administradas.

  3. Una vez configurada la VPC y la VNET, defina la configuración del proxy en el sensor de OT.

Pasos siguientes

Se recomienda configurar una conexión de Active Directory para administrar usuarios locales en el sensor de OT y también configurar el seguimiento de estado del sensor a través de SNMP.

Si no configura estas opciones durante la implementación, también puede volver y configurarlas más adelante. Para más información, consulte: