2009-05-04 21 views
7

Qui è la nostra attuale infrastruttura:Come impostare SSL in un ambiente con bilanciamento del carico?

  1. 2 server web dietro un bilanciatore di carico condiviso
  2. dns sta indicando il bilanciamento del carico
  3. web app è fatto in asp.net, con servizi WCF

La mia domanda è come impostare il certificato SSL per supportare la connessione https.

Qui ci sono 2 idee che ho:

  1. certificato SSL termina al bilanciamento del carico. la comunicazione sicura/non protetta dietro il bilanciamento del carico verrà inoltrata a 2 porte diverse.
    pro: bisogno solo di 1 certificato come mi scala orizzontale
    svantaggi: devo controllare sicuro o non sicuro per controllare quale porta la richiesta è provenienti da. non abbastanza sentire come a me

    WCF in base alla progettazione non funziona quando IIS è rilegato 2 porte diverse
    (according to this)

  2. certificato SSL termina su ciascuno dei server?
    svantaggi: necessità di aggiungere più certificati ridimensionare in orizzontale

grazie

risposta

4

Sicuramente terminare SSL al bilanciamento del carico !!! Qualunque cosa dietro ciò NON dovrebbe essere visibile all'esterno. Perché due porte per sicuro/insicuro funzionano bene?

+0

dire per argomento, se non sicuro rimane sulla porta 80. e sicuro inoltrato a una porta casuale: x. Non significa andare direttamente a http: // domain: x ignora il certificato sicuro? gli utenti potrebbero non rendersi conto che stanno inviando comunicazioni non crittografate. – ronaldwidha

+0

Gli utenti non vedrebbero gli indirizzi dietro il firewall, in quanto il firewall agisce come una sorta di proxy - comunica con le macchine dietro, o inoltra e inoltra i pacchetti avanti e indietro. (Questo non è proprio corretto, ma è una descrizione OK di ciò che l'utente vedrebbe) – blowdart

+2

Verificare gli standard PCI/DSS perché ciò rende vulnerabile il traffico intercettato all'interno della rete. – Falkayn

1

Non hai bisogno di due porte, molto probabilmente. Basta che il server virtuale SSL sul bilanciamento del carico aggiunga un'intestazione HTTP alla richiesta e verifichi ciò. È ciò che facciamo con il nostro Zeus ZXTM 5.1.

+0

è un server virtuale SSL un pezzo di hardware o una particolare impostazione sul bilanciamento del carico? – ronaldwidha

+0

Quando si imposta un sito in un servizio di bilanciamento del carico, è necessario specificare l'IP da ascoltare e i nodi back-end (ip/port) per inoltrare il traffico a. Questa configurazione, nel suo insieme, viene generalmente indicata come un server virtuale o "VIP" in alcuni casi. – Chris

3

In realtà non sono necessari più certificati. Poiché l'FQDN visto esternamente è lo stesso, si utilizza lo stesso certificato su ciascuna macchina.

Ciò significa che WCF (se lo si sta utilizzando) funzionerà. WCF con SSL che termina con il servizio di bilanciamento del carico esterno è doloroso se si sta firmando/crittografando a livello di messaggio piuttosto che a livello di trasporto.

+0

sembra che questo sia l'approccio migliore da seguire. così puoi dare maggiori dettagli su come è la configurazione? ssl termina su tutte le caselle? non a livello di nome di dominio (ad es. bilanciamento del carico?) – ronaldwidha

+0

Bene quando si importa la risposta alla richiesta di certificato su una macchina, sarà possibile utilizzare lo snap-in MMC di gestione certificati per esportare il certificato, inclusa la chiave privata. Questo può quindi essere importato su altre caselle e associato a IIS. Tuttavia ... cosa intendi per livello del nome di dominio? Stai dicendo che il bilanciamento del carico risponde a * .domain.example? Questo complica le cose. – blowdart

0

non si hanno per ottenere un CERT per ogni sito ci sono cose come certs jolly. Ma dovrebbe essere installato su ogni server. (supponendo che si stiano utilizzando i sottodomini, in caso contrario si può riutilizzare lo stesso certificato attraverso le macchine)

Ma probabilmente metterei il certificato sul bilanciamento del carico se non solo per una facile configurazione.

Problemi correlati