# Configuration ja4ebpf — stack hitch + varnish # # Architecture TLS : hitch est le seul processus qui fait SSL_read. # Il lie libssl.so.3 dynamiquement (package openssl sur Rocky Linux 9). # ja4ebpf attache son uprobe sur libssl.so.3 pour capturer les données # déchiffrées que hitch transmet à Varnish via PROXY protocol. # # Différence clé vs nginx : # - Le processus qui appelle SSL_read est /usr/sbin/hitch (pas nginx) # - Le PROXY protocol header est dans le flux cleartext hitch→varnish, # pas dans les données capturées par SSL_read # - src_ip est récupérée via le hook TC (TCP SYN du client vers hitch:443) interface: eth0 ssl_probes: # hitch lie libssl.so.3 de Rocky Linux 9. # On peut aussi essayer directement le binaire hitch si OpenSSL est statique. - executable: /usr/lib64/libssl.so.3 symbol: SSL_read # Fallback : hitch peut lier une version différente selon le packaging - executable: /usr/sbin/hitch symbol: SSL_read clickhouse: addr: "clickhouse:9000" database: "ja4_logs" table: "http_logs_raw" username: "default" password: "" tls: false batch_size: 100 flush_every: "1s" timeouts: session_expiry: "500ms" slowloris: "10s" log: level: "info" format: "json"