-
-
Configuration de Citrix ADC pour Citrix Virtual Apps and Desktops
-
Préférence de zone optimisée pour l'équilibrage de la charge du serveur global (GSLB)
-
Déploiement d'une plateforme de publicité numérique sur AWS avec Citrix ADC
-
Amélioration de l'analyse des flux de clics dans AWS à l'aide de Citrix ADC
-
Citrix ADC dans un cloud privé géré par Microsoft Windows Azure Pack et Cisco ACI
-
-
Déployer une instance de Citrix ADC VPX sur AWS
-
Installer une instance Citrix ADC VPX sur le cloud VMware sur AWS
-
Installer une instance Citrix ADC VPX sur des serveurs Microsoft Hyper-V
-
Installer une instance Citrix ADC VPX sur la plate-forme Linux-KVM
-
Provisionnement de l'appliance virtuelle Citrix ADC à l'aide d'OpenStack
-
Provisionnement de l'appliance virtuelle Citrix ADC à l'aide de Virtual Machine Manager
-
Configuration des appliances virtuelles Citrix ADC pour utiliser l'interface réseau SR-IOV
-
Configuration des appliances virtuelles Citrix ADC pour utiliser l'interface réseau PCI
-
Provisioning de l'appliance virtuelle Citrix ADC à l'aide du programme virsh
-
Provisioning de l'appliance virtuelle Citrix ADC avec SR-IOV, sur OpenStack
-
Configuration d'une instance Citrix ADC VPX sur KVM pour utiliser les interfaces hôtes OVS DPDK
-
Déployer une instance de Citrix ADC VPX sur AWS
-
Serveurs d'équilibrage de charge dans différentes zones de disponibilité
-
Haute disponibilité dans toutes les zones de disponibilité AWS
-
Déployer une paire VPX haute disponibilité avec des adresses IP privées dans différentes zones AWS
-
Ajout d'un service de mise à l'échelle automatique AWS back-end
-
Configurer une instance Citrix ADC VPX pour utiliser l'interface réseau SR-IOV
-
Configurer une instance Citrix ADC VPX pour utiliser la mise en réseau améliorée avec AWS ENA
-
Déployer une instance de Citrix ADC VPX sur Microsoft Azure
-
Architecture réseau pour les instances Citrix ADC VPX sur Microsoft Azure
-
Configurer plusieurs adresses IP pour une instance autonome Citrix ADC VPX
-
Configurer une configuration haute disponibilité avec plusieurs adresses IP et cartes réseau
-
Configurer une instance Citrix ADC VPX pour utiliser la mise en réseau accélérée Azure
-
Configurer les nœuds HA-INC à l'aide du modèle de haute disponibilité Citrix avec Azure ILB
-
Ajouter des paramètres de mise à l'échelle automatique Azure
-
Configurer GSLB sur une configuration haute disponibilité active en veille
-
Configurer des pools d'adresses (IIP) pour une appliance Citrix Gateway
-
Scripts PowerShell supplémentaires pour le déploiement Azure
-
Déployer une instance Citrix ADC VPX sur Google Cloud Platform
-
Déployer une paire haute disponibilité VPX sur Google Cloud Platform
-
Déployer une paire VPX haute disponibilité avec des adresses IP privées sur Google Cloud Platform
-
Ajouter un service de mise à l'échelle automatique GCP back-end
-
Prise en charge de la mise à l'échelle VIP pour l'instance Citrix ADC VPX sur GCP
-
-
Automatiser le déploiement et les configurations de Citrix ADC
-
Solutions pour les fournisseurs de services de télécommunication
-
Trafic de plan de contrôle d'équilibrage de charge basé sur les protocoles Diameter, SIP et SMPP
-
Utilisation de la bande passante à l'aide de la fonctionnalité de redirection de cache
-
Optimisation TCP de Citrix ADC
-
Authentification, autorisation et audit du trafic des applications
-
Fonctionnement de l'authentification, de l'autorisation et de l'audit
-
Composants de base de la configuration d'authentification, d'autorisation et d'audit
-
Autorisation de l'accès des utilisateurs aux ressources applicatives
-
Citrix ADC en tant que proxy du service de fédération Active Directory
-
Citrix Gateway sur site en tant que fournisseur d'identité pour Citrix Cloud
-
Prise en charge de la configuration de l'attribut de cookie SameSite
-
Configuration d'authentification, d'autorisation et d'audit pour les protocoles couramment utilisés
-
Résoudre les problèmes liés à l'authentification et à l'autorisation
-
-
-
Prise en charge de la configuration Citrix ADC dans la partition d'administration
-
Prise en charge de VXLAN pour les partitions d'administration
-
Prise en charge de SNMP pour les partitions d'administration
-
Prise en charge des journaux d'audit pour les partitions d'administration
-
Afficher les adresses PMAC configurées pour la configuration VLAN partagée
-
-
-
-
Configuration de l'expression de stratégie avancée : Mise en route
-
Expressions de stratégie avancées : utilisation de dates, d'heures et de nombres
-
Expressions de stratégie avancées : analyse des données HTTP, TCP et UDP
-
Expressions de stratégie avancées : analyse des certificats SSL
-
Expressions de stratégie avancées : adresses IP et MAC, débit, ID VLAN
-
Expressions de stratégie avancées : fonctions d'analyse de flux
-
Référence aux expressions - Expressions de stratégie avancées
-
Résumé d'exemples d'expressions et de stratégies de syntaxe par défaut
-
Didacticiel exemples de stratégies de syntaxe par défaut pour la réécriture
-
Migration des règles Apache mod_rewrite vers la syntaxe par défaut
-
-
-
Traduire l'adresse IP de destination d'une requête vers l'adresse IP d'origine
-
-
Prise en charge de la configuration de Citrix ADC dans un cluster
-
-
-
Groupes de nœuds pour les configurations spotted et striped partielles
-
Suppression du nœud d'un cluster déployé à l'aide de l'agrégation de liens de cluster
-
Surveillance des itinéraires pour les itinéraires dynamiques dans le cluster
-
Surveillance de la configuration du cluster à l'aide de MIB SNMP avec liaison SNMP
-
Surveillance des échecs de propagation des commandes dans un déploiement de cluster
-
Prise en charge de MSR pour les nœuds inactifs dans une configuration de cluster spotted
-
Liaison d'interface VRRP dans un cluster actif à nœud unique
-
Scénarios de configuration et d'utilisation du cluster
-
Migration d'une configuration HA vers une configuration de cluster
-
Interfaces communes pour le client et le serveur et interfaces dédiées pour le backplane
-
Commutateur commun pour le client, le serveur et le backplane
-
Commutateur commun pour le client et le serveur et commutateur dédié pour le backplane
-
Services de surveillance dans un cluster à l'aide de la surveillance des chemins
-
Opérations prises en charge sur des nœuds de cluster individuels
-
-
-
Configurer les enregistrements de ressources DNS
-
Créer des enregistrements MX pour un serveur d'échange de messagerie
-
Créer des enregistrements NS pour un serveur faisant autorité
-
Créer des enregistrements NAPTR pour le domaine des télécommunications
-
Créer des enregistrements PTR pour les adresses IPv4 et IPv6
-
Créer des enregistrements SOA pour les informations faisant autorité
-
Créer des enregistrements TXT pour contenir du texte descriptif
-
Configurer Citrix ADC en tant que résolveur de stub adapté à la sécurité sans validation
-
Prise en charge des trames Jumbo pour DNS pour gérer les réponses de grandes tailles
-
Configurer la mise en cache négative des enregistrements DNS
-
-
Équilibrage de charge globale des serveurs
-
Configurer les entités GSLB individuellement
-
Cas d'utilisation : Déploiement d'un groupe de services d'échelle automatique basé sur l'adresse IP
-
-
Remplacer le comportement de proximité statique en configurant les emplacements préférés
-
Configurer la sélection du service GSLB à l'aide du changement de contenu
-
Configurer GSLB pour les requêtes DNS avec les enregistrements NAPTR
-
Exemple de configuration parent-enfant complète à l'aide du protocole d'échange de mesures
-
-
Équilibrer la charge du serveur virtuel et des états de service
-
Protéger une configuration d'équilibrage de charge contre les défaillances
-
-
Configurer des serveurs virtuels d'équilibrage de charge sans session
-
Réécriture des ports et des protocoles pour la redirection HTTP
-
Insérer l'adresse IP et le port d'un serveur virtuel dans l'en-tête de requête
-
Utiliser une adresse IP source spécifiée pour la communication backend
-
Définir une valeur de délai d'attente pour les connexions client inactives
-
Utiliser un port source à partir d'une plage de ports spécifiée pour la communication backend
-
Configurer la persistance de l'IP source pour les communications backend
-
-
Paramètres avancés d'équilibrage de charge
-
Protéger les applications sur les serveurs protégés contre les surtensions de trafic
-
Activer le nettoyage des connexions de serveur virtuel et de service
-
Activer ou désactiver la session de persistance sur les services TROFS
-
Activer la vérification de l'état TCP externe pour les serveurs virtuels UDP
-
Maintenir la connexion client pour plusieurs demandes client
-
Utiliser l'adresse IP source du client lors de la connexion au serveur
-
Définir une limite de nombre de requêtes par connexion au serveur
-
Définir une valeur de seuil pour les moniteurs liés à un service
-
Définir une valeur de délai d'attente pour les connexions client inactives
-
Définir une valeur de délai d'attente pour les connexions au serveur inactif
-
Définir une limite sur l'utilisation de la bande passante par les clients
-
Configurer les moniteurs dans une configuration d'équilibrage de charge
-
Configurer l'équilibrage de charge pour les protocoles couramment utilisés
-
Cas d'utilisation 3 : Configurer l'équilibrage de charge en mode de retour direct du serveur
-
Cas d'utilisation 4 : Configurer les serveurs LINUX en mode DSR
-
Cas d'utilisation 5 : Configurer le mode DSR lors de l'utilisation de TOS
-
Cas d'utilisation 7 : Configurer l'équilibrage de charge en mode DSR à l'aide d'IP sur IP
-
Cas d'utilisation 8 : Configurer l'équilibrage de charge en mode à un bras
-
Cas d'utilisation 9 : Configurer l'équilibrage de charge en mode Inline
-
Cas d'utilisation 10 : Équilibrage de la charge des serveurs du système de détection d'intrusion
-
Cas d'utilisation 11 : Isolation du trafic réseau à l'aide de stratégies d'écoute
-
Cas d'utilisation 12 : Configurer XenDesktop pour l'équilibrage de charge
-
Cas d'utilisation 13 : Configurer XenApp pour l'équilibrage de charge
-
Cas d'utilisation 14 : Assistant ShareFile pour l'équilibrage de charge Citrix ShareFile
-
-
Configurer pour source de trafic de données Citrix ADC FreeBSD à partir d'une adresse SNIP
-
Déchargement et accélération SSL
-
Prise en charge du protocole TLSv1.3 tel que défini dans la RFC 8446
-
Suites de chiffrement disponibles sur les appliances Citrix ADC
-
Matrice de prise en charge des certificats de serveur sur l'appliance ADC
-
Prise en charge du module de sécurité matérielle du réseau Gemalto SafeNet
-
-
-
-
Authentification et autorisation pour les utilisateurs du système
-
Configuration des utilisateurs, des groupes d'utilisateurs et des stratégies de commande
-
Réinitialisation du mot de passe administrateur par défaut (nsroot)
-
Configuration de l'authentification des utilisateurs externes
-
Authentification basée sur la clé SSH pour les administrateurs Citrix ADC
-
Authentification à deux facteurs pour les utilisateurs système
-
-
-
Configuration d'un tunnel de connecteur CloudBridge entre deux centres de données
-
Configuration de CloudBridge Connector entre Datacenter et AWS Cloud
-
Configuration d'un tunnel de connecteur CloudBridge entre un centre de données et Azure Cloud
-
Configuration du tunnel Connector CloudBridge entre Datacenter et SoftLayer Enterprise Cloud
-
-
Points à prendre en considération pour une configuration de haute disponibilité
-
Restriction du trafic de synchronisation haute disponibilité à un VLAN
-
Configuration des nœuds haute disponibilité dans différents sous-réseaux
-
Limitation des basculements causés par les moniteurs de routage en mode non-INC
-
Comprendre le calcul de la vérification de l'état de haute disponibilité
-
Gestion des messages de pulsation haute disponibilité sur une appliance Citrix ADC
-
Suppression et remplacement d'un Citrix ADC dans une configuration haute disponibilité
-
This content has been machine translated dynamically.
Dieser Inhalt ist eine maschinelle Übersetzung, die dynamisch erstellt wurde. (Haftungsausschluss)
Cet article a été traduit automatiquement de manière dynamique. (Clause de non responsabilité)
Este artículo lo ha traducido una máquina de forma dinámica. (Aviso legal)
此内容已动态机器翻译。 放弃
このコンテンツは動的に機械翻訳されています。免責事項
This content has been machine translated dynamically.
This content has been machine translated dynamically.
This content has been machine translated dynamically.
This article has been machine translated.
Dieser Artikel wurde maschinell übersetzt. (Haftungsausschluss)
Ce article a été traduit automatiquement. (Clause de non responsabilité)
Este artículo ha sido traducido automáticamente. (Aviso legal)
この記事は機械翻訳されています.免責事項
이 기사는 기계 번역되었습니다.
Este artigo foi traduzido automaticamente.
这篇文章已经过机器翻译.放弃
Translation failed!
Conversion d’expressions de stratégie à l’aide de l’outil NSPEPI
Les fonctionnalités et fonctionnalités classiques basées sur des stratégies sont obsolètes à partir de NetScaler 12.0 build 56.20. Comme alternative, Citrix vous recommande d’utiliser l’infrastructure de stratégie avancée. Dans le cadre de cet effort, lorsque vous effectuez une mise à niveau vers Citrix ADC 12.1 build 56.20 ou version ultérieure, vous devez remplacer les fonctionnalités et fonctionnalités basées sur des stratégies classiques par les fonctionnalités et fonctionnalités non obsolètes correspondantes. En outre, vous devez convertir les stratégies et expressions classiques en stratégies et expressions avancées. En outre, toutes les nouvelles fonctionnalités de Citrix ADC prennent uniquement en charge l’infrastucture de stratégie avancée.
L’outil nspepi peut effectuer les opérations suivantes :
- Convertir les expressions de stratégie classiques en expressions de stratégie avancées.
- Convertissez certaines stratégies classiques et leurs liaisons d’entités en stratégies et liaisons avancées.
- Convertissez quelques entités obsolètes supplémentaires en entités non obsolètes correspondantes.
- Convertir les commandes de filtre classiques en commandes de filtre avancées.
- Convertir des fonctions de filtre classiques en fonctions avancées pour l’expression goto comme END ou use_innocation
Note :
Une fois que l’outil nspepi a réussi à convertir le fichier de configuration ns.conf, l’outil décompose le fichier converti en un nouveau fichier avec un préfixe, « new_ ». Si le fichier de configuration converti comporte des erreurs ou des avertissements, vous devez les corriger manuellement dans le cadre du processus de conversion. Une fois converti, vous devez tester le fichier dans l’environnement de test, puis l’utiliser pour remplacer le fichier de configuration ns.conf réel. Après le test, vous devez redémarrer l’appliance pour le fichier de configuration ns.conf nouvellement converti ou fixe.
Les fonctionnalités qui ne prennent en charge que les stratégies ou expressions classiques sont obsolètes et doivent être remplacées par les fonctionnalités non obsolètes correspondantes.
Remarque :
Les informations relatives à l’ancienne version de l’outil nspepi sont disponibles en format pdf. Pour plus d’informations, voir le pdf Conversion de stratégie classique à l’aide de l’outil nspepi avant 12.1-51.16.
Avertissements de conversion et fichiers d’erreur
Avant d’utiliser l’outil pour votre conversion, il y a quelques avertissements à garder à l’esprit :
- Tous les avertissements et erreurs sont affichés sur la console. Un fichier d’avertissement est créé dans lequel les fichiers de configuration sont stockés.
- Le fichier d’avertissement et d’erreur porte le même nom que le fichier d’entrée, mais avec un préfixe « warn_ » ajouté au nom du fichier. Lors de la conversion d’expression (en utilisant -e), les avertissements apparaîtront dans le répertoire courant avec un nom « warn_expr ».
Remarque :
Ce fichier est dans un format de fichier journal standard, avec horodatage et niveau de journal. Les instances précédentes du fichier sont conservées avec des suffixes comme “.1”, “.2”, etc. car l’outil est exécuté plusieurs fois. Au plus 10 instances seront conservées.
Format de fichier converti
Lors de la conversion d’un fichier de configuration (en utilisant « -f »), le fichier converti sera placé dans le même répertoire que celui où le fichier de configuration d’entrée existe avec le même nom mais un préfixe « new_ ».
Commandes gérées par l’outil de conversion nspepi
Voici les commandes gérées pendant le processus de conversion automatique.
- Les stratégies classiques suivantes et leurs expressions sont converties en stratégies et expressions avancées. Cela inclut la conversion des liaisons d’entités, y compris les liaisons globales.
- add appfw policy
- add authorization policy
- add cmp policy
- add cr policy
- add cs policy
- add tm sessionPolicy
- add vpn trafficPolicy
- add filter action
- add filter policy
- pour l’équilibrage de charge, la commutation de contenu, la redirection de cache et globale.
Remarque :
Toutefois, pour « add tm SessionPolicy » et « add vpn TrafficPolicy », vous ne pouvez pas lier au remplacement global dans les stratégies avancées.
- Le paramètre de règle configuré dans « add lb vserver » est converti de l’expression classique à l’expression avancée.
- Le paramètre SPDY configuré dans la commande « add ns HttpProfile » ou « set ns HttpProfile » est remplacé par « -http2 ENABLED ».
- Expressions nommées (commandes « add policy expression »). Chaque expression de stratégie nommée classique est convertie en son expression nommée avancée correspondante avec « nspepi_adv_ » défini comme préfixe. En outre, l’utilisation des expressions nommées pour les expressions classiques converties est remplacée par les expressions nommées avancées correspondantes. En outre, chaque expression nommée aura deux expressions nommées, dont l’une est Classique et l’autre est Avancée (comme indiqué ci-dessous).
Exemple :
add policy expression classic_expr ns_true
Converts to:
add policy expression classic_expr ns_true
add policy expression nspepi_adv_classic_expr TRUE
- Le paramètre PolicyType configuré dans la commande « set cmp parameter » est remplacé par Type de stratégie avancé.
Convertir les commandes de filtre classiques en commandes de filtre avancées
L’outil nspepi peut convertir des commandes basées sur des actions de filtre classiques telles que l’ajout, la liaison et ainsi de suite en commandes de filtre avancées.
Cependant, l’outil nepepi ne prend pas en charge les commandes de filtre suivantes.
- add filter action
<action Name>
FORWARD<service name>
- add filter action
<action name>
ADD prebody - add filter action
<action name>
ADD postbody
Remarque :
- S’il existe des fonctions de réécriture ou de répondeur dans ns.conf et que leurs stratégies sont liées globalement à l’expression GOTO-END ou USER_INVOCATION_RESULT et que le type de liaison est REQ_X ou RES_X, l’outil convertit partiellement les commandes de filtre de liaison et les commentaires. Un avertissement sera affiché pour faire un effort manuel.
- S’il existe des fonctions de réécriture ou de répondeur existantes et que leurs stratégies sont liées à des serveurs virtuels (par exemple, équilibrage de charge, commutation de contenu ou redirection de cache) de type HTTPS avec GOTO-END ou USER_INVOCATION_RESULT, l’outil convertit partiellement les commandes de filtrage de liaison, puis les commentaires sortis. Un avertissement sera affiché pour faire un effort manuel.
Exemple
Voici un exemple d’entrée :
add lb vserver v1 http 1.1.1.1 80 -persistenceType NONE -cltTimeout 9000
add cs vserver csv1 HTTP 1.1.1.2 80 -cltTimeout 180 -persistenceType NONE
add cr vserver crv1 HTTP 1.1.1.3 80 -cacheType FORWARD
add service svc1 1.1.1.4 http 80
add filter action fact_add add 'header:value'
add filter action fact_variable add 'H1:%%HTTP.TRANSID%%'
add filter action fact_prebody add prebody
add filter action fact_error_act1 ERRORCODE 200 "<HTML>Good URL</HTML>"
add filter action fact_forward_act1 FORWARD svc1
add filter policy fpol_add_res -rule ns_true -resAction fact_add
add filter policy fpol_error_res -rule ns_true -resAction fact_error_act1
add filter policy fpol_error_req -rule ns_true -reqAction fact_error_act1
add filter policy fpol_add_req -rule ns_true -reqAction fact_add
add filter policy fpol_variable_req -rule ns_true -reqAction fact_variable
add filter policy fpol_variable_res -rule ns_true -resAction fact_variable
add filter policy fpol_prebody_req -rule ns_true -reqAction fact_prebody
add filter policy fpol_prebody_res -rule ns_true -resAction fact_prebody
add filter policy fpol_forward_req -rule ns_true -reqAction fact_forward_act1
bind lb vserver v1 -policyName fpol_add_res
bind lb vserver v1 -policyName fpol_add_req
bind lb vserver v1 -policyName fpol_error_res
bind lb vserver v1 -policyName fpol_error_req
bind lb vserver v1 -policyName fpol_variable_res
bind lb vserver v1 -policyName fpol_variable_req
bind lb vserver v1 -policyName fpol_forward_req
bind cs vserver csv1 -policyName fpol_add_req
bind cs vserver csv1 -policyName fpol_add_res
bind cs vserver csv1 -policyName fpol_error_res
bind cs vserver csv1 -policyName fpol_error_req
bind cr vserver crv1 -policyName fpol_add_req
bind cr vserver crv1 -policyName fpol_add_res
bind cr vserver crv1 -policyName fpol_error_res
bind cr vserver crv1 -policyName fpol_error_req
bind cr vserver crv1 -policyName fpol_forward_req
bind filter global fpol_add_req
bind filter global fpol_add_res
bind filter global fpol_error_req
bind filter global fpol_error_res
bind filter global fpol_variable_req
bind filter global fpol_variable_res
bind filter global fpol_variable_res -state DISABLED
bind filter global fpol_prebody_req
bind filter global fpol_forward_req
After conversion, warning/error messages will be displayed for manual effort.
Warning files:
cat warn_<input file name>:
2019-11-07 17:13:34,724: ERROR - Conversion of [add filter action fact_prebody add prebody] not supported in this tool.
2019-11-07 17:13:34,739: ERROR - Conversion of [add filter action fact_forward_act1 FORWARD svc1] not supported in this tool.
2019-11-07 17:13:38,042: ERROR - Conversion of [add filter policy fpol_prebody_req -rule ns_true -reqAction fact_prebody] not supported in this tool.
2019-11-07 17:13:38,497: ERROR - Conversion of [add filter policy fpol_prebody_res -rule ns_true -resAction fact_prebody] not supported in this tool.
2019-11-07 17:13:39,035: ERROR - Conversion of [add filter policy fpol_forward_req -rule ns_true -reqAction fact_forward_act1] not supported in this tool.
2019-11-07 17:13:39,060: WARNING - Following bind command is commented out because state is disabled. Advanced expressions only have a fixed ordering of the types of bindings without interleaving, except that global bindings are allowed before all other bindings and after all bindings. If you have global bindings in the middle of non-global bindings or any other interleaving then you will need to reorder all your bindings for that feature and direction. Refer to nspepi documentation. If command is required please take a backup because comments will not be saved in ns.conf after triggering 'save ns config': bind filter global fpol_variable_res -state DISABLED
Voici un exemple de sortie. Toutes les commandes converties sont commentées.
cat new_<input file name>
add rewrite action fact_add insert_http_header header ""value""
add filter action fact_prebody add prebody
add filter action fact_forward_act1 FORWARD svc1
add filter policy fpol_prebody_req -rule ns_true -reqAction fact_prebody
add filter policy fpol_prebody_res -rule ns_true -resAction fact_prebody
add filter policy fpol_forward_req -rule ns_true -reqAction fact_forward_act1
bind lb vserver v1 -policyName fpol_forward_req
bind cr vserver crv1 -policyName fpol_forward_req
#bind filter global fpol_variable_res -state DISABLED
bind filter global fpol_prebody_req
bind filter global fpol_forward_req
add rewrite action nspepi_adv_fact_variable insert_http_header H1 HTTP.RES.TXID
add rewrite action fact_variable insert_http_header H1 HTTP.REQ.TXID
add responder action fact_error_act1 respondwith "HTTP.REQ.VERSION.APPEND(" 200 OK\r
nConnection: close\r
nContent-Length: 21\r\n\r
n<HTML>Good URL</HTML>")"
add rewrite action nspepi_adv_fact_error_act1 replace_http_res "HTTP.REQ.VERSION.APPEND(" 200 OK\r
nConnection: close\r
nContent-Length: 21\r\n\r
n<HTML>Good URL</HTML>")"
add rewrite policy fpol_add_res TRUE fact_add
add rewrite policy fpol_error_res TRUE nspepi_adv_fact_error_act1
add responder policy fpol_error_req TRUE fact_error_act1
add rewrite policy fpol_add_req TRUE fact_add
add rewrite policy fpol_variable_req TRUE fact_variable
add rewrite policy fpol_variable_res TRUE nspepi_adv_fact_variable
set cmp parameter -policyType ADVANCED
bind rewrite global fpol_add_req 100 NEXT -type REQ_DEFAULT
bind rewrite global fpol_variable_req 200 NEXT -type REQ_DEFAULT
bind rewrite global fpol_add_res 100 NEXT -type RES_DEFAULT
bind rewrite global fpol_error_res 200 NEXT -type RES_DEFAULT
bind rewrite global fpol_variable_res 300 NEXT -type RES_DEFAULT
bind responder global fpol_error_req 100 END -type REQ_DEFAULT
bind lb vserver v1 -policyName fpol_add_res -type RESPONSE -priority 100 -gotoPriorityExpression NEXT
bind lb vserver v1 -policyName fpol_error_res -type RESPONSE -priority 200 -gotoPriorityExpression NEXT
bind lb vserver v1 -policyName fpol_variable_res -type RESPONSE -priority 300 -gotoPriorityExpression NEXT
bind lb vserver v1 -policyName fpol_add_req -type REQUEST -priority 100 -gotoPriorityExpression NEXT
bind lb vserver v1 -policyName fpol_variable_req -type REQUEST -priority 200 -gotoPriorityExpression NEXT
bind lb vserver v1 -policyName fpol_error_req -type REQUEST -priority 100 -gotoPriorityExpression END
bind cs vserver csv1 -policyName fpol_add_req -type REQUEST -priority 100 -gotoPriorityExpression NEXT
bind cs vserver csv1 -policyName fpol_add_res -type RESPONSE -priority 100 -gotoPriorityExpression NEXT
bind cs vserver csv1 -policyName fpol_error_res -type RESPONSE -priority 200 -gotoPriorityExpression NEXT
bind cs vserver csv1 -policyName fpol_error_req -type REQUEST -priority 100 -gotoPriorityExpression END
bind cr vserver crv1 -policyName fpol_add_req -type REQUEST -priority 100 -gotoPriorityExpression NEXT
bind cr vserver crv1 -policyName fpol_add_res -type RESPONSE -priority 100 -gotoPriorityExpression NEXT
bind cr vserver crv1 -policyName fpol_error_res -type RESPONSE -priority 200 -gotoPriorityExpression NEXT
bind cr vserver crv1 -policyName fpol_error_req -type REQUEST -priority 100 -gotoPriorityExpression END
Convertir les commandes de filtre classiques en commandes de fonctionnalité avancées si les liaisons de stratégie de réécriture ou de répondeur existantes ont une expression goto END ou USE_INNVOCATION
Dans cette conversion, si une stratégie de réécriture liée à un ou plusieurs serveurs virtuels et si le serveur a END ou USE_INVOCATION_RESULT, l’outil commente les commandes.
Exemple
Voici un exemple de commande d’entrée :
COPY
add filter policy fpol1 -rule ns_true -resAction reset
add filter policy fpol2 -rule ns_true -reqAction reset
add rewrite policy pol1 true NOREWRITE
add rewrite policylabel pl http_res
bind rewrite policylabel pl pol1 1
bind rewrite global NOPOLICY 1 USE_INVOCATION_RESULT -type RES_DEFAULT -invoke policylabel pl
add responder policy pol2 true NOOP
add responder policylabel pl -policylabeltype HTTP
bind responder policylabel pl pol2 1
bind responder global NOPOLICY 1 USE_INVOCATION_RESULT -type REQ_DEFAULT -invoke policylabel pl
bind lb vserver v1_tcp -policyName pol1 -priority 100 -gotoPriorityExpression USE_INVOCATION_RESULT -type RESPONSE
bind cs vserver csv1_tcp -policyName pol1 -priority 100 -gotoPriorityExpression USE_INVOCATION_RESULT -type RESPONSE
bind lb vserver v1_tcp -policyName pol2 -priority 100 -gotoPriorityExpression USE_INVOCATION_RESULT -type REQUEST
bind cs vserver csv1_tcp -policyName pol2 -priority 100 -gotoPriorityExpression USE_INVOCATION_RESULT -type REQUEST
bind cr vserver crv1_tcp -policyName pol2 -priority 100 -gotoPriorityExpression USE_INVOCATION_RESULT -type REQUEST
bind lb vserver v1_http -policyName fpol1
bind cs vserver csv1_http -policyName fpol1
bind lb vserver v2_http -policyName fpol2
bind cs vserver csv2_http -policyName fpol2
bind cr vserver crv2_http -policyName fpol2
bind filter global fpol1 -priority 100
bind filter global fpol2 -priority 100
Voici un exemple de commande de sortie :
COPY
add rewrite policy pol1 true NOREWRITE
add rewrite policylabel pl http_res
bind rewrite policylabel pl pol1 1
add responder policy pol2 true NOOP
add responder policylabel pl -policylabeltype HTTP
bind responder policylabel pl pol2 1
add rewrite policy fpol1 TRUE RESET
add responder policy fpol2 TRUE RESET
#bind lb vserver v1_http -policyName fpol1 -type RESPONSE
#bind cs vserver csv1_http -policyName fpol1 -type RESPONSE
#bind rewrite global fpol1 100 -type RES_DEFAULT
#bind lb vserver v2_http -policyName fpol2 -type REQUEST
#bind cs vserver csv2_http -policyName fpol2 -type REQUEST
#bind cr vserver crv2_http -policyName fpol2 -type REQUEST
#bind responder global fpol2 100 -type REQ_DEFAULT
bind rewrite global NOPOLICY 1 USE_INVOCATION_RESULT -type RES_DEFAULT -invoke policylabel pl
bind responder global NOPOLICY 1 USE_INVOCATION_RESULT -type REQ_DEFAULT -invoke policylabel pl
bind lb vserver v1_tcp -policyName pol1 -priority 100 -gotoPriorityExpression USE_INVOCATION_RESULT -type RESPONSE
bind lb vserver v1_tcp -policyName pol2 -priority 100 -gotoPriorityExpression USE_INVOCATION_RESULT -type REQUEST
bind cs vserver csv1_tcp -policyName pol1 -priority 100 -gotoPriorityExpression USE_INVOCATION_RESULT -type RESPONSE
bind cs vserver csv1_tcp -policyName pol2 -priority 100 -gotoPriorityExpression USE_INVOCATION_RESULT -type REQUEST
bind cr vserver crv1_tcp -policyName pol2 -priority 100 -gotoPriorityExpression USE_INVOCATION_RESULT -type REQUEST-
Commandes non gérées par l’outil de conversion nspepi
Voici quelques commandes qui ne sont pas gérées dans le cadre du processus de conversion automatique.
- Certaines liaisons ne peuvent pas être converties s’il existe un certain entrelacement de priorités entre les points de liaison globaux et non globaux, entre les utilisateurs et les groupes, et aussi entre les liaisons vers différentes entités. Ceux-ci auront la configuration affectée commenté et une erreur sera produite. Ces configurations doivent être converties manuellement.
- Les stratégies Classic et Advanced peuvent être liées à cmp global. Dans de nombreux cas, la fonctionnalité changera une fois que les stratégies classiques sont converties en stratégies avancées. Nous avons converti des commandes qui peuvent être résolues en commentant certaines stratégies. Il y a encore des commandes qui ne peuvent pas être converties ; dans de tels cas, une erreur sera produite et la conversion doit être effectuée manuellement.
- Les stratégies de commutation de contenu classique qui sont liées à plusieurs points de liaison ne sont pas gérées.
- Les liaisons de stratégie classique intégrées dans toutes les fonctionnalités ne sont pas gérées.
- Toutes les utilisations des expressions nommées intégrées classiques ne sont pas converties en expressions nommées avancées équivalentes.
- Les expressions nommées dans une règle d’équilibrage de charge ne sont pas gérées.
- Les expressions de sécurité du client ne sont pas gérées.
- Les liaisons aux serveurs virtuels GSLB ne sont pas gérées.
- L’option « -precedence » pour les serveurs virtuels de commutation de contenu et de redirection de cache n’est pas gérée.
Problèmes connus
Les erreurs suivantes peuvent être produites par l’outil nspepi :
- S’il y a un problème lors de la conversion d’une expression.
- Si une expression de stratégie nommée utilise le paramètre -ClientSecurityMessage car ce paramètre n’est pas pris en charge dans l’expression de stratégie avancée.
Remarque :
Toutes les liaisons de stratégie classiques avec l’option -state désactivée sont commentées. L’option -state n’est pas disponible pour les liaisons de stratégie avancées.
Exécution de l’outil nspepi
Voici un exemple de ligne de commande pour exécuter l’outil nspepi. Cet outil est exécuté à partir de la ligne de commande du shell (vous devrez taper la commande « shell » à l’interface de ligne de commande NetScaler « CLI » pour y arriver). Pour effectuer une conversion, vous devez spécifier « -f » ou « -e ». L’utilisation de « -d » est principalement destinée à permettre au personnel de Citrix d’analyser à des fins de support.
usage: nspepi [-h]
(-e <classic policy expression> | -f <path to ns config file>)
[-d] [-v] [-V]
Convert classic policy expressions to advanced policy
expressions and deprecated commands to non-deprecated
commands.
optional arguments:
-h, --help show this help message and exit
-e <classic policy expression>, --expression <classic policy expression>
convert classic policy expression to advanced policy
expression (maximum length of 8191 allowed)
-f <path to ns config file>, --infile <path to ns config file>
convert netscaler config file
-d, --debug show debug output
-v, --verbose show verbose output
-V, --version show program's version number and exit
Voici quelques exemples d’exécution de l’outil nspepi à partir de l’interface de ligne de commande :
Exemple de sortie pour le paramètre —e :
root@ns# nspepi -e "req.http.header foo == "bar""
"HTTP.REQ.HEADER("foo").EQ("bar")"
Exemple de sortie pour le paramètre -f :
root@ns# cat sample.conf
add c\*\*Input\*\*r vserver cr_vs HTTP -cacheType TRANSPARENT -cltTimeout 180 -originUSIP OFF
add cr policy cr_pol1 -rule ns_true
bind cr vserver cr_vs -policyName cr_pol1
Exécution de nspepi avec le paramètre -f :
root@ns# nspepi -f sample.conf
root@ns#
Exemple de sortie du paramètre -f avec le paramètre -v
root@ns# nspepi -f sample.conf -v
INFO - add cr vserver cr_vs HTTP -cacheType TRANSPARENT -cltTimeout 180 -originUSIP OFF
INFO - add cr policy cr_pol1 -rule TRUE -action ORIGIN
INFO - set cmp parameter -policyType ADVANCED
INFO - bind cr vserver cr_vs -policyName cr_pol1 -priority 100 -gotoPriorityExpression END -type REQUEST
root@ns#
Exemple de sortie avec fichier converti et fichiers d’avertissement générés
Fichier de configuration converti :
root@ns# cat new_sample.conf
add cr vserver cr_vs HTTP -cacheType TRANSPARENT -cltTimeout 180 -originUSIP OFF
add cr policy cr_pol1 -rule TRUE -action ORIGIN
set cmp parameter -policyType ADVANCED
bind cr vserver cr_vs -policyName cr_pol1 -priority 100 -gotoPriorityExpression END -type REQUEST
Exemple de sortie d’un exemple de configuration sans erreurs ou avertissements :
root@ns# cat warn_sample.conf
root@ns#
Exemple de sortie d’un exemple de configuration avec des avertissements :
root@ns# cat sample_2.conf
add policy expression security_expr "req.tcp.destport == 80" -clientSecurityMessage "Not allowed"
set cmp parameter -policyType CLASSIC
add cmp policy cmp_pol1 -rule ns_true -resAction COMPRESS
add cmp policy cmp_pol2 -rule ns_true -resAction COMPRESS
add cmp policy cmp_pol3 -rule TRUE -resAction COMPRESS
bind cmp global cmp_pol1
bind cmp global cmp_pol2 -state DISABLED
bind cmp global cmp_pol3 -priority 1 -gotoPriorityExpression END -type RES_DEFAULT
bind lb vserver lb_vs -policyName cmp_pol2
root@ns#
Exemple d’exécution de nspepi avec le paramètre -f :
root@ns# nspepi -f sample_2.conf
ERROR - Error in converting expression security_expr : conversion of clientSecurityMessage based expression is not supported.
WARNING - Following bind command is commented out because state is disabled. Advanced expressions only have a fixed ordering of the types of bindings without interleaving, except that global bindings are allowed before all other bindings and after all bindings. If you have global bindings in the middle of non-global bindings or any other interleaving then you will need to reorder all your bindings for that feature and direction. Refer to nspepi documentation. If command is required please take a backup because comments will not be saved in ns.conf after triggering 'save ns config': bind cmp global cmp_pol2 -state DISABLED
Warning - Bindings of advanced CMP policies to cmp global are commented out, because initial global cmp parameter is classic but advanced policies are bound. Now global cmp parameter policy type is set to advanced. If commands are required please take a backup because comments will not be saved in ns.conf after triggering 'save ns config'. Advanced expressions only have a fixed ordering of the types of bindings without interleaving, except that global bindings are allowed before all other bindings and after all bindings. If you have global bindings in the middle of non-global bindings or any other interleaving then you will need to reorder all your bindings for that feature and direction. Refer to nspepi documentation.
root@ns#
Fichier converti :
root@ns# cat new_sample_2.conf
add policy expression security_expr "req.tcp.destport == 80" -clientSecurityMessage "Not allowed"
set cmp parameter -policyType ADVANCED
add cmp policy cmp_pol1 -rule TRUE -resAction COMPRESS
add cmp policy cmp_pol2 -rule TRUE -resAction COMPRESS
add cmp policy cmp_pol3 -rule TRUE -resAction COMPRESS
#bind cmp global cmp_pol2 -state DISABLED
#bind cmp global cmp_pol3 -priority 1 -gotoPriorityExpression END -type RES_DEFAULT
bind cmp global cmp_pol1 -priority 100 -gotoPriorityExpression END -type RES_DEFAULT
bind lb vserver lb_vs -policyName cmp_pol2 -priority 100 -gotoPriorityExpression END -type RESPONSE
root@ns#
Fichier d’avertissement :
root@ns# cat warn_sample_2.conf
2019-02-28 06:20:10,590: ERROR - Error in converting expression security_expr : conversion of clientSecurityMessage based expression is not supported.
2019-02-28 06:20:12,187: WARNING - Following bind command is commented out because state is disabled. Advanced expressions only have a fixed ordering of the types of bindings without interleaving, except that global bindings are allowed before all other bindings and after all bindings. If you have global bindings in the middle of non-global bindings or any other interleaving then you will need to reorder all your bindings for that feature and direction. Refer to nspepi documentation. If command is required please take a backup because comments will not be saved in ns.conf after triggering 'save ns config': bind cmp global cmp_pol2 -state DISABLED
2019-02-28 06:20:12,191: WARNING - Bindings of advanced CMP policies to cmp global are commented out, because initial global cmp parameter is classic but advanced policies are bound. Now global cmp parameter policy type is set to advanced. If commands are required please take a backup because comments will not be saved in ns.conf after triggering 'save ns config'. Advanced expressions only have a fixed ordering of the types of bindings without interleaving, except that global bindings are allowed before all other bindings and after all bindings. If you have global bindings in the middle of non-global bindings or any other interleaving then you will need to reorder all your bindings for that feature and direction. Refer to nspepi documentation.
root@ns#
Priorités contraignantes
Les stratégies avancées ne permettent pas l’imbrication arbitraire par priorité entre global et non global et entre différents types de liaison. Si vous comptez sur un tel entrelacement des priorités de stratégie classiques, vous devrez ajuster les priorités pour qu’elles soient conformes aux règles de stratégie avancées et pour obtenir le comportement que vous souhaitez.Les priorités des stratégies avancées sont locales jusqu’à un point de liaison. Un point de liaison est une combinaison unique de protocole, de fonctionnalité, de direction et d’entité (les entités sont des serveurs virtuels spécifiques, des utilisateurs, des groupes, des services, et le remplacement global ou global par défaut). Les priorités stratégiques ne sont pas suivies d’un point à l’autre.
Pour un protocole, une fonctionnalité et une direction donnés, l’ordre d’évaluation des stratégies avancées est donné ci-dessous :
- Remplacer globalement.
- Utilisateur AAA (actuel).
- Groupes AAA (dont l’utilisateur est membre) par ordre de poids - l’ordre n’est pas défini si deux groupes ou plus ont le même poids.
- Serveur virtuel LB sur lequel la demande a été reçue ou que le commutateur de contenu sélectionné.
- Serveur virtuel de commutation de contenu, serveur virtuel de redirection de cache sur lequel la demande a été reçue.
- Service sélectionné par équilibrage de charge.
- Valeur par défaut globale.
Pour l’évaluation de la stratégie d’autorisation, la commande est la suivante :
- Remplacer le système.
- Serveur virtuel d’équilibrage de charge sur lequel la demande a été reçue ou que CS a sélectionné.
- Serveur virtuel de commutation de contenu sur lequel la demande a été reçue.
- Système par défaut.
À l’intérieur de chaque point de liaison, les polices sont évaluées par ordre de priorité, du plus petit au plus grand. Bien entendu, les stratégies ne sont évaluées que pour le protocole utilisé et la direction d’où le message a été reçu.
Liaisons de stratégies classiques nécessitant une redéfinition manuelle des priorités
Voici quelques types de liaisons de stratégie classiques qui nécessiteront une redéfinition manuelle des priorités pour répondre à vos besoins. Tous ces éléments sont pour une fonction et une direction données.
- Priorités classiques qui augmentent en nombre de priorité opposé à la direction des listes de types d’entités ci-dessus. Par exemple, une liaison de serveur virtuel de commutation de contenu inférieure à une liaison de serveur virtuel d’équilibrage de charge.
- Priorités classiques qui entrelacent les groupes AAA. Une partie d’un groupe est avant un autre groupe et une autre partie est après une partie de cet autre groupe.
- Priorités classiques qui augmentent en nombre autre que l’ordre de pondération des groupes AAA.
- Les priorités mondiales classiques qui sont inférieures à certaines priorités non mondiales et les mêmes priorités mondiales sont supérieures à d’autres priorités non mondiales (en d’autres termes, tout segment de priorités non mondiales, suivi d’une ou de plusieurs priorités mondiales, suivi d’une ou de plusieurs priorités non mondiales).
Partager
Partager
Dans cet article
- Avertissements de conversion et fichiers d’erreur
- Format de fichier converti
- Commandes gérées par l’outil de conversion nspepi
- Convertir les commandes de filtre classiques en commandes de filtre avancées
- Convertir les commandes de filtre classiques en commandes de fonctionnalité avancées si les liaisons de stratégie de réécriture ou de répondeur existantes ont une expression goto END ou USE_INNVOCATION
- Commandes non gérées par l’outil de conversion nspepi
- Problèmes connus
- Exécution de l’outil nspepi
- Priorités contraignantes
- Liaisons de stratégies classiques nécessitant une redéfinition manuelle des priorités
This Preview product documentation is Citrix Confidential.
You agree to hold this documentation confidential pursuant to the terms of your Citrix Beta/Tech Preview Agreement.
The development, release and timing of any features or functionality described in the Preview documentation remains at our sole discretion and are subject to change without notice or consultation.
The documentation is for informational purposes only and is not a commitment, promise or legal obligation to deliver any material, code or functionality and should not be relied upon in making Citrix product purchase decisions.
If you do not agree, select Do Not Agree to exit.