Nous avons une batterie de serveurs Web hébergeant actuellement 2 applications - les deux applications s'exécutent sur tous les serveurs. Nous voulons diviser cela afin que nous ayons une batterie de serveurs dédiée pour chaque application (nous avons de bonnes raisons à cela).
Nous espérions avoir un seul équilibreur de charge devant tous les serveurs, qui acheminerait le trafic vers la batterie de serveurs correcte en fonction du nom d'hôte, mais nous voulons conserver SSL aux serveurs Web.
Il semble que les routeurs qui nous sont proposés ne le font pas. Je comprends que sans SNI, cela est impossible, mais nous attendons des indicateurs SNI sur pratiquement tout notre trafic.
Maintenant, je suis un programmeur, pas un gars du réseau, mais lorsqu'une nouvelle demande de connexion SSL arrive, le routeur ne peut-il pas examiner l'en-tête SNI et router vers la batterie de serveurs correcte. Je suppose que la connexion SSL entrante est identifiée par {IP source: port source}, donc ne peut-il pas s'en souvenir pour les paquets entrants suivants (si SNI n'est présent que dans le premier paquet)?
Pour autant que je sache, Haproxy le fait, mais il semble que les équilibreurs de charge matériels ne le fassent pas. Y a-t-il une raison à cela, ou est-ce quelque chose pour lequel nous devrions insister?
(Pour le dernier gardien utilisant IE sur XP qui n'inclut pas SNI, nous voudrions envoyer du trafic vers l'ancienne batterie de serveurs et nous gérerions le proxy vers la nouvelle batterie de serveurs si nécessaire).
la source
Un routeur ne fonctionne généralement qu'au niveau de la couche OSI 3, c'est-à-dire qu'il n'inspecte pas le contenu du paquet mais uniquement l'adresse IP cible. Pour le routage basé sur SNI, une compréhension de TCP et TLS serait nécessaire, ce qui est à la fois plus complexe et beaucoup plus cher (en termes de performances) que le routage basé sur l'adresse IP. Et cela n'est généralement plus appelé routage.
Vous mélangez routeur (couche 3), équilibreur de charge matériel (couche 4 et peut-être plus) et Haproxy (équilibreur de charge logiciel). Un équilibreur de charge matériel n'est rien de plus qu'une appliance avec un équilibreur de charge logiciel et peut-être aussi une accélération matérielle pour des actions spécifiques. Il n'y a rien qui rend par nature l'équilibrage (pas le routage) basé sur les informations SNI impossible sur un équilibreur de charge matériel et comme une autre réponse suggère qu'il existe des produits qui prennent en charge cela. Mais bien sûr, il doit être implémenté et cela coûte des performances - ils approfondissent le trafic plus lentement.
la source