> For the complete documentation index, see [llms.txt](https://doc.commandersact.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://doc.commandersact.com/fr/configurer/administration/domain-management/waf-proxy-cloudflare.md).

# Proxy WAF (CloudFlare,...)

Configurer un DNS de reverse proxy sur un WAF comme CloudFlare est une méthode simple et fiable à des fins de tracking en utilisant des cookies 1st party.

Contactez votre chargé de compte pour plus de détails.

## Configuration

### Créez votre WAF

1\. Dans Cloudflare (ou votre WAF), déclarez le domaine de tracking à utiliser et faites-le pointer vers notre infra (par ex. waf.myshop.com) et vers le endpoint que nous avons défini pour le proxy :

**`ca-trk-proxy.commander1.com`**

<figure><img src="/files/c783ea3d0d47485397fbd122b951f16a987999d5" alt=""><figcaption><p>Mettre en place un reverse proxy vers Commanders Act sur CloudFlare</p></figcaption></figure>

2\. Côté DNS, faites pointer votre domaine de tracking (ex. waf.myshop.com) vers Cloudflare (le CNAME est fourni par cloudflare).

<figure><img src="/files/a7c74f255f6b4e15e352afe5e38d2a71d98459cd" alt=""><figcaption><p>Créez une entrée CNAME sur CloudFlare</p></figcaption></figure>

### Déclarez-le dans Domain Management

1. Déclarez le domaine\
   Utilisez notre interface Domain Management pour déclarer ce domaine et ajuster la manière dont Commanders Act collecte les données\
   `Administration > Domain Management`

<figure><img src="/files/4e9a3053c4ef086ade639718242ae1b71a65b1ba" alt=""><figcaption></figcaption></figure>

2. Activez le domaine\
   Activer l'option "Containers Integration" permettra d'inclure le domaine dans la configuration du container.

   Tous les tags Commanders Act passeront à une collecte First party.

   Cette action affectera Consent, Déduplication, Campaign, segment, Server Side

<figure><img src="/files/5d4f29b30cc005c4b2367b8e3a6c8a2f0f734f5a" alt=""><figcaption></figcaption></figure>

**Que se passe-t-il lorsque j'ai 2 domaines ou plus ?**

Il priorise le domaine du site web où le container est chargé. Si aucun domaine ne correspond au domaine du site web, le premier de la liste est utilisé.

{% hint style="warning" %}
À ce stade, **WebContainers et Privacy banners** doivent être **régénérés et déployés.**
{% endhint %}

3. Le cas échéant, adaptez votre tracking existant pour refléter votre nouveau domaine de tracking.\
   \
   Par exemple, sur un hit de tracking View Campaign :\
   [https://](https://waf.commandersact.com/mix/v3/?firsttime=1\&tcs=5039\&chn=referrer\&src=referrer_3\&user_id=96177\&TCID=96177\&cmp=Promotionnal+game\&cty=Italy)[waf.myshop.com](https://waf.commandersact.com/mix/v3/?firsttime=1\&tcs=5039\&chn=referrer\&src=referrer_3\&user_id=96177\&TCID=96177\&cmp=Promotionnal+game\&cty=Italy)[/mix/v3/?firsttime=1\&tcs=5039\&chn=ref](https://waf.commandersact.com/mix/v3/?firsttime=1\&tcs=5039\&chn=referrer\&src=referrer_3\&user_id=96177\&TCID=96177\&cmp=Promotionnal+game\&cty=Italy)[errer\&src=referrer\_3\&user\_id=96177\&TCID=96177\&cmp=Promotion](https://waf.commandersact.com/mix/v3/?firsttime=1\&tcs=5039\&chn=referrer\&src=referrer_3\&user_id=96177\&TCID=96177\&cmp=Promotionnal+game\&cty=Italy)[nal+game\&cty=Italy](https://waf.commandersact.com/mix/v3/?firsttime=1\&tcs=5039\&chn=referrer\&src=referrer_3\&user_id=96177\&TCID=96177\&cmp=Promotionnal+game\&cty=Italy)

## Dépannage

`Hôte` doit être identifié comme [waf.commandersact.com](http://waf.commandersact.com/) ce qui est attendu.

Si le `host` est identifié comme [ca-trk-proxy.commander1.com](http://ca-trk-proxy.commander1.com/) ce qui n'est pas attendu. Cela signifie probablement que le proxy définit le `host` paramètre dans l'en-tête vers le domaine de [commander1.com](http://commander1.com/) au lieu de conserver le domaine d'origine.

#### Configuration attendue du proxy

Voici la configuration attendue du proxy :

Haproxy :

```
listen tcp-443
  bind *:443
  mode tcp

  option log-health-checks
  option tcp-check

  server ca-trk-proxy ca-trk-proxy.commander1.com:443 resolvers dns check inter 30s check-sni ca-trk-proxy.commander1.com sni ssl_fc_sni check-ssl verify none
```

1. **server ca-trk-proxy**:
   * `server` est le mot-clé indiquant la définition d'un serveur dans une section backend.
   * `ca-trk-proxy` est le nom attribué à ce serveur. Il est utilisé pour identifier le serveur dans les logs et les stats.
2. [**ca-trk-proxy.commander1.com:443**](http://ca-trk-proxy.commander1.com:443/):
   * Cela précise l'adresse et le port du serveur. Ici, le serveur se trouve à `ca-trk-proxy.commander1.com` et écoute sur le port `443` (qui est généralement utilisé pour HTTPS).
3. **resolvers dns**:
   * `resolvers` spécifie la section de résolveurs DNS à utiliser pour résoudre le hostname du serveur.
   * `dns` fait référence à une section de résolveurs définie précédemment dans la configuration et contenant les détails du serveur DNS.
4. **check**:
   * Cela active les health checks pour le serveur. HAProxy vérifiera périodiquement si le serveur est opérationnel.
5. **inter 30s**:
   * Cela définit l'intervalle entre les health checks à 30 secondes.
6. **check-sni** [**ca-trk-proxy.commander1.com**](http://ca-trk-proxy.commander1.com/):
   * `check-sni` spécifie le Server Name Indication (SNI) à utiliser pendant le health check. SNI est une extension du protocole TLS qui permet au client de spécifier le hostname auquel il essaie de se connecter au début du processus de handshake.
   * `ca-trk-proxy.commander1.com` est le hostname utilisé pour le SNI pendant le health check.
7. **sni ssl\_fc\_sni**:
   * `sni` spécifie le SNI à utiliser lors de l'établissement des connexions au serveur.
   * `ssl_fc_sni` est un mot-clé dynamique qui utilise la valeur SNI de la connexion frontend pour cette connexion backend.
8. **check-ssl**:
   * Cela active les SSL checks pendant les health checks, en veillant à ce que la couche SSL/TLS soit correctement établie et validée.
9. **verify none**:
   * Cette option désactive la vérification du certificat SSL du serveur pendant les health checks. Cela signifie qu'HAProxy ne validera pas le certificat auprès d'une autorité de certification (CA).

En résumé, cette ligne de configuration définit un serveur backend nommé `ca-trk-proxy` situé à `ca-trk-proxy.commander1.com:443`. Il utilise le `dns` resolver pour la résolution DNS, effectue des health checks toutes les 30 secondes, utilise SNI pendant les vérifications et ne vérifie pas le certificat SSL du serveur pendant les health checks.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://doc.commandersact.com/fr/configurer/administration/domain-management/waf-proxy-cloudflare.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
