

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à.

# Configura la modalità di attenuazione della desincronizzazione per Classic Load Balancer
<a name="config-desync-mitigation-mode"></a>

La modalità di attenuazione della desincronizzazione protegge l'applicazione da problemi dovuti alla desincronizzazione HTTP. Il load balancer classifica ogni richiesta in base al relativo livello di minaccia, consente le richieste sicure e quindi riduce i rischi come specificato dalla modalità di attenuazione specificata. Le modalità di attenuazione della desincronizzazione sono monitorate, difensive e più rigorose. L'impostazione predefinita è la modalità difensiva, che fornisce un'attenuazione duratura contro la desincronizzazione HTTP mantenendo la disponibilità dell'applicazione. È possibile passare alla modalità più rigorosa per garantire che l'applicazione riceva solo richieste conformi a RFC 7230.

La libreria http\_desync\_guardian analizza le richieste HTTP per prevenire gli attacchi di desincronizzazione HTTP. Per ulteriori informazioni, consulta [HTTP Desync Guardian](https://github.com/aws/http-desync-guardian) su github.

**Topics**
+ [Classificazioni](#desync-mitigation-classification)
+ [Modalità](#desync-mitigation-modes)
+ [Modifica la modalità di attenuazione della desincronizzazione](#update-desync-mitigation-mode)

**Suggerimento**  
Questa configurazione si applica solo ai Classic Load Balancer. Per informazioni valide per Application Load Balancer, consulta [Modalità di attenuazione della desincronizzazione per gli Application Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/application-load-balancers.html#desync-mitigation-mode).

## Classificazioni
<a name="desync-mitigation-classification"></a>

Le classificazioni sono le seguenti.
+ Conformità: la richiesta è conforme a RFC 7230 e non presenta minacce per la sicurezza note.
+ Accettabile: la richiesta non è conforme a RFC 7230 ma non presenta minacce per la sicurezza note.
+ Ambigua: la richiesta non è conforme a RFC 7230 ma rappresenta un rischio, poiché vari server web e proxy potrebbero gestirla in modo diverso.
+ Grave: la richiesta comporta un elevato rischio per la sicurezza. Il load balancer blocca la richiesta, fornisce una risposta 400 al client e chiude la connessione client.

Gli elenchi seguenti descrivono i problemi di ogni classificazione.

**Accettabile**
+ Un'intestazione contiene un carattere non ASCII o di controllo.
+ La versione della richiesta contiene un valore non valido.
+ Esiste un'intestazione Content-Length con un valore pari a 0 per una richiesta GET o HEAD.
+ L'URI della richiesta contiene uno spazio che non ha codifica URL.

**Ambiguo**
+ L'URI della richiesta contiene caratteri di controllo.
+ La richiesta contiene sia un'intestazione Transfer-Encoding che un'intestazione Content-Length.
+ Esistono più intestazioni Content-Length con lo stesso valore.
+ Un'intestazione è vuota o c'è una riga con solo spazi.
+ C'è un'intestazione che può essere normalizzata per Transfer-Encoding o Content-Length utilizzando tecniche comuni di normalizzazione del testo. 
+ Esiste un'intestazione Content-Length per una richiesta GET o HEAD.
+ Esiste un'intestazione Transfer-Encoding per una richiesta GET o HEAD.

**Grave**
+ L'URI della richiesta contiene un carattere nullo o un'andata a capo.
+ L'intestazione Content-Length contiene un valore che non può essere analizzato o non è un numero valido.
+ Un'intestazione contiene un carattere nullo o un'andata a capo.
+ L'intestazione Transfer-Encoding contiene un valore non valido.
+ Il formato del metodo di richiesta è errato.
+ Il formato della versione della richiesta è errato.
+ Esistono più intestazioni Content-Length con valori diversi.
+ Esistono più Transfer-Encoding: intestazioni a blocchi.

Se una richiesta non è conforme a RFC 7230, il bilanciamento del carico incrementa il parametro `DesyncMitigationMode_NonCompliant_Request_Count`. Per ulteriori informazioni, consulta [Parametri Classic Load Balancer](elb-cloudwatch-metrics.md#loadbalancing-metrics-clb).

## Modalità
<a name="desync-mitigation-modes"></a>

La tabella seguente descrive come i Classic Load Balancer trattano le richieste in base alla modalità e alla classificazione.


| Classificazione | Modalità monitorata | Modalità difensiva | Modalità più rigorosa | 
| --- | --- | --- | --- | 
| Conforme | Consentito | Consentito | Consentito | 
| Accettabile | Consentito | Consentito | Bloccato | 
| Ambiguo | Consentito | Consentito¹ | Bloccato | 
| Grave | Consentito | Bloccato | Bloccato | 

¹ Esegue il routing delle richieste ma chiude le connessioni client e target.

## Modifica la modalità di attenuazione della desincronizzazione
<a name="update-desync-mitigation-mode"></a>

**Per aggiornare la modalità di attenuazione della desincronizzazione tramite la console**

1. Apri la console Amazon EC2 all'indirizzo [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. Nel pannello di navigazione, sotto **Bilanciamento del carico**, scegli **Sistemi di bilanciamento del carico**.

1. Scegli il nome del sistema di bilanciamento del carico per aprirne la pagina dei dettagli.

1. Nella scheda **Attributi**, scegli **Modifica**.

1. Nella pagina **Modifica attributi del sistema di bilanciamento del carico**, nella sezione **Configurazione del traffico**, scegli **Difensivo - scelta consigliata**, **Rigido** o **Monitoraggio**.

1. Scegli **Save changes** (Salva modifiche).

**Per aggiornare la modalità di mitigazione della desincronizzazione utilizzando il AWS CLI**  
Utilizzare il [modify-load-balancer-attributes](https://docs.aws.amazon.com/cli/latest/reference/elb/modify-load-balancer-attributes.html)comando con l'`elb.http.desyncmitigationmode`attributo impostato su `monitor``defensive`, o. `strictest`

```
aws elb modify-load-balancer-attributes --load-balancer-name {{my-load-balancer}} --load-balancer-attributes file://attribute.json
```

Di seguito sono riportati i contenuti di `attribute.json`.

```
{
    "AdditionalAttributes": [
        {
            "Key": "elb.http.desyncmitigationmode",
            "Value": "strictest"
        }
    ]
}
```