[z/OS]

Configurazione di AT - TLS su un canale in entrata da un gestore code IBM MQ for Multiplatforms utilizzando un singolo, denominato CipherSpec

Come impostare AT - TLS su un canale in ingresso da un gestore code IBM® MQ for Multiplatforms a un gestore code IBM MQ for z/OS® . In questo caso, il canale sul gestore code z/OS è un canale ricevente che non ha l'attributo SSLCIPH impostato e il canale sul gestore code nonz/OS è un canale mittente con l'attributo SSLCIPH impostato su un singolo, denominato CipherSpec.

Vedere Configurazione di AT-TLS su un canale in entrata da un gestore di code IBM MQ per Multiplatforms utilizzando un alias CipherSpec per un esempio di utilizzo di un alias CipherSpec.

In questo esempio, una coppia di canali mittente - ricevente esistente, che utilizza TLS 1.3 TLS_AES_256_GCM_SHA384 CipherSpec verrà regolata in modo che il canale ricevente utilizzi AT - TLS invece di IBM MQ TLS.

Diagramma che mostra una coppia di canali mittente - destinatario esistente che utilizza TLS1.3 TLS_AES_256_GCM_SHA384 CipherSpec regolato in modo che il canale destinatario utilizzi AT - TLS invece di TLS IBM MQ .

Altri protocolli TLS e CipherSpecs possono essere utilizzati apportando modifiche minori alla configurazione. Altri tipi di canali di messaggi, a parte i canali mittente e ricevente del cluster, potrebbero essere utilizzati senza alcuna modifica alla configurazione AT - TLS.

Procedura

Passo 1: arresta il canale

Passo 2: crea e applica una politica AT - TLS

È necessario creare le seguenti istruzioni AT - TLS per questo scenario:
  1. Un'istruzione TTLSRule per far corrispondere le connessioni in entrata allo spazio di indirizzi dell'iniziatore di canali dall'indirizzo IP del canale mittente. In questo caso, è stato incluso un ulteriore filtro per la corrispondenza con un nome lavoro dell'iniziatore di canali specifico.
    
    TTLSRule                      REMOTE-TO-CSQ1
    {
      LocalAddr                   ALL
      LocalPortRange              1414
      RemoteAddr                  123.456.78.9
      Jobname                     CSQ1CHIN
      Direction                   INBOUND
      TTLSGroupActionRef          CSQ1-GROUP-ACTION 
      TTLSEnvironmentActionRef    CSQ1-INBOUND-ENVIRONMENT-ACTION
    }

    La regola precedente corrisponde alle connessioni provenienti dal lavoro CSQ1CHIN sulla porta locale 1414 dall'indirizzo IP remoto 123.456.78.9.

    Le opzioni di filtro più avanzate sono descritte in TTLSRule.

  2. Un'istruzione TTLSGroupAction che abilita la regola. TTLSRule fa riferimento al TTLSGroupAction utilizzando la proprietà TTLSGroupActionRef .
    
    TTLSGroupAction             CSQ1-GROUP-ACTION
    {
      TTLSEnabled               ON
    }
  3. Un'istruzione TTLSEnvironmentAction è associata a TTLSRule dalla proprietà TTLSEnvironmentActionRef . Un TTLSEnvironmentAction configura l'ambiente TLS e specifica quale keyring utilizzare.
    
    TTLSEnvironmentAction                 CSQ1-INBOUND-ENVIRONMENT-ACTION
    {
      HandshakeRole                       SERVER
      TTLSKeyringParmsRef                 CSQ1-KEYRING
      TTLSCipherParmsRef                  CSQ1-CIPHERPARM
      TTLSEnvironmentAdvancedParmsRef     CSQ1-ENVIRONMENT-ADVANCED
    }

    AT - TLS fornisce la possibilità di fornire l'autenticazione reciproca, che è l'equivalente dell'utilizzo dell'attributo del canale SSLCAUTH. Ciò avviene con una TTLSEnvironmentAction dichiarazione con un valore HandshakeRole di ServerWithClientAuth per la dichiarazione TTLSEnvironmentAction in entrata.

  4. Un'istruzione TTLSKeyringParms è associata a TTLSEnvironmentAction dalla proprietà TTLSKeyringParmsRef e definisce il keyring utilizzato da AT - TLS.
    Il key ring deve contenere i certificati ritenuti attendibili dal gestore code nonz/OS remoto. Questo anello di chiavi può essere definito allo stesso modo di un anello di chiavi usato dall'iniziatore del canale; vedere Configurazione del sistema z/OS per l'uso di TLS.
    
    TTLSKeyringParms            CSQ1-KEYRING
    {
      Keyring                   MQCHIN/CSQ1RING
    }
  5. Un'istruzione TTLSCipherParms associata a TTLSEnvironmentAction mediante la proprietà TTLSCipherParmsRef .
    Questa istruzione deve contenere un singolo nome suite di cifratura che deve essere l'equivalente del nome IBM MQ CipherSpec utilizzato nel canale mittente remoto.
    Nota: i nomi delle suite di cifratura AT - TLS non corrispondono necessariamente ai nomi IBM MQ CipherSpec . Tuttavia, è possibile trovare il nome della suite di cifratura AT - TLS che corrisponde a un nome IBM MQ CipherSpec ricercando il nome IBM MQ CipherSpec nella seguente tabella e facendo riferimento alla colonna di codice esadecimale con la colonna di caratteri espansi dalla Tabella 2 nell'argomento dell'istruzione TTLSCipherParms .
    Tabella 1. CipherSpecs su z/OS da IBM MQ for z/OS 9.2.0
    CipherSpec Protocollo Codice esadecimale Abilitato per impostazione predefinita.
    TLS_CHACHA20_POLY1305_SHA256 TLS 1.3 1303
    TLS_AES_256_GCM_SHA384 TLS 1.3 1302
    TLS_AES_128_GCM_SHA256 TLS 1.3 1301
    TLS_RSA_WITH_AES_256_GCM_SHA384 TLS 1.2 009D
    ECDHE_RSA_AES_256_GCM_SHA384 TLS 1.2 C030
    TLS_RSA_WITH_AES_256_CBC_SHA256 TLS 1.2 003D
    ECDHE_ECDSA_AES_256_CBC_SHA384 TLS 1.2 C024
    ECDHE_RSA_AES_256_CBC_SHA384 TLS 1.2 C028
    TLS_RSA_WITH_AES_128_GCM_SHA256 TLS 1.2 009C
    ECDHE_RSA_AES_128_GCM_SHA256 TLS 1.2 C02F
    TLS_RSA_WITH_AES_128_CBC_SHA256 TLS 1.2 003C
    ECDHE_ECDSA_AES_128_CBC_SHA256 TLS 1.2 C023
    ECDHE_RSA_AES_128_CBC_SHA256 TLS 1.2 C027
    TLS_RSA_WITH_NULL_SHA256 TLS 1.2 003B No
    TLS_RSA_WITH_AES_256_CBC_SHA TLS 1.0 0035 No
    TLS_RSA_WITH_AES_128_CBC_SHA TLS 1.0 002F No
    TLS_RSA_WITH_3DES_EDE_CBC_SHA TLS 1.0 000A No
    TLS_RSA_WITH_RC4_128_SHA TLS 1.0 0005 No
    TLS_RSA_WITH_DES_CBC_SHA TLS 1.0 0009 No
    TRIPLE_DES_SHA_US SSL v3 000A No
    RC4_SHA_US SSL v3 0005 No
    RC4_MD5_US SSL v3 0004 No
    DES_SHA_EXPORT SSL v3 0009 N
    RC4_MD5_EXPORT SSL v3 0003 No
    RC2_MD5_EXPORT SSL v3 0006 No
    NULL_SHA SSL v3 0002 No
    NULL_MD5 SSL v3 0001 No
    
    TTLSCipherParms             CSQ1-CIPHERPARM
    {
      V3CipherSuites            TLS_AES_256_GCM_SHA384
    }
    
  6. Una dichiarazione TTLSEnvironmentAdvancedParms è associata alla proprietà TTLSEnvironmentAction by the TTLSEnvironmentAdvancedParmsRef.
    Questa istruzione può essere utilizzata per specificare quali protocolli SSL e TLS sono abilitati. Con IBM MQ , è necessario abilitare solo il singolo protocollo che corrisponde al nome della suite di cifratura utilizzato nell'istruzione TTLSCipherParms .
    TTLSEnvironmentAdvancedParms CSQ1-ENVIRONMENT-ADVANCED
    {
      SSLv3          OFF
      TLSv1          OFF
      TLSv1.1        OFF
      SecondaryMap   OFF
      TLSv1.2        OFF
      TLSv1.3        ON
    }
    
La serie completa di istruzioni è la seguente e deve essere applicata all'agent della politica:

TTLSRule                      REMOTE-TO-CSQ1
{
  LocalAddr                   ALL
  LocalPortRange              1414
  RemoteAddr                  123.456.78.9  
  Jobname                     CSQ1CHIN
  Direction                   INBOUND
  TTLSGroupActionRef          CSQ1-GROUP-ACTION 
  TTLSEnvironmentActionRef    CSQ1-INBOUND-ENVIRONMENT-ACTION
}                                              

TTLSGroupAction             CSQ1-GROUP-ACTION
{
  TTLSEnabled               ON
} 

TTLSEnvironmentAction             CSQ1-INBOUND-ENVIRONMENT-ACTION
{
  HandshakeRole                   SERVER
  TTLSKeyringParmsRef             CSQ1-KEYRING
  TTLSCipherParmsRef              CSQ1-CIPHERPARM
  TTLSEnvironmentAdvancedParmsRef CSQ1-ENVIRONMENT-ADVANCED
}

TTLSKeyringParms            CSQ1-KEYRING
{
  Keyring                   MQCHIN/CSQ1RING
}

TTLSCipherParms             CSQ1-CIPHERPARM
{
  V3CipherSuites            TLS_AES_256_GCM_SHA384
}

TTLSEnvironmentAdvancedParms CSQ1-ENVIRONMENT-ADVANCED
{
  SSLv3          OFF
  TLSv1          OFF
  TLSv1.1        OFF
  SecondaryMap   OFF
  TLSv1.2        OFF
  TLSv1.3        ON
}  

Passo 3: rimuovi SSLCIPH dal canale z/OS

Rimuovere CipherSpec dal canale z/OS utilizzando il seguente comando:
ALTER CHANNEL(channel-name) CHLTYPE(RCVR) SSLCIPH(' ')

Passo 4: avvia canale

Una volta che il canale è stato avviato, utilizzerà una combinazione di AT - TLS e IBM MQ TLS.
Attenzione: le precedenti istruzioni AT - TLS sono solo una configurazione minima. Ci sono altre istruzioni della politica AT - TLS con AT - TLS che non sono qui documentate e che possono essere utilizzate con IBM MQ a seconda delle necessità. Tuttavia, IBM MQ è stato testato solo con le politiche descritte.