

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 il protocollo proxy per il tuo Classic Load Balancer
<a name="enable-proxy-protocol"></a>

Il protocollo proxy è un protocollo internet utilizzato per trasportare informazioni di connessione dall'origine che richiede la connessione alla destinazione per la quale la connessione è stata richiesta. Elastic Load Balancing utilizza il protocollo proxy versione 1, che adotta un formato di intestazione leggibile.

Per impostazione predefinita, quando utilizzi Transmission Control Protocol (TCP) sia per le connessioni front-end che back-end, il Classic Load Balancer inoltra le richieste alle istanze senza modificare le intestazioni. Se abiliti il protocollo proxy, alla richiesta viene aggiunta un'intestazione leggibile con le informazioni di connessione, ad esempio l'indirizzo IP di origine, l'indirizzo IP di destinazione e i numeri di porta. L'intestazione viene quindi inviata all'istanza come parte della richiesta.

**Nota**  
Non Console di gestione AWS supporta l'abilitazione del protocollo proxy.

**Topics**
+ [Intestazione del protocollo proxy](#proxy-protocol)
+ [Prerequisiti per l'abilitazione del protocollo proxy](#proxy-protocol-prerequisites)
+ [Abilita il protocollo proxy utilizzando il AWS CLI](#enable-proxy-protocol-cli)
+ [Disabilita il protocollo proxy utilizzando il AWS CLI](#proxy-protocol-disable-policy-cli)

## Intestazione del protocollo proxy
<a name="proxy-protocol"></a>

L'intestazione del protocollo proxy consente di identificare l'indirizzo IP di un client quando un load balancer utilizza TCP per le connessioni back-end. Poiché i bilanciatori del carico intercettano il traffico tra i client e le istanze, i log di accesso della tua istanza contengono l'indirizzo IP del load balancer anziché il client di origine. È possibile analizzare la prima riga della richiesta per recuperare l'indirizzo IP e il numero di porta del client.

L'indirizzo del proxy nell'intestazione di IPv6 è l' IPv6 indirizzo pubblico del sistema di bilanciamento del carico. Questo IPv6 indirizzo corrisponde all'indirizzo IP che viene risolto dal nome DNS del sistema di bilanciamento del carico, che inizia con o. `ipv6` `dualstack` Se il client si connette con IPv4, l'indirizzo del proxy nell'intestazione è l' IPv4 indirizzo privato del load balancer, che non è risolvibile tramite una ricerca DNS.

La riga del protocollo proxy è una riga singola che termina con un'andata a capo e un feed di riga (`"\r\n"`) e ha il formato seguente:

```
PROXY_STRING + single space + INET_PROTOCOL + single space + CLIENT_IP + single space + PROXY_IP + single space + CLIENT_PORT + single space + PROXY_PORT + "\r\n"
```

**Esempio: IPv4**  
Di seguito è riportato un esempio della riga del protocollo proxy per. IPv4

```
PROXY TCP4 198.51.100.22 203.0.113.7 35646 80\r\n
```

## Prerequisiti per l'abilitazione del protocollo proxy
<a name="proxy-protocol-prerequisites"></a>

Prima di iniziare, esegui queste attività:
+ Verifica che il tuo load balancer non si trovi dietro un server proxy con il protocollo proxy abilitato. Se il protocollo proxy è abilitato sia sul server proxy sia sul load balancer, quest'ultimo aggiunge un'altra intestazione alla richiesta, oltre a quella già aggiunta dal server proxy. A seconda della configurazione dell'istanza, questa duplicazione potrebbe causare errori.
+ Verifica che le tue istanze siano in grado di elaborare le informazioni del protocollo proxy.
+ Verifica che le impostazioni del listener supportino il protocollo proxy. Per ulteriori informazioni, consulta [Configurazioni del listener per i Classic Load Balancer](using-elb-listenerconfig-quickref.md).

## Abilita il protocollo proxy utilizzando il AWS CLI
<a name="enable-proxy-protocol-cli"></a>

Per abilitare il protocollo proxy, devi creare una policy del tipo `ProxyProtocolPolicyType`, quindi abilitarla sulla porta dell'istanza.

Utilizza la procedura seguente per creare una nuova policy per il tuo load balancer del tipo `ProxyProtocolPolicyType`, impostare la policy appena creata per l'istanza sulla porta `80` e verificare che la policy sia abilitata.

**Per abilitare il protocollo proxy per il proprio load balancer**

1. (Facoltativo) Utilizzate il seguente comando [describe-load-balancer-policy-types](https://docs.aws.amazon.com/cli/latest/reference/elb/describe-load-balancer-policy-types.html) per elencare le politiche supportate da Elastic Load Balancing:

   ```
   aws elb describe-load-balancer-policy-types
   ```

   La risposta include i nomi e le descrizioni dei tipi di policy supportati. L'output per il tipo `ProxyProtocolPolicyType` è il seguente:

   ```
   {
       "PolicyTypeDescriptions": [
           ...
           {
               "PolicyAttributeTypeDescriptions": [
                   {
                       "Cardinality": "ONE",
                       "AttributeName": "ProxyProtocol",
                       "AttributeType": "Boolean"
                   }
               ],
               "PolicyTypeName": "ProxyProtocolPolicyType",
               "Description": "Policy that controls whether to include the IP address and port of the originating 
   request for TCP messages. This policy operates on TCP/SSL listeners only"
           },
           ...
       ]
   }
   ```

1. Utilizzate il [create-load-balancer-policy](https://docs.aws.amazon.com/cli/latest/reference/elb/create-load-balancer-policy.html)comando seguente per creare una policy che abiliti il protocollo proxy:

   ```
   aws elb create-load-balancer-policy --load-balancer-name my-loadbalancer --policy-name my-ProxyProtocol-policy --policy-type-name ProxyProtocolPolicyType --policy-attributes AttributeName=ProxyProtocol,AttributeValue=true
   ```

1. Utilizzate il seguente for-backend-server comando [set-load-balancer-policies-](https://docs.aws.amazon.com/cli/latest/reference/elb/set-load-balancer-policies-for-backend-server.html) per abilitare la policy appena creata sulla porta specificata. Questo comando sostituisce il set corrente di policy abilitate. Pertanto, l'opzione `--policy-names` deve specificare sia la policy che si aggiunge all'elenco (ad esempio `my-ProxyProtocol-policy`) sia eventuali policy che al momento sono abilitate (ad esempio `my-existing-policy`).

   ```
   aws elb set-load-balancer-policies-for-backend-server --load-balancer-name my-loadbalancer --instance-port 80 --policy-names my-ProxyProtocol-policy my-existing-policy
   ```

1. (Facoltativo) Utilizzate il seguente [describe-load-balancers](https://docs.aws.amazon.com/cli/latest/reference/elb/describe-load-balancers.html)comando per verificare che il protocollo proxy sia abilitato:

   ```
   aws elb describe-load-balancers --load-balancer-name my-loadbalancer
   ```

   La risposta include le seguenti informazioni, che mostrano che la policy `my-ProxyProtocol-policy` è associata alla porta `80`.

   ```
   {
       "LoadBalancerDescriptions": [
           {
               ...
               "BackendServerDescriptions": [
                   {
                       "InstancePort": 80, 
                       "PolicyNames": [
                           "my-ProxyProtocol-policy"
                       ]
                   }
               ], 
               ...
           }
       ]
   }
   ```

## Disabilita il protocollo proxy utilizzando il AWS CLI
<a name="proxy-protocol-disable-policy-cli"></a>

Puoi disabilitare le policy associate alla tua istanza e abilitarle in un secondo momento.

**Per disabilitare la policy del protocollo proxy**

1. Utilizzate il seguente for-backend-server comando [set-load-balancer-policies-](https://docs.aws.amazon.com/cli/latest/reference/elb/set-load-balancer-policies-for-backend-server.html) per disabilitare la politica del protocollo proxy omettendola dall'`--policy-names`opzione, ma includendo le altre politiche che dovrebbero rimanere abilitate (ad esempio,`my-existing-policy`).

   ```
   aws elb set-load-balancer-policies-for-backend-server --load-balancer-name my-loadbalancer --instance-port 80 --policy-names my-existing-policy
   ```

   Se non ci sono altre politiche da abilitare, specificare una stringa vuota con l'opzione `--policy-names` come segue:

   ```
   aws elb set-load-balancer-policies-for-backend-server --load-balancer-name my-loadbalancer --instance-port 80 --policy-names "[]"
   ```

1. (Facoltativo) Utilizzate il [describe-load-balancers](https://docs.aws.amazon.com/cli/latest/reference/elb/describe-load-balancers.html)comando seguente per verificare che la policy sia disabilitata:

   ```
   aws elb describe-load-balancers --load-balancer-name my-loadbalancer
   ```

   La risposta include le seguenti informazioni, che mostrano che alla policy non è associata alcuna porta.

   ```
   {
       "LoadBalancerDescriptions": [
           {
               ...
               "BackendServerDescriptions": [],
               ...
           }
       ]
   }
   ```