Citrix ADC

Creación y configuración de políticas de Web App Firewall

Una política de cortafuegos consta de dos elementos: una reglay un perfilasociado. La regla selecciona el tráfico HTTP que coincide con los criterios establecidos y lo envía a Web App Firewall para filtrarlo. El perfil contiene los criterios de filtrado que utiliza Web App Firewall.

La regla de política consta de una o más expresiones en el lenguaje de expresiones Citrix ADC. La sintaxis de expresiones Citrix ADC es un potente lenguaje de programación orientado a objetos que le permite designar con precisión el tráfico que desea procesar con un perfil específico. Para los usuarios que no están familiarizados con la sintaxis del lenguaje de expresiones Citrix ADC o que prefieren configurar su dispositivo Citrix ADC mediante una interfaz basada en web, la GUI proporciona dos herramientas: el menú Prefijo y el cuadro de diálogo Agregar expresión . Ambos le ayudan a escribir expresiones que seleccionan exactamente el tráfico que desea procesar. Los usuarios experimentados que están completamente familiarizados con la sintaxis pueden preferir utilizar la línea de comandos de Citrix ADC para configurar sus dispositivos Citrix ADC.

Nota:

Además de la sintaxis de expresiones predeterminada, para obtener compatibilidad con versiones anteriores, el sistema operativo Citrix ADC admite la sintaxis de expresiones clásicas de Citrix ADC en dispositivos y dispositivos virtuales Citrix ADC Classic y nCore. Las expresiones clásicas no se admiten en los dispositivos y dispositivos virtuales Citrix ADC Cluster. Los usuarios actuales de Citrix ADC que quieran migrar configuraciones existentes al clúster Citrix ADC deben migrar las directivas que contengan expresiones clásicas a la sintaxis de expresiones predeterminadas.

Para obtener información detallada sobre los lenguajes de expresiones Citrix ADC, consulte Directivas y expresiones.

Puede crear una directiva de firewall mediante la GUI o la línea de comandos de Citrix ADC.

Para crear y configurar una directiva mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba los siguientes comandos:

  • add appfw policy <name><rule> <profileName>
  • save ns config

Ejemplo

En el siguiente ejemplo se agrega una política denominada pl-blog, con una regla que intercepta todo el tráfico hacia o desde el blog.example.com del host, y asocia esa política al perfil pr-blog. Esta es una política adecuada para proteger un blog alojado en un nombre de host específico.

add appfw policy pl-blog "HTTP.REQ.HOSTNAME.DOMAIN.EQ("blog.example.com")" pr-blog
<!--NeedCopy-->

Para crear y configurar una política mediante la GUI

  1. Vaya a Seguridad > Web App Firewall > Directivas.

  2. En el panel de detalles, realice una de las acciones siguientes:

    • Para crear una política de cortafuegos, haga clic en Agregar. Aparece la directiva Create Web App Firewall .
    • Para editar una política de firewall existente, selecciónela y, a continuación, haga clic en Editar.

    Se muestra la directiva Crear Web App Firewall o la directiva Configurar Web App Firewall.

  3. Si va a crear una política de cortafuegos, en el cuadro de diálogo Crear política de Web App Firewall, cuadro de texto Nombre de directiva, escriba un nombre para la nueva política.

    El nombre puede comenzar con una letra, un número o un símbolo de guión bajo, y puede constar de una a 128 letras, números y el guión (-), punto (.) libra (#), espacio (), at (@), igual a (=), dos puntos (:) y guión bajo (_).

    Si va a configurar una política de cortafuegos existente, este campo es de solo lectura. No puedes modificarlo.

  4. Seleccione el perfil que desea asociar a esta política en la lista desplegable Perfil. Puede crear un perfil para asociarlo a su política haciendo clic en Nuevo y puede modificar un perfil existente haciendo clic en Modificar.

  5. En el área de texto Expresión, cree una regla para la política.

    • Puede escribir una regla directamente en el área de texto.
    • Puede hacer clic en Prefijo para seleccionar el primer término de la regla y seguir las instrucciones.
    • Puede hacer clic en Agregar para abrir el cuadro de diálogo Agregar expresión y utilizarlo para construir la regla.
  6. Haga clic en Crear o Aceptary, a continuación, en Cerrar.

Para crear o configurar una regla de Web App Firewall (expresión)

La regla de directiva, también denominada expresión, define el tráfico web que filtra Web App Firewall mediante el perfil asociado a la política. Al igual que otras reglas de política (o expresiones) de Citrix ADC, las reglas de Web App Firewall utilizan la sintaxis de expresiones de Citrix ADC. Esta sintaxis es potente, flexible y extensible. Es demasiado complejo describirlo por completo en este conjunto de instrucciones. Puede utilizar el siguiente procedimiento para crear una regla de política de cortafuegos simple o leerla como descripción general del proceso de creación de políticas.

  1. Si aún no lo ha hecho, vaya a la ubicación adecuada en el asistente de Web App Firewall o en la GUI de Citrix ADC para crear la regla de política:

    • Si está configurando una directiva en el asistente Web App Firewall, en el panel de navegación, haga clic en Web App Firewall y, a continuación, en el panel de detalles haga clic en Asistente para Web App Firewall y, a continuación, vaya a la pantalla Especificar regla.
    • Si va a configurar una directiva manualmente, en el panel de navegación, expanda Web App Firewall, Políticasy, a continuación, Firewall. En el panel de detalles, para crear una política, haga clic en Agregar. Para modificar una política existente, selecciónela y, a continuación, haga clic en Abrir.
  2. En la pantalla Especificar regla, en el cuadro de diálogo Crear perfil de Web App Firewall o en el cuadro de diálogo Configurar perfil de firewall de aplicaciones web, haga clic en Prefijoy, a continuación, elija el prefijo de su expresión en la lista desplegable. Las opciones disponibles son:

    • HTTP. Elija un protocolo HTTP si desea examinar algún aspecto de la solicitud que pertenece al protocolo.
    • SYS. Elija sitios web protegidos si desea examinar algún aspecto de la solicitud que pertenece al destinatario de la solicitud.
    • CLIENTE. Elija un cliente que envió la solicitud. Elija esta opción si desea examinar algún aspecto del remitente de la solicitud.
    • SERVIDOR. Elija un cliente al que se envió la solicitud y si desea examinar algún aspecto del destinatario de la solicitud.

    Después de elegir un prefijo, Web App Firewall muestra una ventana de solicitud de dos partes que muestra las siguientes opciones posibles en la parte superior y una breve explicación de lo que significa la elección seleccionada en la parte inferior.

  3. Elige tu próximo trimestre.

    Si ha elegido el protocolo HTTP como prefijo, la única opción es REQ, que especifica el par Solicitud/Respuesta. (Web App Firewall funciona según la solicitud y la respuesta como unidad en lugar de en cada uno por separado). Si eliges otro prefijo, tus elecciones son más variadas. Para obtener ayuda sobre una elección específica, haga clic en esa opción una vez para mostrar información sobre ella en la ventana de solicitud inferior.

    Cuando haya decidido qué término desea, haga doble clic en él para insertarlo en la ventana Expresión .

  4. Escriba un periodo después del plazo que acaba de elegir. A continuación, se le pedirá que elija su próximo término, tal como se describe en el paso anterior. Cuando un término requiera escribir un valor, rellene el valor adecuado. Por ejemplo, si elige HTTP.REQ.HEADER («»), escriba el nombre del encabezado entre las comillas.

  5. Siga eligiendo los términos de las solicitudes y rellenando los valores necesarios hasta que finalice la expresión.

    A continuación se presentan algunos ejemplos de expresiones para fines específicos.

    • Host web específico. Para hacer coincidir el tráfico de un host web concreto:

       HTTP.REQ.HEADER("Host").EQ("shopping.example.com")
       <!--NeedCopy-->
      

      Para shopping.example.com, sustituye el nombre del host web que quieres que coincida.

    • Carpeta o directorio web específicos. Para hacer coincidir el tráfico de una carpeta o directorio concretos de un host web:

       HTTP.REQ.URL.STARTSWITH("https//www.example.com/folder")
       <!--NeedCopy-->
      

      En www.example.com, sustituya el nombre del host web. En el caso de la carpeta, sustituya la carpeta o la ruta del contenido que desea que coincida. Por ejemplo, si el carrito de la compra se encuentra en una carpeta llamada /solutions/orders, sustituye esa cadena por carpeta.

    • Tipo específico de contenido: imágenes GIF. Para hacer coincidir imágenes en formato GIF:

       HTTP.REQ.URL.ENDSWITH(".gif")
       <!--NeedCopy-->
      

      Para que coincidan con otras imágenes de formato, sustituya otra cadena en lugar de .gif.

    • Tipo específico de contenido: scripts. Para hacer coincidir todos los scripts CGI ubicados en el directorio CGI-BIN:

       HTTP.REQ.URL.STARTSWITH("https//www.example.com/CGI-BIN")
       <!--NeedCopy-->
      

      Para hacer coincidir todos los JavaScript con las extensiones.js:

       HTTP.REQ.URL.ENDSWITH(".js")
       <!--NeedCopy-->
      

      Para obtener más información sobre la creación de expresiones de directiva, consulte Directivas y expresiones.

    Nota:

    Si utiliza la línea de comandos para configurar una directiva, recuerde escapar cualquier comillas dobles dentro de las expresiones de Citrix ADC. Por ejemplo, la siguiente expresión es correcta si se introduce en la GUI:

    HTTP.REQ.HEADER("Host").EQ("shopping.example.com")
    <!--NeedCopy-->
    

    Sin embargo, si se introduce en la línea de comandos, debe escribir el siguiente comando en su lugar:

    HTTP.REQ.HEADER("Host").EQ("shopping.example.com")
    <!--NeedCopy-->
    

Para agregar una regla de cortafuegos (expresión) mediante el cuadro de diálogo Agregar expresión

El cuadro de diálogo Agregar expresión (también denominado Editor de expresiones) ayuda a los usuarios que no están familiarizados con el lenguaje de expresiones Citrix ADC a crear una política que coincida con el tráfico que desean filtrar.

  1. Si aún no lo ha hecho, vaya a la ubicación adecuada en el asistente de Web App Firewall o en la GUI de Citrix ADC:
    • Si está configurando una directiva en el asistente Web App Firewall, en el panel de navegación, haga clic en Web App Firewall y, a continuación, en el panel de detalles haga clic en Asistente para Web App Firewall y, a continuación, vaya a la pantalla Especificar regla.
    • Si va a configurar una directiva manualmente, en el panel de navegación, expanda Web App Firewall, Políticasy, a continuación, Firewall. En el panel de detalles, para crear una política, haga clic en Agregar. Para modificar una política existente, selecciónela y, a continuación, haga clic en Abrir.
  2. En la pantalla Especificar regla, en el cuadro de diálogo Crear perfil de Web App Firewall o en el cuadro de diálogo Configurar perfil de Web App Firewall, haga clic en Agregar.
  3. En el cuadro de diálogo Agregar expresión, en el área Construir expresión, en el primer cuadro de lista, elija uno de los prefijos siguientes:
    • HTTP. Elija el protocolo HTTP si desea examinar algún aspecto de la solicitud que pertenece al protocolo HTTP. La elección predeterminada.
    • SYS. Elija sitios web protegidos si desea examinar algún aspecto de la solicitud que pertenece al destinatario de la solicitud.
    • CLIENTE. Elija el equipo que envió la solicitud si desea examinar algún aspecto del remitente de la solicitud.
    • SERVIDOR. Elija el equipo al que se envió la solicitud y examine algún aspecto del destinatario de la solicitud.
  4. En el segundo cuadro de lista, elige tu próximo término. Los términos disponibles varían según la elección que haya realizado en el paso anterior, porque el cuadro de diálogo ajusta automáticamente la lista para que contenga únicamente los términos válidos para el contexto. Por ejemplo, si ha seleccionado HTTP en el cuadro de lista anterior, la única opción es REQ, para las solicitudes. Dado que Web App Firewall trata las solicitudes y las respuestas asociadas como una sola unidad y filtra ambas, no necesita respuestas específicas por separado. Después de elegir el segundo término, aparece un tercer cuadro de lista a la derecha del segundo. La ventana Ayuda muestra una descripción del segundo término y la ventana Vista previa de expresión muestra la expresión.
  5. En el tercer cuadro de lista, elige el siguiente término. Aparece un nuevo cuadro de lista a la derecha y la ventana Ayuda cambia para mostrar una descripción del nuevo término. La ventana Vista previa de expresión se actualiza para mostrar la expresión tal y como la ha especificado hasta ese punto.
  6. Siga eligiendo términos y, cuando se le solicite rellenar argumentos, hasta que se complete la expresión. Si comete un error o desea cambiar la expresión después de haber seleccionado un término, simplemente puede elegir otro término. La expresión se modifica y se borran los argumentos o más términos que haya agregado después del término modificado.
  7. Cuando haya terminado de construir la expresión, haga clic en Aceptar para cerrar el cuadro de diálogo Agregar expresión . La expresión se inserta en el área de texto Expresión.