Note

Ce plugin fait partie du module f5networks.f5_modules collection (version 1.7.1).

Pour l'installer, utilisez : ansible-galaxy collection install f5networks.f5_modules.

Pour l'utiliser dans un playbook, spécifiez : f5networks.f5_modules.bigip_profile_http.

Nouveau dans la version 1.0.0 : de f5networks.f5_modules

  • Synopsis
  • Paramètres
  • Notes
  • Exemples
  • Valeurs de retour

Synopsis

  • Gestion des profils HTTP sur un périphérique BIG-IP.

Paramètres

Paramètre Choix/par défaut Commentaires
accepter_xffbooléen
    Choix :

  • pas de
  • oui
Active ou désactive la mise en confiance de l'adresse IP du client, et des statistiques de l'adresse IP du client, en fonction des en-têtes XFF (X-forwarded-for) de la requête, s'ils existent.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
descriptionchaîne de caractères Description du profil.
dns_resolveurchaîne de caractères Spécifie le nom d'un résolveur DNS configuré, cette option est obligatoire lorsque proxy_type est défini sur explicit.Le format du nom peut soit être précédé d'une partition (/Common/foo), soit spécifié juste comme un nom d'objet (foo).Pour supprimer l'entrée, vous pouvez définir une valeur de none ou ''mais le profil proxy_type ne doit pas être défini comme explicit.
encrypt_cookie_secretchaîne de caractères Phrase de passe pour le cryptage des cookies.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
crypter_cookiesliste / elements=string Noms de cookies pour le système à crypter.Pour supprimer complètement l'entrée, définissez une valeur de none ou ''.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
application de la loidictionnaire Spécifie les paramètres d'application du protocole pour le profil HTTP.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
en-têtes_client_excessifschaîne de caractères
    Choix :

  • rejeter
  • passer par
Spécifie le comportement lorsque trop d'en-têtes client sont reçus.S'il est défini à pass-through, il passe en mode pass-through, lorsque reject, la connexion est rejetée.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
excess_server_headerschaîne de caractères
    Choix :

  • rejeter
  • passer par
Spécifie le comportement lorsque trop d'en-têtes de serveur sont reçus.S'il est défini à pass-through, elle passe en mode pass-through, lorsque reject la connexion est rejetée.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
méthodes_connuesliste / elements=chaîne Spécifie quelles méthodes HTTP comptent comme étant connues, la suppression des méthodes définies par le RFC de cette liste fera que le filtre HTTP ne les reconnaîtra pas.La liste par défaut fournie avec le système comprend : CONNECT, DELETE, GET, HEAD, LOCK, OPTIONS, POST, PROPFIND, PUT, TRACE ,UNLOCK. La liste peut être complétée en spécifiant l'option default comme l'un des éléments de la liste. default peut également être utilisé pour restaurer la valeur par défaut de l'option known_methods sur le système.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
max_header_countchaîne de caractères Spécifie le nombre maximum d'en-têtes autorisés dans les requêtes/réponses HTTP.La plage de valeurs valides est comprise entre 16 et 4096 inclus.Lorsqu'elle est définie sur defaultla valeur est 64.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
taille_en-tête_maximumchaîne de caractères Spécifie la taille maximale de l'en-tête spécifiée en octets.La plage de valeurs valides est comprise entre 0 et 4294967295 inclus.Lorsqu'elle est définie sur defaultla valeur est 32768 bytesLors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
max_requêteschaîne de caractères Spécifie le nombre de demandes que le système accepte sur une base par connexion.La plage de valeurs valides est comprise entre 0 et 4294967295 inclus.Lorsqu'elle est définie sur defaultla valeur est 0, ce qui signifie que le système ne limitera pas le nombre de demandes par connexion.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
oversize_client_headerschaîne de caractères
    Choix :

  • rejeter
  • passer par
Spécifie le comportement à adopter lorsque des en-têtes de client trop volumineux sont reçus. pass-through,il passe en mode pass-through, lorsque reject la connexion est rejetée.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
oversize_server_headerschaîne de caractères
    Choix :

  • rejeter
  • passer par
Spécifie le comportement lorsque des en-têtes de serveur trop volumineux sont reçus.S'il est défini à pass-through, elle passe en mode pass-through, lorsque reject la connexion est rejetée.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
pipelinechaîne de caractères
    Choix :

  • autoriser
  • rejeter
  • passe-partout
Active le pipelining HTTP/1.1, ce qui permet aux clients d'effectuer des requêtes même lorsque les requêtes précédentes n'ont pas reçu de réponse.Pour que cela réussisse, les serveurs de destination doivent inclure le support du pipelining.S'il est défini sur pass-through, les données pipelinées font que le BIG-IP passe immédiatement en mode pass-through et désactive le filtre HTTP.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
truncated_redirectsbooléen
    Choix :

  • pas de
  • oui
Spécifie ce qui se passe si une redirection tronquée est vue depuis un serveur.Si yes, la redirection est transmise au client, sinon le HTTP malformé est silencieusement ignoré.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
méthode_inconnuechaîne de caractères
    Choix :

  • autoriser
  • rejeter
  • passe-partout
Spécifie s'il faut autoriser, rejeter ou passer en mode pass-through lorsqu'une méthode HTTP inconnue est analysée.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
fallback_hostchaîne de caractères Spécifie un hôte de repli HTTP.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
fallback_status_codesliste / elements=string Spécifie un ou plusieurs codes d'erreur HTTP provenant des réponses du serveur qui doivent déclencher une redirection vers l'hôte de repli.Les codes d'erreur valides acceptés sont ceux définis par la RFC2616.Les codes peuvent être spécifiés en tant qu'éléments individuels ou en tant que plages valides, par exemple. 400-417 ou 500-505Le mélange de plages de codes de réponse entre les types d'erreur n'est pas valide, par exemple en définissant 400-505 entraînera une erreur.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
en-tête_effacementchaîne de caractères Le nom d'un en-tête dans une requête HTTP, que le système supprime de la requête.Pour supprimer complètement l'entrée, définissez une valeur de none ou ''.le format de l'en-tête doit être en KEY:VALUE sinon une erreur se produit.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
en-tête_insertchaîne de caractères Une chaîne de caractères que le système insère comme en-tête dans une requête HTTP.Pour supprimer complètement l'entrée, définissez une valeur de none ou ''.Le format de l'en-tête doit être en KEY:VALUE sinon une erreur se produit.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
hsts_modebooléen
    Choix :

  • pas de
  • oui
Lorsqu'il est réglé sur yes, active les paramètres HSTS.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
inclure_sous-domainesbooléen
    Choix :

  • pas de
  • oui
Lorsqu'il est réglé sur yes, applique la politique HSTS à l'hôte HSTS et à ses sous-domaines.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
insert_xforwarded_forbooléen
    Choix :

  • pas de
  • oui
Spécifie que le système insère un en-tête X-Forwarded-For dans une requête HTTP avec l'adresse IP du client, à utiliser avec le pooling de connexion.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
âge_maximumchaîne de caractères Spécifie la durée maximale, en secondes, pendant laquelle la fonctionnalité HSTS demande aux clients d'utiliser uniquement HTTPS pour se connecter à l'hôte actuel et à tout sous-domaine du nom de domaine de l'hôte actuel.La plage de valeurs acceptées est la suivante . 0 - 4294967295 secondes. Une valeur de 0 secondes réactive l'accès HTTP en texte clair, tandis qu'une valeur de indefinite la fixe à la valeur maximale.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
nomchaîne de caractères / obligatoire Spécifie le nom du profil.
oneconnect_transformationsbooléen
    Choix :

  • pas de
  • oui
Permet au système d'effectuer des transformations d'en-tête HTTP pour maintenir ouvertes les connexions côté serveur. Cette fonctionnalité nécessite un profil OneConnect.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
parentchaîne de caractères Spécifie le profil dont ce profil hérite des paramètres.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est le profil fourni par le système. http profil.
partitionchaîne de caractères Par défaut :
"Commun"
Partition du périphérique sur laquelle gérer les ressources.
fournisseurdictionnaire ajouté dans la version 1.0.0 de f5networks.f5_modules Un objet dict contenant les détails de la connexion.
auth_providerchaîne de caractères Configure le fournisseur d'authentification pour pour obtenir les jetons d'authentification du périphérique distant.Cette option est vraiment utilisée lorsque vous travaillez avec des périphériques BIG-IQ.
no_f5_teembooléen
    Choix :

  • pas de
  • oui
Si yes, les données de télémétrie TEEM ne sont pas envoyées à F5.Vous pouvez omettre cette option en définissant la variable d'environnement F5_TEEM.
mot de passechaîne de caractères / obligatoire Le mot de passe du compte utilisateur utilisé pour se connecter au BIG-IP.Vous pouvez omettre cette option en définissant la variable d'environnement F5_PASSWORD.
alias : pass, pwd
serveurchaîne de caractères / requis L'hôte BIG-IP.Vous pouvez omettre cette option en définissant la variable d'environnement F5_SERVER.
port_serveurnombre entier Par défaut :
443
Le port du serveur BIG-IP.Vous pouvez omettre cette option en définissant la variable d'environnement F5_SERVER_PORT.
timeoutnombre entier Spécifie le délai d'attente en secondes pour la communication avec le périphérique réseau, que ce soit pour la connexion ou l'envoi de commandes. Si le délai d'attente est dépassé avant que l'opération ne soit terminée, le module se trompe.
transportchaîne de caractères
    Choix :

  • reste
Configure la connexion de transport à utiliser lors de la connexion au périphérique distant.
utilisateurchaîne de caractères / obligatoire Le nom d'utilisateur avec lequel se connecter au BIG-IP. Cet utilisateur doit avoir des privilèges administratifs sur le périphérique.Vous pouvez omettre cette option en définissant la variable d'environnement F5_USER.
validate_certsbooléen
    Choix :

  • pas de
  • oui
Si noles certificats SSL ne sont pas validés. Utilisez cette option uniquement sur les sites contrôlés personnellement utilisant des certificats auto-signés.Vous pouvez omettre cette option en définissant la variable d'environnement F5_VALIDATE_CERTS.
type_proxychaîne de caractères
    Choix :

  • inverse
  • transparent
  • explicite
Spécifie le mode de proxy pour le profil.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
redirect_rewritechaîne de caractères
    Choix :

  • aucun
  • tout
  • correspondant à
  • noeuds
Spécifie si le système réécrit les URI qui font partie des réponses de redirection HTTP (3XX).Lorsqu'il est défini sur none, le système ne réécrit pas l'URI dans les réponses de redirection HTTP.Lorsqu'il est défini sur all, le système réécrit l'URI dans toutes les réponses de redirection HTTP.Lorsqu'il est défini sur matchingle système réécrit l'URI dans toutes les réponses de redirection HTTP qui correspondent à l'URI de la demande. nodes, si l'URI contient une adresse IP de nœud au lieu d'un nom d'hôte, le système le change en adresse de serveur virtuel.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
request_chunkingchaîne de caractères
    Choix :

  • rechunk
  • sélectif
  • préserver
Spécifie la façon de traiter les requêtes chunked et unchunked.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
réponse_chunkingchaîne de caractères
    Choix :

  • rechunk
  • sélectif
  • préserver
Spécifie la façon de traiter les réponses mises en bloc et non mises en bloc.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
nom_agent_serveurchaîne de caractères Spécifie la chaîne utilisée comme nom de serveur dans le trafic généré par BIG-IP.Pour supprimer complètement l'entrée, définissez une valeur de none ou ''.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
sflowdictionnaire Spécifie les paramètres sFlow pour le profil HTTP.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
intervalle_pollnombre entier Spécifie l'intervalle maximum en secondes entre deux pollings.La plage de valeurs valides est comprise entre 0 et 4294967295 secondes incluses.Pour que ce paramètre prenne effet, le paramètre poll_interval_global doit être réglé sur no.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
poll_interval_globalbooléen
    Choix :

  • pas de
  • oui
Spécifie si le paramètre global d'intervalle de sondage HTTP prévaut sur le paramètre de niveau objet. poll-interval paramètre.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
taux_d'échantillonnagenombre entier Spécifie le rapport entre les paquets observés et les échantillons générés. Par exemple, un taux d'échantillonnage de 2000 spécifie qu'un échantillon sera généré de manière aléatoire pour chaque 2000 paquets observés.La plage de valeurs valides est comprise entre 0 et 4294967295 paquets inclus.Pour que ce paramètre prenne effet, le paramètre sampling_rate_global doit être réglé sur no.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
taux_d'échantillonnage_globalbooléen
    Choix :

  • pas de
  • oui
Spécifie si le paramètre de taux d'échantillonnage HTTP global prévaut sur le paramètre de taux d'échantillonnage au niveau de l'objet.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.
étatchaîne de caractères
    Choix :

  • présent
  • absent
Quand present, assure que le profil existe.Lorsque absent, assure que le profil est supprimé.
mot_de_passe_mise_à_jourchaîne de caractères
    Choix :

  • toujours
  • on_create
always mettra à jour les mots de passe si le encrypt_cookie_secret est spécifié.on_create ne définira le mot de passe que pour les profils nouvellement créés.
xff_alternative_namesliste / elements=string Spécifie des en-têtes XFF alternatifs au lieu de l'en-tête X-forwarded-for par défaut.Lors de la création d'un nouveau profil, si ce paramètre n'est pas spécifié, la valeur par défaut est fournie par le profil parent.

Notes

Note

  • Pour plus d'informations sur l'utilisation d'Ansible pour gérer les périphériques F5 Networks, voir . https://www.ansible.com/integrations/networks/f5.
  • Nécessite une version du logiciel BIG-IP >= 12.
  • Les modules F5 ne manipulent que la configuration en cours d'exécution du produit F5. Pour vous assurer que la configuration spécifique à BIG-IP persiste sur le disque, veillez à inclure au moins une tâche qui utilise le module F5. f5networks.f5_modules.bigip_config pour sauvegarder la configuration courante. Reportez-vous à la documentation du module pour l'utilisation correcte du module afin de sauvegarder votre configuration en cours d'exécution.

Exemples

-name: Create HTTP profile
  bigip_profile_http:name: my_profile
    insert_xforwarded_for: yes
    redirect_rewrite: all
    state: present
    provider:user: admin
      password: secret
      server: lb.mydomain.com
  delegate_to: localhost

-name: Remove HTTP profile
  bigip_profile_http:name: my_profile
    state: absent
    provider:server: lb.mydomain.com
      user: admin
      password: secret
  delegate_to: localhost

-name: Add HTTP profile for transparent proxy
  bigip_profile_http:name: my_profile
    proxy_type: transparent
    provider:password: secret
      server: lb.mydomain.com
      user: admin
  delegate_to: localhost

Valeurs de retour

Les valeurs de retour courantes sont documentées. ici, les champs suivants sont uniques à ce module :

Clé Renvoyé Description
accept_xffbooléen modifié Active ou désactive la confiance de l'adresse IP du client et des statistiques de l'adresse IP du client.
Exemple : Vrai
descriptionchaîne de caractères modifié Description du profil.
Echantillon : Mon profil
dns_resolveurchaîne de caractères modifié Résolveur dns configuré.
Echantillon :/Common/FooBar
encrypt_cookiesliste / elements=string modifié Les noms des cookies à crypter.
Echantillon :['MyCookie1', 'MyCookie2']
application de la loicomplexe changé Spécifie les paramètres d'application du protocole pour le profil HTTP.
Exemple : hachage/dictionnaire de valeurs
en-têtes_serveur excessifschaîne de caractères modifié Spécifie le comportement lorsque trop d'en-têtes de serveur sont reçus.
Exemple : pass-through
méthodes connuesliste / elements=chaîne modifié La liste des méthodes HTTP connues.
Exemple :['default', 'FOO', 'BAR']
max_header_countchaîne de caractères modifié Le nombre maximum d'en-têtes autorisés dans une requête/réponse HTTP.
Exemple : 4096
taille_en-tête_maximumchaîne de caractères modifié La taille maximale de l'en-tête spécifiée en octets.
Exemple : par défaut
max_requêteschaîne de caractères modifié Le nombre de demandes que le système accepte sur une base par connexion.
Exemple : par défaut
en-têtes_client surdimensionnéschaîne de caractères modifié Spécifie le comportement en cas de réception d'en-têtes client trop volumineux.
Exemple : rejeter
en-têtes_serveur surdimensionnéschaîne de caractères modifié Spécifie le comportement lorsque des en-têtes de serveur trop volumineux sont reçus.
Exemple : rejeter
pipelinechaîne de caractères modifié Autorise, rejette. ou passe en mode pass-through lors du traitement de données en pipeline.
Echantillon : autoriser
redirections tronquéesbooléen modifié Spécifie ce qui se passe si une redirection tronquée est vue depuis un serveur.
Exemple : Vrai
Méthode inconnuechaîne de caractères modifié Autorise, rejette ou passe en mode pass-through lorsqu'une méthode HTTP inconnue est analysée.
Exemple : autoriser
fallback_hostchaîne de caractères modifié Spécifie un hôte de repli HTTP.
Exemple : foobar.com
codes d'état de repliliste / elements=string modifié Codes d'erreur HTTP des réponses du serveur qui devraient déclencher une redirection vers l'hôte de repli.
Exemple :['400-404', '500', '501']
en-tête_effacementchaîne de caractères modifié Le nom d'un en-tête dans une requête HTTP, que le système supprime de la requête.
Exemple : FOO:BAR
en-tête_insérerchaîne de caractères modifié La chaîne de caractères que le système insère comme en-tête dans une requête HTTP.
Exemple : FOO:BAR
hsts_modebooléen modifié Active les paramètres HSTS.
inclure_sous-domainesbooléen modifié Applique la politique HSTS à l'hôte HSTS et à ses sous-domaines.
Exemple : Vrai
insert_xforwarded_forbooléen modifié Insérer X-Forwarded-For-Header.
Echantillon : Vrai
âge_maximumchaîne de caractères modifié La durée maximale, en secondes, pendant laquelle la fonctionnalité HSTS demande aux clients d'utiliser uniquement HTTPS.
Exemple : indéfini
oneconnect_transformationsbooléen modifié Active ou désactive les transformations d'en-tête HTTP.
parentchaîne de caractères modifié Spécifie le profil dont ce profil hérite des paramètres.
Exemple :/Common/http
type_proxychaîne de caractères modifié Spécifiez le mode de proxy du profil.
Exemple : explicite
redirect_rewritechaîne de caractères modifié Réécriture des URI qui font partie des réponses 3xx.
Exemple : tout
request_chunkingchaîne de caractères modifié Spécifie comment traiter les requêtes chunked et unchunked.
Exemple : rechunk
réponse_chunkingchaîne de caractères modifié Spécifie comment traiter les réponses en bloc et non bloc.
Exemple : rechunk
nom_agent_serveurchaîne de caractères modifié La chaîne utilisée comme nom de serveur dans le trafic généré par BIG-IP.
Exemple : foobar
sflowcomplexe modifié Spécifie les paramètres sFlow pour le profil HTTP.
Exemple : hachage/dictionnaire de valeurs
poll_intervalnombre entier modifié Spécifie l'intervalle maximal en secondes entre deux sondages.
Exemple : 30
poll_interval_globalbooléen modifié Active/désactive le remplacement du paramètre d'intervalle de sondage HTTP.
Exemple : Vrai
taux d'échantillonnagenombre entier modifié Spécifie le rapport entre les paquets observés et les échantillons générés.
Echantillon : 2000
taux_d'échantillonnage_globalbooléen modifié Active/désactive le remplacement du paramètre de taux d'échantillonnage HTTP.
Echantillon : Vrai
xff_alternative_namesliste / elements=string modifié Spécifie des en-têtes XFF alternatifs au lieu de l'en-tête X-forwarded-for par défaut.
Exemple :['FooBar', 'client1']

Auteurs

  • Wojciech Wypior (@wojtek0806)