Autenticazione del traffico dell'endpoint di ubicazione
Tutto il traffico dell'endpoint è crittografato per impostazione predefinita. Tuttavia, è possibile scegliere di fornire i propri certificati per implementare l'autenticazione di origine e destinazione. Per gli endpoint TLS o HTTPS, nel flusso di richiesta dell'endpoint sono presenti due connessioni TLS che potrebbe essere necessario configurare. La prima comunicazione “ TLS ” avviene tra la sorgente e il servizio “ Satellite Link ”. La seconda fase della procedura di handshake TLS avviene tra il servizio Satellite Link e il server di destinazione. È possibile fornire i certificati per una o entrambe queste connessioni.
Se non si configura alcuna impostazione di autenticazione dell'endpoint, il traffico dell'endpoint è ancora crittografato, ma Satellite Link agisce solo come servizio di transito. Ciò vale anche per gli endpoint che utilizzano il protocollo TCP o HTTP. Per gli endpoint con protocollo TLS o HTTPS, il traffico che passa attraverso Satellite Link tenterà di utilizzare l'autenticazione semplice per impostazione predefinita, basandosi sui propri certificati integrati ben noti, che potrebbero essere sufficienti o meno.
Esaminare le seguenti opzioni di autenticazione.
- Autenticazione semplice tra il servizio Satellite Link e la destinazione
- Il server di destinazione si autentica con il servizio Satellite Link. Per configurare l'autenticazione semplice con la destinazione, il tuo endpoint deve avere come protocollo di destinazione TLS. Se il certificato del server di destinazione non è firmato da un'autorità di certificazione nota o non è autofirmato, è necessario configurare un certificato o una catena di CA affidabili per convalidare il certificato del server di destinazione.
- Autenticazione semplice con il servizio Satellite Link
- Il servizio Satellite Link si autentica alla sorgente. Per configurare l'autenticazione semplice con il servizio Satellite Link, è necessario impostare il protocollo di origine dell'endpoint su TLS o HTTPS. La configurazione del certificato dipende quindi dal tipo di destinazione dell'endpoint.
- Per gli endpoint con tipo di destinazione "cloud", è necessario fornire un certificato e una chiave del server che il servizio Satellite Link utilizzerà per autenticarsi con l'origine. Se il certificato del server non è firmato da un'autorità di firma nota, è necessario installare anche un certificato radice CA nell'ambiente di origine.
- Per gli endpoint con tipo di destinazione 'location', non è necessario configurare alcun certificato di servizio Satellite Link perché Satellite Link utilizza il proprio certificato firmato da DigiCert. I certificati DigiCert sono compatibili con tutti i browser e le piattaforme moderne, ma se il vostro sorgente non ha un certificato CA radice, dovrete scaricarne uno da DigiCert e installarlo nel vostro ambiente sorgente.
- Autenticazione reciproca tra Satellite Link e il server di destinazione
- Con l'autenticazione reciproca, il server di destinazione si autentica al servizio Satellite Link e il servizio Satellite Link deve autenticarsi alla destinazione. Per impostare l'autenticazione reciproca tra il servizio Satellite Link e il server di destinazione, è necessario configurare l'autenticazione del servizio Satellite Link come nel caso dell'autenticazione di destinazione semplice. Tuttavia, è necessario fornire anche un certificato e una chiave del client che il servizio Satellite Link utilizza per autenticarsi con la destinazione.
- Autenticazione reciproca tra la sorgente e il servizio Satellite Link
- Con l'autenticazione reciproca, il servizio Satellite Link si autentica alla sorgente e la sorgente deve autenticarsi al servizio Satellite Link. Per impostare l'autenticazione reciproca tra la sorgente e il servizio Satellite Link, è necessario configurare l'autenticazione del servizio Satellite Link come nel caso di autenticazione semplice della sorgente. Tuttavia, è necessario configurare anche un certificato CA che il servizio Satellite Link utilizza per convalidare il certificato client dell'origine.
- Autenticazione reciproca tra la sorgente e il servizio Satellite Link e tra Satellite Link e il server di destinazione
- Le richieste al servizio Satellite Link e al server di destinazione sono autenticate. Prima che il traffico venga autorizzato, è necessario verificare due handshake “ TLS ”. Per questa configurazione, creare un endpoint con protocollo di origine TLS o HTTPS e protocollo di destinazione TLS. Quindi, fornire i certificati necessari per i casi di autenticazione reciproca dell'origine e della destinazione, come descritto sopra.
Se scegli di fornire i tuoi propri certificati per l'autenticazione dell'endpoint, sei responsabile della rotazione dei certificati e della gestione delle date di scadenza. Se il certificato scade, il traffico viene interrotto.
Configurazione dell'autenticazione nella CLI
Le opzioni " source " si riferiscono alla procedura di handshake " TLS " tra la sorgente e il servizio " Satellite Link ". Le opzioni " dest " si riferiscono alla procedura di
handshake " TLS " tra il servizio " Satellite Link " e il server di destinazione. È possibile fornire i certificati per una o entrambe queste connessioni. Le impostazioni non specificate vengono impostate sui valori predefiniti.
Il comando ibmcloud sat endpoint authn viene utilizzato esclusivamente per configurare i certificati per il servizio Satellite Link, che funge da server sul lato di origine e da client sul lato di destinazione.
Potrebbe anche essere necessario configurare i certificati per l'origine (client) e la destinazione (server) nei rispettivi ambienti applicativi.
Esamina i seguenti scenari di esempio.
Autenticazione semplice tra il servizio Satellite Link e la destinazione
-
Creare un endpoint HTTPS a un server HTTPS.
ibmcloud sat endpoint create --location ID \ --name myEndpoint \ --dest-hostname example.com \ --dest-port 443 \ --source-protocol HTTPS \ --dest-type location -
Configurare un collegamento semplice di tipo “ TLS ” con il server di destinazione.
Questo esempio fornisce il certificato della CA attendibile per convalidare il certificato del server di destinazione.
ibmcloud sat endpoint authn set \ --location ID \ --endpoint myEndpoint \ --dest-tls-mode simple \ --dest-ca-cert-file /path/to/serverCACerts.pem -
Prima che i tuoi certificati scadano, ruotali sostituendo i certificati di autenticazione esistenti con quelli nuovi. Vengono sostituiti solo i certificati specificati dall'utente.
ibmcloud sat endpoint authn rotate \ --location ID \ --endpoint myEndpoint \ --dest-ca-cert-file /path/to/serverCACerts.pem
Autenticazione semplice con il servizio Satellite Link
A differenza della maggior parte delle configurazioni, che possono funzionare con un endpoint --dest-type di location o cloud, questa deve usare --dest-type cloud perché non è supportata
l'impostazione dei certificati di origine per gli endpoint di destinazione della posizione.
-
Creare un endpoint HTTPS a un server HTTP.
ibmcloud sat endpoint create \ --location ID \ --name myEndpoint \ --dest-hostname example.com \ --dest-port 80 \ --dest-protocol TCP \ --source-protocol HTTPS \ --dest-type cloud -
Configurare un semplice servizio " TLS " tra la sorgente e il servizio " Satellite Link ".
Questo esempio fornisce il certificato del server per il servizio Satellite Link per l'autenticazione con la sorgente.
ibmcloud sat endpoint authn set \ --location ID \ --endpoint myEndpoint \ --source-tls-mode simple \ --source-cert-file /path/to/serverCertificate.pem \ --source-key-file /path/to/serverKey.pem -
Prima che i tuoi certificati scadano, ruotali sostituendo i certificati di autenticazione esistenti con quelli nuovi. Vengono sostituiti solo i certificati specificati dall'utente.
ibmcloud sat endpoint authn rotate \ --location ID \ --endpoint myEndpoint \ --source-cert-file /path/to/serverCertificate.pem \ --source-key-file /path/to/serverKey.pem
Autenticazione reciproca tra il servizio Satellite Link e la destinazione
-
Creare un endpoint HTTP a un server HTTPS.
ibmcloud sat endpoint create \ --location ID \ --name myEndpoint \ --dest-hostname example.com \ --dest-port 443 \ --dest-protocol TLS \ --source-protocol HTTP \ --dest-type location -
Configurare l' TLS o reciproco con il server di destinazione.
Analogamente all'esempio di autenticazione semplice,
--dest-ca-cert-fileconvalida il certificato del server di destinazione. Per eseguire la procedura di handshake con autenticazione reciproca ( TLS ), vengono utilizzati i protocolli--dest-cert-filee--dest-key-file.ibmcloud sat endpoint authn set \ --location ID \ --endpoint myEndpoint \ --dest-tls-mode mutual \ --dest-cert-file /path/to/clientCertificate.pem \ --dest-key-file /path/to/clientKey.pem \ --dest-ca-cert-file /path/to/serverCACerts.pem -
Prima che i tuoi certificati scadano, ruotali sostituendo i certificati di autenticazione esistenti con quelli nuovi. Vengono sostituiti solo i certificati specificati dall'utente.
ibmcloud sat endpoint authn rotate \ --location ID \ --endpoint myEndpoint \ --dest-cert-file /path/to/clientCertificate.pem \ --dest-key-file /path/to/clientKey.pem \ --dest-ca-cert-file /path/to/serverCACerts.pem
Autenticazione reciproca tra la sorgente e il servizio Satellite Link
A differenza della maggior parte delle configurazioni, che possono funzionare con un endpoint --dest-type di location o cloud, questa deve usare --dest-type cloud perché non è supportata
l'impostazione dei certificati di origine per gli endpoint di destinazione della posizione.
-
Creare un endpoint HTTPS a un server HTTP.
ibmcloud sat endpoint create \ --location ID \ --name myEndpoint \ --dest-hostname example.com \ --dest-port 80 \ --dest-protocol TCP \ --source-protocol HTTPS \ --dest-type cloud -
Configurare l' TLS e reciproca tra la sorgente e il servizio Satellite Link.
Questo esempio fornisce il certificato del server per il servizio Satellite Link per autenticarsi con la sorgente e il certificato della CA fidata per convalidare il certificato del client della sorgente.
ibmcloud sat endpoint authn set \ --location ID \ --endpoint myEndpoint \ --source-tls-mode mutual \ --source-cert-file /path/to/serverCertificate.pem \ --source-key-file /path/to/serverKey.pem \ --source-ca-cert-file /path/to/clientCACerts.pem -
Prima che i tuoi certificati scadano, ruotali sostituendo i certificati di autenticazione esistenti con quelli nuovi. Vengono sostituiti solo i certificati specificati dall'utente.
ibmcloud sat endpoint authn rotate \ --location ID \ --endpoint myEndpoint \ --source-cert-file /path/to/serverCertificate.pem \ --source-key-file /path/to/serverKey.pem \ --source-ca-cert-file /path/to/clientCACerts.pem
Autenticazione reciproca all'origine e alla destinazione
-
Creare un endpoint HTTPS a un server HTTPS.
ibmcloud sat endpoint create \ --location ID \ --name myEndpoint \ --dest-hostname example.com \ --dest-port 443 \ --source-protocol HTTPS \ --dest-type location -
Configurare l'autenticazione reciproca TLS sia con il server di origine che con quello di destinazione.
Questo esempio consente l'autenticazione reciproca tra la sorgente e il servizio Satellite Link e tra il servizio Satellite Link e il server di destinazione.
ibmcloud sat endpoint authn set \ --location ID \ --endpoint myEndpoint \ --source-tls-mode mutual \ --source-ca-cert-file /path/to/clientCACerts.pem \ --dest-tls-mode mutual \ --dest-cert-file /path/to/clientCertificate.pem \ --dest-key-file /path/to/clientKey.pem \ --dest-ca-cert-file /path/to/serverCACerts.pem -
Prima che i tuoi certificati scadano, ruotali sostituendo i certificati di autenticazione esistenti con quelli nuovi. Vengono sostituiti solo i certificati specificati dall'utente.
ibmcloud sat endpoint authn rotate \ --location ID \ --endpoint myEndpoint \ --source-ca-cert-file /path/to/clientCACerts.pem \ --dest-cert-file /path/to/clientCertificate.pem \ --dest-key-file /path/to/clientKey.pem \ --dest-ca-cert-file /path/to/serverCACerts.pem
Visualizzazione delle impostazioni di autenticazione
Il comando ibmcloud sat endpoint authn get può essere usato per visualizzare le impostazioni di autenticazione configurate per l'endpoint. Ad esempio, è possibile utilizzare il seguente comando per visualizzare le modalità e i certificati
di " TLS " attualmente configurati per l'endpoint myEndpoint.
ibmcloud sat endpoint authn get --location ID --endpoint myEndpoint
Assumendo che myEndpoint sia configurato come mostrato nell'esempio di autenticazione reciproca di origine e destinazione, questo comando produrrà un output simile al seguente.
OK
Destination TLS Mode: mutual
Destination Certificate: /path/to/clientCertificate.pem
Destination Key: /path/to/clientKey.pem
Destination CA Certificates: /path/to/serverCACerts.pem
Source TLS Mode: mutual
Source Certificate: -
Source Key: -
Source CA Certificates: /path/to/clientCACerts.pem
Rimozione dei certificati
Il comando ibmcloud sat endpoint authn set può essere usato per rimuovere uno o più certificati esistenti. Il comando set rimuove tutti i certificati diversi da quelli specificati nelle opzioni del comando. Ad esempio, il comando
seguente rimuove tutti i certificati attualmente configurati per l'endpoint myEndpoint.
ibmcloud sat endpoint authn set --location ID --endpoint myEndpoint
Se si desidera rimuovere solo alcuni certificati, lasciandone altri invariati, assicurarsi di passare le opzioni con i valori correnti degli altri certificati. Ad esempio, il comando seguente può essere utilizzato per rimuovere i certificati
source attualmente impostati, lasciando invariati i certificati dest.
ibmcloud sat endpoint authn set \
--location ID \
--endpoint myEndpoint \
--dest-tls-mode mutual \
--dest-cert-file /path/to/current/clientCertificate.pem \
--dest-key-file /path/to/current/clientKey.pem \
--dest-ca-cert-file /path/to/current/serverCACerts.pem