Faciliter la traversée réseau #21

Closed
opened 2023-10-16 15:02:56 +02:00 by neox · 2 comments
Owner

Permettre la connexion c2s sur le port 443 afin de traverser les équipements réseau trop contraignants.

Proposition de solution : Mettre un proxy nginx d'HTTPS vers le XMPP C2S.

Proposition en détail :

  • Laisser le port 5222 en prioritaire (pas besoin d'ALPN)
  • Mettre le port 443 en fallback (besoin d'ALPN)
  • Mettre un proxy nginx 443 qui route le flux XMPP C2S vers le port 5222, le reste vers un port tiers (ex 8443).

Exemple de configuration de zone DNS :

_xmpp-client._tcp              IN SRV    0 1 5222 xmpp
_xmpp-client._tcp              IN SRV    1 1 443 xmpp

Exemple de configuration nginx :

Ajouter dans /etc/nginx/nginx.conf

stream {
  map $ssl_preread_alpn_protocols $proxy {
    ~\bhttp/1.1\b  127.0.0.1:8443;
    ~\bxmpp-client\b  127.0.0.1:5222;
    default           127.0.0.1:8443;
  }

  server {

    listen      443;
    listen      [::]:443;
    proxy_pass  $proxy;
    ssl_preread on;

  }
}
Permettre la connexion c2s sur le port 443 afin de traverser les équipements réseau trop contraignants. Proposition de solution : Mettre un proxy nginx d'HTTPS vers le XMPP C2S. Proposition en détail : - Laisser le port 5222 en prioritaire (pas besoin d'ALPN) - Mettre le port 443 en fallback (besoin d'ALPN) - Mettre un proxy nginx 443 qui route le flux XMPP C2S vers le port 5222, le reste vers un port tiers (ex 8443). Exemple de configuration de zone DNS : ``` _xmpp-client._tcp IN SRV 0 1 5222 xmpp _xmpp-client._tcp IN SRV 1 1 443 xmpp ``` Exemple de configuration nginx : Ajouter dans /etc/nginx/nginx.conf ``` stream { map $ssl_preread_alpn_protocols $proxy { ~\bhttp/1.1\b 127.0.0.1:8443; ~\bxmpp-client\b 127.0.0.1:5222; default 127.0.0.1:8443; } server { listen 443; listen [::]:443; proxy_pass $proxy; ssl_preread on; } } ```
neox self-assigned this 2023-10-16 15:02:56 +02:00
neox added the
en cours
label 2023-10-19 15:47:53 +02:00
Author
Owner

Fait !

Fait !
neox added
résolu
and removed
en cours
labels 2024-09-27 21:51:19 +02:00
Author
Owner

Pour que cela fonctionne correctement côté IPv4, création ticket infra : cominfra/infra-generale#199

Pour que cela fonctionne correctement côté IPv4, création ticket infra : https://forge.a-lec.org/cominfra/infra-generale/issues/199
neox closed this issue 2024-10-10 23:18:30 +02:00
Sign in to join this conversation.
No description provided.