Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung Nächste ÜberarbeitungBeide Seiten der Revision |
de:shibidp3extclustering [2020/11/19 10:04] – Silke Meyer | de:shibidp3extclustering [2020/11/19 10:16] – Silke Meyer |
---|
* der passive Loadbalancer den aktiven nicht mehr über VRRP erreicht oder | * der passive Loadbalancer den aktiven nicht mehr über VRRP erreicht oder |
* der HAProxy auf dem aktiven Loadbalancer nicht mehr läuft | * der HAProxy auf dem aktiven Loadbalancer nicht mehr läuft |
* **HAProxy** bindet sich an die IP-Adresse(n) des IdP | * **HAProxy** (Community Edition) bindet sich an die IP-Adresse(n) des IdP ([[https://www.haproxy.com/]]) |
* terminiert die SSL-Verbindung, setzt ein Cookie zur Wiederverbindung mit demselben Backend, verschlüsselt den Traffic zum gewählten IdP | * terminiert die SSL-Verbindung, setzt ein Cookie zur Wiederverbindung mit demselben Backend, verschlüsselt den Traffic zum gewählten IdP |
* führt Health Checks aus, z.B. auf Layer 7 gegen die Statusseite des IdP | * führt Health Checks aus, z.B. auf Layer 7 gegen die Statusseite des IdP |
* Backchannel/Port 8443 wird einfach über TCP / auf Layer 4 nach hinten durchgereicht | * Backchannel/Port 8443 wird einfach über TCP / auf Layer 4 nach hinten durchgereicht |
| |
Dies ist ein beispielhafter Auszug aus ''/etc/haproxy/haproxy.cfg''. Bitte denken Sie daran, dass der Loadbalancer im Abschnitt ''global'' eine sichere TLS-Konfiguration bekommt! Dabei hilft Ihnen z.B. der [[https://ssl-config.mozilla.org/|Mozilla SSL Configuration Generator]]. | <callout color="#ff9900" title="Links zu HAProxy"> |
| Bei Fragen zu HAProxy konsultieren Sie bitte deren [[http://www.haproxy.org/#docs|Dokumentation]] oder deren [[https://discourse.haproxy.org/|User Forum]]! |
| </callout> |
| |
<file bash> | |
| Dies ist ein beispielhafter Auszug aus ''/etc/haproxy/haproxy.cfg''. Bitte denken Sie daran, dass der Loadbalancer im Abschnitt ''global'' eine sichere TLS-Konfiguration bekommt! Dabei hilft Ihnen z.B. der [[https://ssl-config.mozilla.org/|Mozilla SSL Configuration Generator]].<file bash> |
frontend idp_frontchannel | frontend idp_frontchannel |
mode http | mode http |
# Hier definieren Sie die realen Hosts, auf denen die IdPs laufen. | # Hier definieren Sie die realen Hosts, auf denen die IdPs laufen. |
# Jeder setzt ein Cookie mit dem Hostname. | # Jeder setzt ein Cookie mit dem Hostname. |
# Jeder wird ohne DNS, direkt auf der Host-IP über TLS mit Server Name Indication geprüft. | # Zu jedem wird der Traffic erneut verschlüsselt. |
server idp1 <IPv4-Adresse 1. IdP-Host>:443 ssl sni str(idp.beispiel-uni.de) ca-file <das CA-File, dem vertraut werden soll> cookie idp1 check check-ssl addr <IPv4-Adresse 1. IdP-Host> port 443 check-sni idp.beispiel-uni.de downinter 10s on-marked-down shutdown-sessions | # Die Health Checks erfolgen ohne DNS, direkt auf der Host-IP über TLS mit Server Name Indication. (Die ist wichtig, wenn auf den Real Servern mehr als eine Shibboleth-Instanz läuft und die separat geprüft werden sollen, z.B. Dev-Instanz und Produktiv-Instanz.) |
server idp2 <IPv4-Adresse 2. IdP-Host>:443 ssl sni str(idp.beispiel-uni.de) ca-file <das CA-File, dem vertraut werden soll> cookie idp2 check check-ssl addr <IPv4-Adresse 2. IdP-Host> port 443 check-sni idp.beispiel-uni.de downinter 10s on-marked-down shutdown-sessions | server idp1 <IPv4-Adresse 1. IdP-Host>:443 ssl sni str(idp.beispiel-uni.de) ca-file <das CA-File, mit dem verschlüsselt werden soll> cookie idp1 check check-ssl addr <IPv4-Adresse 1. IdP-Host> port 443 check-sni idp.beispiel-uni.de downinter 10s on-marked-down shutdown-sessions |
| server idp2 <IPv4-Adresse 2. IdP-Host>:443 ssl sni str(idp.beispiel-uni.de) ca-file <das CA-File, mit dem verschlüsselt werden soll> cookie idp2 check check-ssl addr <IPv4-Adresse 2. IdP-Host> port 443 check-sni idp.beispiel-uni.de downinter 10s on-marked-down shutdown-sessions |
| |
backend idp_backchannel | backend idp_backchannel |