

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Listener per il Classic Load Balancer
<a name="elb-listener-config"></a>

Prima di iniziare a utilizzare Elastic Load Balancing, è necessario configurare uno o più *listener* per il Classic Load Balancer. Si definisce listener il processo che verifica la presenza di richieste di connessione. È configurato con un protocollo e una porta sia per connessioni front-end (dal client al load balancer) sia per connessioni back-end (dal load balancer all'istanza di back-end).

Elastic Load Balancing supporta i seguenti protocolli:
+ HTTP
+ HTTPS (HTTP protetto)
+ TCP
+ SSL (TCP protetto)

Il protocollo HTTPS utilizza il protocollo SSL per stabilire connessioni protette tramite il layer HTTP. È anche possibile utilizzare il protocollo HTTPS per stabilire connessioni protette tramite il layer TCP.

Se la connessione front-end utilizza TCP o SSL, le connessioni back-end possono utilizzare TCP o SSL. Se la connessione front-end utilizza HTTP o HTTPS, le connessioni back-end possono utilizzare HTTP or HTTPS.

Le istanze di back-end possono essere in ascolto sulle porte 1-65535.

I sistema di bilanciamento del carico possono essere in ascolto sulle seguenti porte: 1-65535

**Topics**
+ [Protocolli](#elb-listener-protocols)
+ [Listener HTTPS/SSL](#https-ssl-listeners)
+ [Configurazioni del listener per i Classic Load Balancer](using-elb-listenerconfig-quickref.md)
+ [Intestazioni HTTP e Classic Load Balancer](x-forwarded-headers.md)

## Protocolli
<a name="elb-listener-protocols"></a>

La comunicazione per una tipica applicazione Web avviene attraverso livelli di hardware e software. Ogni livello fornisce una funzione di comunicazione specifica. Il controllo sulla funzione di comunicazione viene trasferito da un livello a quello successivo, in sequenza. In questi livelli il modello OSI (Open System Interconnection) definisce un framework modello per l'implementazione di un formato standard per le comunicazioni, chiamato *protocollo*. Per ulteriori informazioni, consulta [Modello OSI](https://en.wikipedia.org/wiki/OSI_model) in Wikipedia.

Quando si utilizza Elastic Load Balancing, serve una comprensione di base del livello 4 e del livello 7. Il livello 4 è il livello di trasporto che descrive la connessione TCP (Transmission Control Protocol) tra il client e l'istanza di back-end, tramite il load balancer. Il livello 4 è il livello minimo configurabile per il load balancer. Il livello 7 è il livello applicativo che descrive l'uso delle connessioni HTTP (Hypertext Transfer Protocol) e HTTPS (HTTP protetto) dai client al load balancer e dal load balancer all'istanza di back-end.

Il protocollo Secure Sockets Layer (SSL) viene utilizzato principalmente per crittografare i dati riservati tramite reti non sicure, ad esempio Internet. Il protocollo SSL stabilisce una connessione sicura tra un client e un server di back-end e garantisce che tutti i dati trasferiti tra il client e il server siano privati e integri.

### Protocollo TCP/SSL
<a name="using-elb-tcp-layer4"></a>

Quando utilizzai TCP (livello 4) sia per le connessioni front-end che back-end, il load balancer inoltra la richiesta per le istanze di back-end senza modificare le intestazioni. Dopo che il load balancer riceve la richiesta, tenta di aprire una connessione TCP all'istanza di back-end sulla porta specificata nella configurazione del listener.

Poiché i bilanciatori del carico intercettano il traffico tra i client e le tue istanze di back-end, i log di accesso per la tua istanza di back-end contengono l'indirizzo IP del load balancer invece del client di origine. È possibile abilitare il protocollo proxy, che aggiunge un'intestazione con le informazioni di connessione del client, ad esempio l'indirizzo IP di origine, l'indirizzo IP di destinazione e i numeri di porta. L'intestazione viene quindi inviata all'istanza di back-end come parte della richiesta. Puoi analizzare la prima riga nella richiesta per recuperare le informazioni di connessione. Per ulteriori informazioni, consulta [Configura il protocollo proxy per il tuo Classic Load Balancer](enable-proxy-protocol.md).

Utilizzando questa configurazione, non ricevi cookie per la persistenza della sessione o le intestazioni X-Forwarded.

### Protocollo HTTP/HTTPS
<a name="using-elb-http-layer7"></a>

Quando si utilizza HTTP (livello 7) per le connessioni front-end e back-end, il sistema di bilanciamento del carico analizza le intestazioni della richiesta prima di inviarla alle istanze di back-end.

Per ogni istanza registrata e integra di un sistema di bilanciamento HTTP/HTTPS del carico, Elastic Load Balancing apre e mantiene una o più connessioni TCP. Queste connessioni assicurano che venga sempre stabilita una connessione pronta per ricevere le richieste HTTP/HTTPS.

Le richieste e le risposte HTTP utilizzano i campi intestazione per inviare informazioni sui messaggi HTTP. Elastic Load Balancing supporta le intestazioni `X-Forwarded-For`. Poiché i bilanciatori del carico intercettano il traffico tra client e server, i log di accesso al server contengono solo l'indirizzo IP del load balancer. Per visualizzare l'indirizzo IP del client, utilizza l'intestazione della richiesta `X-Forwarded-For`. Per ulteriori informazioni, consulta [X-Forwarded-For](x-forwarded-headers.md#x-forwarded-for).

Quando utilizzi HTTP/HTTPS, puoi abilitare le sticky session sul tuo load balancer. Una sticky session associa una sessione utente ad una determinata istanza di back-end. Questo garantisce che tutte le richieste provenienti dall'utente durante la sessione vengano inviate alla stessa istanza di back-end. Per ulteriori informazioni, consulta [Configura le sticky session per il Classic Load Balancer](elb-sticky-sessions.md).

Non tutte le estensioni HTTP sono supportate nel load balancer. Potrebbe essere necessario utilizzare un listener TCP se il load balancer non è in grado di terminare la richiesta a causa di metodi imprevisti, codici di risposta o altre implementazioni HTTP 1.0/1.1 non standard.

## Listener HTTPS/SSL
<a name="https-ssl-listeners"></a>

È possibile creare un load balancer con le seguenti caratteristiche di sicurezza.

### Certificati del server SSL
<a name="ssl-cert"></a>

Se utilizzi HTTPS o SSL per le connessioni front-end, devi distribuire un certificato X.509 (certificato server SSL) sul load balancer. Il load balancer decrittografa le richieste provenienti dai client prima di inviarle alle istanze di back-end (questo processo è noto come *terminazione SSL*). Per ulteriori informazioni, consulta [Certificati SSL/TLS per Classic Load Balancer](ssl-server-cert.md).

Se non desideri che il load balancer gestisca la terminazione SSL (anche chiamata *offload SSL*), puoi utilizzare TCP sia per le connessioni front-end che back-end e distribuire i certificati sulle istanze registrate che gestiscono le richieste.

### Negoziazione SSL
<a name="using-elb-cipher-settings"></a>

Elastic Load Balancing fornisce configurazioni di negoziazione SSL predefinite, che vengono utilizzate per la negoziazione SSL quando viene stabilita una connessione tra un client e il load balancer. Le configurazioni di negoziazione SSL offrono la compatibilità con un'ampia gamma di client e utilizzano algoritmi di crittografia altamente sicuri, denominati *cifrari*. Tuttavia, alcuni casi d'uso potrebbero richiedere la crittografia di tutti i dati sulla rete e consentire solo cifrari specifici. Alcuni standard di conformità per la sicurezza (ad esempio PCI e SOX) potrebbero richiedere un set specifico di protocolli e cifrari dei client per assicurare che gli standard di sicurezza vengano soddisfatti. In questi casi, puoi creare una configurazione di negoziazione SSL personalizzata basata su esigenze specifiche. I tuoi cifrari e protocolli devono essere applicati entro 30 secondi. Per ulteriori informazioni, consulta [Configurazioni della negoziazione SSL per Classic Load Balancer](elb-ssl-security-policy.md).

### Autenticazione server back-end
<a name="using-elb-backend-auth"></a>

Se utilizzi HTTPS o SSL per le connessioni back-end, puoi abilitare l'autenticazione delle istanze registrate. Puoi quindi utilizzare il processo di autenticazione per assicurarti che le istanze accettino solo le comunicazioni crittografate e che ogni istanza registrata disponga della chiave pubblica corretta.

Per ulteriori informazioni, consulta [Configurazione dell'autenticazione del server back-end](elb-create-https-ssl-load-balancer.md#configure_backendauth_clt).