ADC

Creación y configuración de directivas de Web App Firewall

Una directiva de firewall consta de dos elementos: una reglay un perfilasociado. La regla selecciona el tráfico HTTP que coincide con los criterios establecidos y envía ese tráfico al Web App Firewall para su filtrado. El perfil contiene los criterios de filtrado que utiliza el Web App Firewall.

La regla de directiva consiste en una o más expresiones del lenguaje de expresiones de NetScaler. La sintaxis de expresiones de NetScaler 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 de NetScaler o que prefieran configurar su dispositivo NetScaler mediante una interfaz basada en la web, la GUI proporciona dos herramientas: el menúPrefijoy el cuadro de diálogo Agregar expresión. Ambos le ayudan a escribir expresiones que seleccionen 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 NetScaler para configurar sus dispositivos NetScaler.

Nota:

Además de la sintaxis de expresiones predeterminada, para garantizar la compatibilidad con versiones anteriores, el sistema operativo NetScaler admite la sintaxis de expresiones clásicas de NetScaler en los dispositivos NetScaler Classic y nCore y en los dispositivos virtuales. Las expresiones clásicas no se admiten en los dispositivos NetScaler Cluster ni en los dispositivos virtuales. Los usuarios actuales de NetScaler que quieran migrar configuraciones existentes al clúster NetScaler 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 NetScaler, consulte Directivas y expresiones.

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

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

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

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

Ejemplo

El siguiente ejemplo agrega una directiva denominada pl-blog, con una regla que intercepta todo el tráfico hacia o desde el host blog.example.com y asocia esa directiva al perfil pr-blog. Esta es una directiva 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 directiva mediante la interfaz gráfica de usuario

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

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

    • Para crear una directiva de firewall, haga clic en Agregar. Aparece la directiva de creación de Web App Firewall .
    • Para editar una directiva 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 está creando una directiva de firewall, en el cuadro de diálogo Crear directiva de Web App Firewall, cuadro de texto Nombre de directiva, escriba un nombre para la nueva directiva.

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

    Si está configurando una directiva de firewall existente, este campo es de solo lectura. No puede modificarlo.

  4. Seleccione el perfil que desee asociar a esta directiva en la lista desplegable de perfiles. Puede crear un perfil para asociarlo a su directiva haciendo clic en Nuevo y modificar un perfil existente haciendo clic en Modificar.

  5. En el área de texto de la expresión, cree una regla para su directiva.

    • 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 usarlo para crear 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 el Web App Firewall filtra mediante el perfil asociado a la directiva. Al igual que otras reglas (o expresiones) de directivas de NetScaler, las reglas de Web App Firewall utilizan la sintaxis de expresiones de NetScaler. Esta sintaxis es potente, flexible y extensible. Es demasiado complejo para describirlo en su totalidad en este conjunto de instrucciones. Puede utilizar el siguiente procedimiento para crear una regla de directiva de firewall sencilla o puede leerla como una descripción general del proceso de creación de directivas.

  1. Si aún no lo ha hecho, vaya a la ubicación correspondiente en el asistente de Web App Firewall o en la GUI de NetScaler para crear su regla de directiva:

    • 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 configura una directiva manualmente, en el panel de navegación, expanda Web App Firewall, Directivasy, por último, Firewall. En el panel de detalles, para crear una directiva, haga clic en Agregar. Para modificar una directiva 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 la expresión en la lista desplegable. Las opciones disponibles son:

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

    Tras elegir un prefijo, el Web App Firewall muestra una ventana emergente en dos partes que muestra las posibles opciones siguientes en la parte superior y una breve explicación del significado de la opció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. (El Web App Firewall funciona con la solicitud y la respuesta como una unidad, en lugar de hacerlo por separado). Si elige otro prefijo, sus opciones son más variadas. Para obtener ayuda sobre una opción específica, haga clic en esa opción una vez para mostrar información sobre ella en la ventana emergente inferior.

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

  4. Escriba un punto después del término que acaba de elegir. A continuación, se le pedirá que elija el siguiente término, tal y como se describe en el paso anterior. Cuando un término requiera que escriba un valor, rellene el valor correspondiente. Por ejemplo, si elige HTTP.REQ.HEADER (“”), escriba el nombre del encabezado entre comillas.

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

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

    • Servidor web específico. Para hacer coincidir el tráfico de un proveedor de alojamiento web determinado:

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

      Para shopping.example.com, sustituya el nombre del proveedor de alojamiento web con el que desee hacer coincidir.

    • Carpeta o directorio web específico. Para hacer coincidir el tráfico de una carpeta o directorio en particular de un servidor web:

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

      En www.example.com, sustituya el nombre del proveedor de alojamiento web. Para la carpeta, sustituya la carpeta o la ruta por el contenido con el que desee hacer coincidir. Por ejemplo, si su carrito de compras está en una carpeta llamada /solutions/orders, sustituya esa cadena por carpeta.

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

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

      Para que coincidan con imágenes de otro formato, sustituya la extensión.gif por otra cadena.

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

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

      Para hacer coincidir todo el 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 incluir entre comillas dobles las expresiones de NetScaler. 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 firewall (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 de NetScaler a crear una directiva que coincida con el tráfico que desean filtrar.

  1. Si aún no lo ha hecho, vaya a la ubicación correspondiente en el asistente Web App Firewall o en la GUI de NetScaler:
    • 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 configura una directiva manualmente, en el panel de navegación, expanda Web App Firewall, Directivasy, por último, Firewall. En el panel de detalles, para crear una directiva, haga clic en Agregar. Para modificar una directiva 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 firewall de aplicaciones web o en el cuadro de diálogo Configurar perfil de firewall de aplicaciones web, 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 siguientes prefijos:
    • HTTP. Elija el protocolo HTTP si desea examinar algún aspecto de la solicitud relacionado con el protocolo HTTP. La opción por defecto.
    • SYS. Elija sitios web protegidos si desea examinar algún aspecto de la solicitud relacionado con el destinatario de la solicitud.
    • CLIENT. Elija el equipo que envió la solicitud si desea examinar algún aspecto del remitente de la solicitud.
    • SERVIDOR. Elija el ordenador 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 hecho en el paso anterior, ya que el cuadro de diálogo ajusta automáticamente la lista para que contenga solo los términos válidos para el contexto. Por ejemplo, si seleccionó HTTP en el cuadro de lista anterior, la única opción es REQ, para las solicitudes. Dado que el Web App Firewall trata las solicitudes y las respuestas asociadas como una sola unidad y filtra ambas, no es necesario especificar las respuestas por separado. Después de elegir el segundo término, aparecerá 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 la expresión muestra la expresión.
  5. En el tercer cuadro de lista, selecciona el siguiente término. Aparece un nuevo cuadro de lista a la derecha y la ventana de Ayuda cambia para mostrar una descripción del nuevo término. La ventana Vista previa de la expresión se actualiza para mostrar la expresión tal como la especificó hasta ese momento.
  6. Siga eligiendo términos y, cuando se le solicite, rellenando los argumentos, hasta que la expresión esté completa. Si comete un error o quiere 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 todos los argumentos o términos que haya añadido después del término modificado.
  7. Cuando haya terminado de crear 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 de la expresión .
Creación y configuración de directivas de Web App Firewall