Configurar un conjunto de patrones
Para configurar un conjunto de patrones, debe especificar las cadenas que van a servir como patrones. Puede asignar manualmente un valor de índice único a cada uno de estos patrones o permitir que los valores de índice se asignen automáticamente.
Nota:
Los conjuntos de patrones distinguen entre mayúsculas y minúsculas (a menos que especifique la expresión para omitir mayúsculas y minúsculas). Por lo tanto, el patrón de cadena “product1”, por ejemplo, no es lo mismo que el patrón de cadena “Product1”.
Puntos para recordar acerca de los valores de índice:
- No puede vincular el mismo valor de índice a más de un patrón.
- Un valor de índice asignado automáticamente es un número mayor que el valor de índice más alto de los patrones existentes dentro del conjunto de patrones. Por ejemplo, si el valor de índice más alto de los patrones existentes en un conjunto de patrones es 104, el siguiente valor de índice asignado automáticamente es 105.
- Si no especifica un índice para el primer patrón, el valor de índice 1 se asigna automáticamente a ese patrón.
- Los valores del índice no se regeneran automáticamente si se eliminan o modifican uno o más patrones. Por ejemplo, si el conjunto contiene cinco patrones, con índices del 1 al 5, y si se elimina el patrón con un índice de 3, los demás valores de índice del conjunto de patrones no se regeneran automáticamente para producir valores del 1 al 4.
- El valor de índice máximo que se puede asignar a un patrón es 4294967290. Si ese valor ya está asignado a un patrón del conjunto, debe asignar manualmente los valores de índice a los patrones recién agregados. Un valor de índice no utilizado que sea inferior a un valor utilizado actualmente no se puede asignar automáticamente.
A partir de la versión 14.1-12.x de NetScaler, además de utilizar una cadena estática, también puede utilizar una expresión para derivar el nombre del conjunto de patrones y asociarlo a métodos de expresiones de directivas como CONTAINS_ANY, EQUALS_ANY y STARTSWITH_ANY. El nombre del conjunto de patrones se deriva dinámicamente de la expresión y, por lo tanto, reduce el número de directivas que se deben crear para varios conjuntos de patrones. Al crear un conjunto de patrones dinámicos, puede evitar configuraciones repetitivas.
Por ejemplo, en versiones anteriores a la versión 14.1-12.x de NetScaler, si hay cuatro conjuntos de patrones, debe crear cuatro directivas para asociarlos. A partir de la versión 14.1-12.x de NetScaler, además de utilizar una cadena estática, también puede utilizar una expresión para derivar el nombre del conjunto de patrones. La expresión ayuda a reducir la configuración.
Para que la expresión identifique el conjunto de patrones como parte de su evaluación, debe configurar el conjunto de patrones como dinámico mediante la palabra clave dynamic
. La expresión considera solo los conjuntos de patrones que están configurados como dinámicos. Si no configuró el conjunto de patrones como dinámico en el momento de la creación del conjunto de patrones, también puede configurarlo más adelante. Puede establecer palabras clave dinámicas solo para conjuntos de patrones no predeterminados.
Como parte de la evaluación de la expresión, se realizan las siguientes comprobaciones:
- Si no hay conjuntos de patrones que coincidan con la expresión, se considera un error y el contador de errores se incrementa.
- Si hay un nombre de conjunto de patrones que coincide con la expresión pero no está marcado como dinámico, se considera un error y el contador de errores se incrementa.
Configure un conjunto de patrones mediante la interfaz de línea de comandos
En el símbolo del sistema, haga lo siguiente:
-
Crea un conjunto de patrones.
add policy patset <name>
Ejemplo:
add policy patset samplepatset
-
Enlaza los patrones al conjunto de patrones.
bind policy patset <name> <string> [-index <positive_integer>][-charset ( ASCII | UTF_8 )] [-comment <string>]
Ejemplo:
bind policy patset samplepatset product1 -index 1 -comment short description about the pattern bound to the pattern set
Nota: Repita este paso para todos los patrones que quiera vincular al conjunto de patrones.
- Verifique la configuración.
show policy patset <name>
Configure un conjunto de patrones mediante la utilidad de configuración
- Vaya a AppExpert > Conjuntos de patrones.
- En el panel de detalles, haga clic en Agregar para abrir el cuadro de diálogo Crear conjunto de patrones.
- Especifique un nombre para el conjunto de patrones en el cuadro de texto Nombre.
- En Especificar patrón, escriba el primer patrón y, si lo quiere, especifique valores para los siguientes parámetros:
- Tratar la barra invertida como carácter de escape: active esta casilla de verificación para especificar que los caracteres de barra invertida que pueda incluir en el patrón se tratarán como caracteres de escape.
- Índice: un valor de índice asignado por el usuario, del 1 al 4294967290.
- Compruebe que ha introducido los caracteres correctos y, a continuación, haga clic en Agregar.
- Repita los pasos 4 y 5 para agregar más patrones y, a continuación, haga clic en Crear.
Configurar un conjunto de patrones dinámicos
Configurar un conjunto de patrones dinámicos mediante la CLI
En el símbolo del sistema, escriba los comandos siguientes:
-
Crea conjuntos de patrones.
add policy patset <name> - dynamic yes
-
Enlaza el conjunto de patrones a un conjunto de patrones.
bind patset <name> <string>
-
Agregue una directiva y utilice una expresión en lugar del nombre del conjunto de patrones.
add responder policy <name> <rule> <action>
-
Verifique la configuración.
show patset -dynamicOnly
Ejemplo de configuración de un conjunto de patrones dinámicos mediante la CLI
Cree Compa_pat y Compb_pat como los dos conjuntos de patrones dinámicos.
add policy patset CompA_pat -dynamic yes
bind policy patset CompA_pat stringA
add policy patset CompB_pat -dynamic yes
bind policy patset CompB_pat string B
<!--NeedCopy-->
Agregue una directiva con una expresión que derive el nombre del conjunto de patrones de forma dinámica:
add responder policy samplepolicy1 http.req.hostname.contains_any("Comp" + http.req.url.path.get(1) + "_pat") reset
Tenga en cuenta que http://www.citrix.com/A/home.html
o http://www.google.com/B/test.html
son las URL entrantes. En función de la URL entrante, la expresión “Comp” + http.req.url.path.get (1) + “_pat” determina el conjunto de patrones, Compa_pat o CompB_pat de forma dinámica en tiempo de ejecución. No es necesario crear dos directivas independientes para Compa_pat y Compb_pat.
Verifique la configuración con el comando show:
> show patset -dynamicOnly
1) Patset: CompA_pat
2) Patset: CompB_pat
Done
<!--NeedCopy-->
Configurar un conjunto de patrones dinámicos mediante la GUI
- Vaya a AppExpert > Conjuntos de patrones.
- Haga clic en Agregar para abrir el cuadro de diálogo Crear conjunto de patrones.
- Especifique un nombre para el conjunto de datos en el cuadro de texto Nombre.
- Haga clic en Insertar y especifique el patrón en el campo Patrón. Si lo desea, especifique un valor para el índice. El índice es un valor asignado por el usuario, comprendido entre 1 y 4294967290.
- Compruebe que ha introducido los caracteres correctos y, a continuación, haga clic en Insertar.
- Repite los pasos 4 y 5 para agregar más patrones.
- Seleccione la casilla Dinámico y, a continuación, haga clic en Crear.
- Vaya a AppExpert > Responder > Directivas > Agregar.
- Cree una expresión que pueda derivar el conjunto de patrones.
- Rellene los demás campos obligatorios y haga clic en Crear.
Establecer, anular o eliminar un conjunto de patrones dinámicos
Para establecer un conjunto de patrones no predeterminado como dinámico:
> set patset <name> -dynamic yes
Ejemplo:
> set patset CompA_pat -dynamic yes
Done
<!--NeedCopy-->
Para anular un patrón no predeterminado establecido como dinámico
> unset patset <name> -dynamic
Ejemplo:
> unset patset CompA_pat -dynamic
Warning: [Dynamic attribute turned off. Expressions using this patset or dataset dynamically will not work.]
Done
<!--NeedCopy-->
Para eliminar un conjunto de patrones dinámicos
> rm patset <name>
Ejemplo:
> rm patset CompA_pat
Warning: [Dynamic patset or dataset removed. Expressions using this patset or dataset dynamically will not work.]
Done
<!--NeedCopy-->
Nota:
Al eliminar o eliminar un conjunto de patrones dinámico, la expresión que utiliza este conjunto de patrones no funciona.
Configurar conjuntos de patrones basados en archivos
El dispositivo NetScaler admite conjuntos de patrones basados en archivos.
Configure conjuntos de patrones basados en archivos mediante la CLI
En el símbolo del sistema, escriba los comandos siguientes:
-
Importe un nuevo archivo de conjunto de patrones al dispositivo NetScaler.
import policy patsetfile <src> <name> -delimiter <char> -charset <ASCII | UTF_8> <!--NeedCopy-->
Ejemplo:
import policy patsetfile local:test.csv clientids_list –delimiter , <!--NeedCopy-->
Puede importar un archivo desde un dispositivo local, servidor HTTP o servidor FTP. Para agregar el archivo desde su dispositivo local, el archivo debe estar disponible en la ubicación
/var/tmp
. -
Agregue un archivo de conjunto de patrones al motor de paquetes.
add policy patsetfile <patset filename> <!--NeedCopy-->
Ejemplo:
add policy patsetfile clientids_list <!--NeedCopy-->
-
Actualice un archivo de conjunto de patrones existente en el dispositivo NetScaler.
update policy patsetfile <patset filename> <!--NeedCopy-->
Ejemplo:
update policy patsetfile clientids_list <!--NeedCopy-->
-
Enlaza los patrones al conjunto de patrones.
add policy patset <patset name> -patsetfile <patset filename> <!--NeedCopy-->
Ejemplo:
add policy patset clientid_patset -patsetfile clientids_list <!--NeedCopy-->
-
Verifique la configuración.
show policy patsetfile clientids_list Name: clientids_list Patset Name: clientid_patset Number of Imported Patterns: 8 Number of Bound Patterns: 8 (All the patterns bound successfully) Done <!--NeedCopy-->
Configure conjuntos de patrones basados en archivos mediante la interfaz gráfica de usuario
-
Vaya a AppExpert-> Archivos de conjuntos de patrones.
-
En el panel Importado, haga clic en Importar.
-
En la página Configurar el archivo Patset de directivas, seleccione el archivo que quiere importar y haga clic en Aceptar.
-
Seleccione el archivo importado y haga clic en Agregar.
-
En la página Crear archivo de patentes de directivas, introduzca los detalles y haga clic en Crear para agregar un conjunto de patrones de directivas.