Cette page a été traduite par l'API Cloud Translation.
Switch to English

Sécuriser les connexions à l'aide de TLS

Cette page explique comment créer une instance Redis faisant appel au protocole TLS, et fournit des instructions sur les tâches requises pour gérer une instance Redis où TLS est activé.

Pour plus d'informations sur le comportement général et les avantages de TLS, consultez la page Chiffrement TLS.

Pour obtenir la liste des autorisations dont l'utilisateur a besoin pour effectuer les tâches de gestion sur cette page, consultez la section Autorisations TLS.

Créer une instance Redis avec TLS

Console

Sélectionnez Activer Transport Layer Security (TLS) lors de la création d'une instance Redis.

gcloud

Pour créer une instance Redis dotée de TLS, saisissez la commande suivante, en remplaçant variables par les valeurs appropriées :

gcloud beta redis instances create instance-id --transit-encryption-mode=SERVER_AUTHENTICATION --size=size --region=region-id

Où :

  • --transit-encryption-mode=SERVER_AUTHENTICATION active TLS sur votre instance.

Télécharger l'autorité de certification

Console

  1. Accédez à la page Memorystore pour Redis dans Cloud Console.

    Memorystore pour Redis

  2. Affichez la page Détails de l'instance en cliquant sur votre ID d'instance.

  3. Cliquez sur le bouton Télécharger ou Tout télécharger sous Certificat du serveur TLS.

gcloud

Si TLS est activé sur votre instance, le contenu de l'autorité de certification s'affiche lorsque vous exécutez la commande suivante :

gcloud beta redis instances describe instance-id --region=region

Le corps de la réponse inclura toutes les autorités de certification applicables. Voici un exemple d'autorité de certification (CA) pour Memorystore pour Redis:

-----BEGIN CERTIFICATE-----
MIIDnTCCAoWgAwIBAgIBADANBgkqhkiG9w0BAQsFADCBhTEtMCsGA1UELhMkNzYx
NTc4OGMtMTI2Yi00Nzk0LWI2MWMtY2YxOWE2Y2Y1ZjNiMTEwLwYDVQQDEyhHb29n
bGUgQ2xvdWQgTWVtb3J5c3RvcmUgUmVkaXMgU2VydmVyIENBMRQwEgYDVQQKEwtH
b29nbGUsIEluYzELMAkGA1UEBhMCVVMwHhcNMjAwOTE3MjEzNDE1WhcNMzAwOTE1
MjEzNTE1WjCBhTEtMCsGA1UELhMkNzYxNTc4OGMtMTI2Yi00Nzk0LWI2MWMtY2Yx
OWE2Y2Y1ZjNiMTEwLwYDVQQDEyhHb29nbGUgQ2xvdWQgTWVtb3J5c3RvcmUgUmVk
aXMgU2VydmVyIENBMRQwEgYDVQQKEwtHb29nbGUsIEluYzELMAkGA1UEBhMCVVMw
ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCyDKmDHZm6tzMhNtKOnp8H
8+zTv1qA6OkBToVqCjKTTMGO18ovNtAAMjbGvclLuJNLbA2WTTWVttHen6Cn82h0
3gG9HMk9AwK1cVT7gW072h++TRsYddIRlwnSweRWL8jUX+PNt7CjFqH+sma/Hb1m
CktHdBOa897JiYHrMVNTcpS8SFwwz05yHUTEVGlHdkvlaJXfHLe6keCMABLyjaMh
1Jl4gZI2WqLMV680pJusK6FI6q/NmqENFc9ywMEg395lHTK9w9e014WIXg0q7sU3
84ChVVS2yYOMEUWeov4Qx6XeVfA4ss5t7OCqsMQkvslkE90mJZcVvhBj3QvTH9Rz
AgMBAAGjFjAUMBIGA1UdEwEB/wQIMAYBAf8CAQAwDQYJKoZIhvcNAQELBQADggEB
AJkn+MDE4V10DZn4uEc0s0Mg4FEMC1fDewmDYwSNnxRlzfEi+wAX2AaqrJ4m4Qa7
xIyuSYxArEOY6QeyJyw7/06dom8aAv4aO2p8hE04Ih6QwaTMFIlT2Jf6TidVd3eT
wfjwFJVoJ+dgxsaCv2uMFZWee5aRHmKzj9LhqPwpWnTs9Q/qmOheUNoe2/1i8yvn
662M7RZMR7fZH6ETsdz5w1nPXXiRqJ7K0EGKoPNjMlYK3/U1X3sazI4tpMNgTdxG
rnNh9Sd9REMBmDCPj9dUI9k4hQX4yQZp96fnLT6cet22OPajEKnpzyqJs1s4iX/g
lEtWs4V/YBhKA56CW6ASZS8=
-----END CERTIFICATE-----

Copiez et enregistrez temporairement toutes les autorités de certification afin de pouvoir les installer sur les clients accédant à l'instance Redis.

Installer une autorité de certification sur votre client

Vous devez installer l'autorité de certification de votre instance Redis sur le client connecté. L'installation de l'autorité de certification peut varier en fonction du type de client. Les étapes ci-dessous expliquent comment installer une autorité de certification sur une VM Compute Engine Linux.

  1. Connectez-vous en SSH à votre client Linux Compute Engine. Ce client doit se trouver dans la même région que l'instance Redis pour pouvoir vous y connecter.

  2. Créez un fichier nommé server_ca.pem sur votre client en exécutant la commande suivante :

    sudo vim /tmp/server_ca.pem
    
  3. Téléchargez l'autorité de certification et collez-la dans le fichier server_ca.pem créé précédemment.

    Le format de l'autorité de certification doit être correct :

    • Copiez l'intégralité de l'autorité de certification, y compris les lignes -----BEGIN CERTIFICATE----- et -----END CERTIFICATE-----.
    • Assurez-vous que le texte de l'autorité de certification est complètement justifié. Il ne doit pas y avoir d'espace devant une ligne de l'autorité de certification.

Configurer votre client pour TLS

Le client avec lequel vous vous connectez à l'instance Redis doit être compatible avec le protocole TLS ou utiliser un side-car tiers pour activer la compatibilité TLS.

Si votre client est compatible avec le protocole TLS, configurez-le pour qu'il pointe vers l'adresse IP de votre instance Redis, le port 6378 et le fichier contenant l'autorité de certification. Si vous choisissez d'utiliser un side-car, nous vous recommandons d'utiliser Stunnel.

Configuration supplémentaire du client

Certains clients n'acceptent pas les certificats autosignés par défaut et nécessitent une configuration supplémentaire.

Par exemple, Letuce est un client Java populaire pour Redis. La documentation de ce dernier fournit un exemple de connexion native à TLS (voir l'exemple 47). Étant donné que le gestionnaire de sécurité Java n'autorise pas par défaut les certificats autosignés, une option supplémentaire doit être spécifiée dans la construction de l'URI Redis .withVerifyPeer(false).

Se connecter en toute sécurité à une instance Redis à l'aide de Stunnel et de telnet

Pour obtenir des instructions sur l'utilisation de Stunnel afin d'activer le protocole TLS sur un client Compute Engine, consultez la section Se connecter en toute sécurité à une instance Redis à l'aide de Stunnel et de telnet.

Gérer la rotation de l'autorité de certification

Vous devez installer toutes les autorités de certification téléchargeables sur les clients accédant à l'instance Redis.

L'installation de la nouvelle autorité de certification, en plus de l'autorité de certification précédente une fois disponible, est le moyen le plus simple de vous assurer que vous disposez de l'autorité de certification nécessaire lorsque l'événement de rotation de l'autorité de certification se produit.

Une fois qu'une nouvelle autorité de certification a été ajoutée, exécutez la commande suivante pour afficher son contenu :

gcloud beta instances describe instance-id --region=region

Ensuite, copiez et collez l'autorité de certification la plus récente dans le fichier de votre client où vous avez enregistré l'autorité de certification précédente.

Le fichier doit respecter le format suivant : L'ordre des autorités de certification n'a pas d'importance :

-----BEGIN CERTIFICATE-----
MIIDnTCCAoWgAwIBAgIBADANBgkqhkiG9w0BAQsFADCBhTEtMCsGA1UELhMkNzYx
NTc4OGMtMTI2Yi00Nzk0LWI2MWMtY2YxOWE2Y2Y1ZjNiMTEwLwYDVQQDEyhHb29n
bGUgQ2xvdWQgTWVtb3J5c3RvcmUgUmVkaXMgU2VydmVyIENBMRQwEgYDVQQKEwtH
b29nbGUsIEluYzELMAkGA1UEBhMCVVMwHhcNMjAwOTE3MjEzNDE1WhcNMzAwOTE1
MjEzNTE1WjCBhTEtMCsGA1UELhMkNzYxNTc4OGMtMTI2Yi00Nzk0LWI2MWMtY2Yx
OWE2Y2Y1ZjNiMTEwLwYDVQQDEyhHb29nbGUgQ2xvdWQgTWVtb3J5c3RvcmUgUmVk
aXMgU2VydmVyIENBMRQwEgYDVQQKEwtHb29nbGUsIEluYzELMAkGA1UEBhMCVVMw
ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCyDKmDHZm6tzMhNtKOnp8H
8+zTv1qA6OkBToVqCjKTTMGO18ovNtAAMjbGvclLuJNLbA2WTTWVttHen6Cn82h0
3gG9HMk9AwK1cVT7gW072h++TRsYddIRlwnSweRWL8jUX+PNt7CjFqH+sma/Hb1m
CktHdBOa897JiYHrMVNTcpS8SFwwz05yHUTEVGlHdkvlaJXfHLe6keCMABLyjaMh
1Jl4gZI2WqLMV680pJusK6FI6q/NmqENFc9ywMEg395lHTK9w9e014WIXg0q7sU3
84ChVVS2yYOMEUWeov4Qx6XeVfA4ss5t7OCqsMQkvslkE90mJZcVvhBj3QvTH9Rz
AgMBAAGjFjAUMBIGA1UdEwEB/wQIMAYBAf8CAQAwDQYJKoZIhvcNAQELBQADggEB
AJkn+MDE4V10DZn4uEc0s0Mg4FEMC1fDewmDYwSNnxRlzfEi+wAX2AaqrJ4m4Qa7
xIyuSYxArEOY6QeyJyw7/06dom8aAv4aO2p8hE04Ih6QwaTMFIlT2Jf6TidVd3eT
wfjwFJVoJ+dgxsaCv2uMFZWee5aRHmKzj9LhqPwpWnTs9Q/qmOheUNoe2/1i8yvn
662M7RZMR7fZH6ETsdz5w1nPXXiRqJ7K0EGKoPNjMlYK3/U1X3sazI4tpMNgTdxG
rnNh9Sd9REMBmDCPj9dUI9k4hQX4yQZp96fnLT6cet22OPajEKnpzyqJs1s4iX/g
lEtWs4V/YBhKA56CW6ASZS8=
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIDnTCCAoWgAwIBAgIBADANBgkqhkiG9w0BAQsFADCBhTEtMCsGA1UELhMkYjg4
ZTUzYTMtODdmNC00N2VhLWJjN2MtYTdhMzM4NmIwZmU4MTEwLwYDVQQDEyhHb29n
bGUgQ2xvdWQgTWVtb3J5c3RvcmUgUmVkaXMgU2VydmVyIENBMRQwEgYDVQQKEwtH
b29nbGUsIEluYzELMAkGA1UEBhMCVVMwHhcNMjAwOTE4MjEzMTI3WhcNMzAwOTE2
MjEzMjI3WjCBhTEtMCsGA1UELhMkYjg4ZTUzYTMtODdmNC00N2VhLWJjN2MtYTdh
MzM4NmIwZmU4MTEwLwYDVQQDEyhHb29nbGUgQ2xvdWQgTWVtb3J5c3RvcmUgUmVk
aXMgU2VydmVyIENBMRQwEgYDVQQKEwtHb29nbGUsIEluYzELMAkGA1UEBhMCVVMw
ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDEO4Zs/So5DA6wtftkAElD
8BVREob4gby2mGBYAtd3JJQKFC+zIqCf2DhrWihrCeXhsdsZqJUF16E3MsCCWS2T
UWt6T37zObU2fzKmb7X+TSw1tunIUcIXwWzoMhqdGrIvfI9guMbF+KssQIjDMs9M
G/hY6cY1NB5THOxXqcxzYrwSKB1EE160EDz4RgKAYQhw7AyVOBBAbWqA5pTEDuUy
qpsz+NFpKYTwaeTpzil0xIl0JJS3DOd4G7ZnMG2wFT2j3wt+P0SkAPuOWgmX82iO
gGmKoaCh3KcICie/rZRTfsRPjMm+yswRQRDeLB5eoMmH+gbUInVZU0qOJ/7gOYEb
AgMBAAGjFjAUMBIGA1UdEwEB/wQIMAYBAf8CAQAwDQYJKoZIhvcNAQELBQADggEB
AF4xlEbwLUK5VjoKlJBtKXLYrYcW+AbQLhZQFP8exE8bOW7p39h+5J0nl3ItPxu6
97BCt1P5TFisba8pBxaExiDsYmjKQrhtizMkzl5h9hGksOgoLlAqaaxfA97+Q9Tq
5gaYChESur/159Z3jiM47obKoZmHfgSgr//7tjII7yZxUGhOjIVffv/fEa4aixqM
0yH1V1s8hWHZeui2VFrHmTxY20IH9ktyedjSUgnFXzsEH6sbR18p0wBZqyrrtURs
DaUIeoOHfHgEJM8k/wphSJI0V6pMC6nax2JhexLTRiUsiGTLRDe3VtsdWqS2DLa9
9DmrfdF0eFrfWw3VRNLwwXg=
-----END CERTIFICATE-----

Pour vous assurer que vous disposez de l'autorité de certification requise, vous devez vous assurer que les autorités de certification enregistrées dans votre fichier client correspondent à celles affichées par gcloud redis instances describe. Une fois qu'un événement de rotation a commencé, il existe plusieurs autorités de certification pour garantir un délai suffisant pour les rotations avec un temps d'arrêt minimal.

Étape suivante