Possiedo un servizio di bilanciamento del carico F5 e un server back-end . Il bilanciamento del carico è www.example.com . Il server di backend è server1.example.com . Dispongo del bilanciamento del carico F5 con SSL Profile (client)
e SSL Profile (server)
abilitato e SSL certs sul server di bilanciamento del carico e back-end. Quindi sembra questo:
Client (laptop) --> HTTPS/SSL --> F5 Load Balancer (www.example.com) --> HTTPS/SSL --> Backend server (server1.example.com)
Il server di backend è in esecuzione Windows 2012 / IIS 8.5 . Nei binding, il campo Nome host è vuoto.
Mi aspettavo che una richiesta di www.example.com fallisse perché il CERT SSL del server back-end è per server1.example.com . In realtà ha successo. Non capisco perché funzioni.
Se imposto il Nome host nei collegamenti IIS a server1.example.com , la richiesta non riesce. Se lo lasci in bianco o lo imposti su www.example.com , la richiesta ha esito positivo. Non so perché. Non ha senso.
Capisco che F5 LB agisca da client nell'handshake tra se stesso e il server di backend. Ma la mia comprensione è che la F5 sta inviando una richiesta per www.example.com (nome host) al server di back-end. Il certificato SSL back-end è per server1.esempio.com . Pertanto, la richiesta non dovrebbe essere eseguita poiché il nome host inviato da F5 non corrisponde al nome host associato al certificato SSL del server back-end. Cioè www.example.com! = Server1.example.com .
Per favore dimmi dove mi sbaglio nella mia logica, perché ovviamente lo sono. Semplicemente non capisco perché funzioni.
Grazie.