Introduction
Ce document décrit comment configurer la préférence pour le PFS (Perfect Forward Secrecy) dans les connexions chiffrées TLS (Transport Layer Security) sur l'appliance de sécurité de la messagerie (ESA).
Conditions préalables
Exigences
Cisco recommande que vous ayez une bonne connaissance des protocoles SSL (Secure Sockets Layer)/TLS.
Composants utilisés
Les informations contenues dans ce document sont basées sur AsyncOS for Email version 9.6 et ultérieures.
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.
Informations générales
L'ESA n'offre pas le secret de transmission (PFS). Le secret de transmission signifie que les données sont transférées via un canal qui utilise un cryptage symétrique avec des secrets éphémères, et même si la clé privée (clé à long terme) sur l'un des hôtes ou les deux a été compromise, il n'est pas possible de décrypter une session précédemment enregistrée.
Le secret n'est pas transféré par le canal, mais le secret partagé est dérivé avec un problème mathématique (Diffie Hellman (DH) Problem). Le secret n'est stocké nulle part ailleurs que dans la mémoire vive (RAM) des hôtes pendant le délai d'expiration de la session établie ou de la régénération de clé.
ESA prend en charge DH pour l'échange de clés.
Configurer
ENTRANT - ESA fait office de serveur TLS
Ces suites de chiffrement sont disponibles sur l'ESA pour le trafic SMTP (Simple Mail Transfer Protocol) entrant qui fournit le secret de transmission. Dans cet exemple, la sélection de chiffrement autorise uniquement les suites de chiffrement considérées comme ÉLEVÉES ou MOYENNES et utilise EDH (Ephemeral Diffie Hellman) pour l'échange de clés et préfère TLSv1.2. La syntaxe de sélection du chiffrement suit la syntaxe OpenSSL.
Chiffres avec transfert secret sur AsyncOS 9.6+ :
"EDH+TLSv1.2:EDH+HIGH:EDH+MEDIUM:!LOW:!EXP:!aNULL:!RC4:!DSS:!SEED:!IDEA:!MD5:!PSK:!3DES:!SRP"
List:
DHE-RSA-AES256-GCM-SHA384 TLSv1.2 Kx=DH Au=RSA Enc=AESGCM(256) Mac=AEAD
DHE-RSA-AES256-SHA256 TLSv1.2 Kx=DH Au=RSA Enc=AES(256) Mac=SHA256
DHE-RSA-AES128-GCM-SHA256 TLSv1.2 Kx=DH Au=RSA Enc=AESGCM(128) Mac=AEAD
DHE-RSA-AES128-SHA256 TLSv1.2 Kx=DH Au=RSA Enc=AES(128) Mac=SHA256
DHE-RSA-AES256-SHA SSLv3 Kx=DH Au=RSA Enc=AES(256) Mac=SHA1
DHE-RSA-CAMELLIA256-SHA SSLv3 Kx=DH Au=RSA Enc=Camellia(256) Mac=SHA1
DHE-RSA-AES128-SHA SSLv3 Kx=DH Au=RSA Enc=AES(128) Mac=SHA1
DHE-RSA-CAMELLIA128-SHA SSLv3 Kx=DH Au=RSA Enc=Camellia(128) Mac=SHA1
La section Kx (= Key Exchange) indique que DH est utilisé pour dériver le secret.
L'ESA prend en charge ces chiffrements avec les paramètres sslconfig par défaut (:ALL), mais ne le préfère pas. Si vous préférez les chiffrements qui offrent PFS, vous devez modifier votre sslconfig et ajouter EDH ou une combinaison EDH+<nom du chiffrage ou du groupe de chiffrage> à votre sélection de chiffrage.
Configuration par défaut :
ESA> sslconfig
sslconfig settings:
Inbound SMTP method: tlsv1/tlsv1.2
Inbound SMTP ciphers:
RC4-SHA
RC4-MD5
ALL
Nouvelle configuration :
ESA> sslconfig
Inbound SMTP method: tlsv1/tlsv1.2
Inbound SMTP ciphers:
EDH+TLSv1.2
EDH+HIGH
EDH+MEDIUM
RC4-SHA
RC4-MD5
ALL
Note : RC4 en tant que chiffrement et MD5 en tant que MAC sont considérés comme faibles, hérités et afin d'éviter l'utilisation avec SSL/TLS, en particulier quand il s'agit d'un volume de données plus élevé sans régénération de clé.
Paramètres sslconfig recommandés pour INBOUND
C'est une opinion dominante et de n'autoriser que les chiffrements qui sont généralement considérés comme forts et sécurisés.
Une configuration recommandée pour INBOUND qui supprime RC4 et MD5 ainsi que d'autres options héritées et faibles, à savoir Exporter (EXP), Faible (LOW), IDEA (IDEA), SEED (SEED), Chiffres 3DES (3DES), Certificats DSS (DSS), Échange de clé anonyme (aNULL), Clés pré-partagées (PSK), Protocole SRP (SRP), désactive Elliptic Curve Diffie Hellman (ECDH) pour l'échange de clé et Elliptic Curve Digital Signature Algorithm (ECDSA) sont les exemples :
EDH+TLSv1.2:EDH+HIGH:EDH+MEDIUM:HIGH:MEDIUM:!ECDH:!ECDSA:!LOW:!EXP:!aNULL:!RC4:!DSS:!SEED:!IDEA:!MD5:!PSK:!3DES:!SRP
La chaîne entrée dans sslconfig donne cette liste de chiffrements pris en charge pour INBOUND :
DHE-RSA-AES256-GCM-SHA384 TLSv1.2 Kx=DH Au=RSA Enc=AESGCM(256) Mac=AEAD
DHE-RSA-AES256-SHA256 TLSv1.2 Kx=DH Au=RSA Enc=AES(256) Mac=SHA256
DHE-RSA-AES128-GCM-SHA256 TLSv1.2 Kx=DH Au=RSA Enc=AESGCM(128) Mac=AEAD
DHE-RSA-AES128-SHA256 TLSv1.2 Kx=DH Au=RSA Enc=AES(128) Mac=SHA256
DHE-RSA-AES256-SHA SSLv3 Kx=DH Au=RSA Enc=AES(256) Mac=SHA1
DHE-RSA-CAMELLIA256-SHA SSLv3 Kx=DH Au=RSA Enc=Camellia(256) Mac=SHA1
DHE-RSA-AES128-SHA SSLv3 Kx=DH Au=RSA Enc=AES(128) Mac=SHA1
DHE-RSA-CAMELLIA128-SHA SSLv3 Kx=DH Au=RSA Enc=Camellia(128) Mac=SHA1
AES256-GCM-SHA384 TLSv1.2 Kx=RSA Au=RSA Enc=AESGCM(256) Mac=AEAD
AES256-SHA256 TLSv1.2 Kx=RSA Au=RSA Enc=AES(256) Mac=SHA256
AES256-SHA SSLv3 Kx=RSA Au=RSA Enc=AES(256) Mac=SHA1
CAMELLIA256-SHA SSLv3 Kx=RSA Au=RSA Enc=Camellia(256) Mac=SHA1
AES128-GCM-SHA256 TLSv1.2 Kx=RSA Au=RSA Enc=AESGCM(128) Mac=AEAD
AES128-SHA256 TLSv1.2 Kx=RSA Au=RSA Enc=AES(128) Mac=SHA256
AES128-SHA SSLv3 Kx=RSA Au=RSA Enc=AES(128) Mac=SHA1
CAMELLIA128-SHA SSLv3 Kx=RSA Au=RSA Enc=Camellia(128) Mac=SHA1
Remarque : l'ESA qui agit en tant que serveur TLS (trafic ENTRANT) ne prend actuellement pas en charge les certificats ECDHE (Elliptic Curve Diffie Hellman for Key Exchange) et ECDSA.
SORTANT - ESA agit comme client TLS
Pour le trafic SMTP SORTANT, l'ESA prend en charge les certificats ECDHE et ECDSA en plus des certificats ENTRANTS.
Remarque : les certificats ECC (Elliptic Curve Cryptography) avec l'ECDSA ne sont pas largement adoptés.
Lorsqu'un e-mail SORTANT est envoyé, l'ESA est le client TLS. Un certificat client TLS est facultatif. Si le serveur TLS ne force pas (n'exige pas) l'ESA (en tant que client TLS) afin de fournir un certificat client ECDSA, l'ESA peut continuer avec une session sécurisée ECDSA. Lorsque le ESA en tant que client TLS est invité à fournir son certificat, il fournit le certificat RSA configuré pour la direction OUTBOUND.
Attention : le magasin de certificats CA de confiance préinstallé (liste système) sur l'ESA n'inclut pas les certificats racine ECC (ECDSA) ! Vous devrez peut-être ajouter manuellement des certificats racine ECC (en qui vous avez confiance) à la liste personnalisée afin de rendre la chaîne de confiance ECC vérifiable.
Afin de préférer les chiffrements DHE/ECDHE qui offrent le secret de transmission, vous pouvez modifier la sélection de chiffrement sslconfig comme suit.
Ajoutez-le à votre sélection de chiffrement actuelle.
"EDH+TLSv1.2:ECDH+TLSv1.2:EDH+HIGH:EDH+MEDIUM:ECDH+HIGH:ECDH+MEDIUM"
Paramètres sslconfig recommandés pour OUTBOUND
C'est une opinion dominante et de n'autoriser que les chiffrements qui sont généralement considérés comme forts et sécurisés.
EDH+TLSv1.2:ECDH+TLSv1.2:EDH+HIGH:EDH+MEDIUM:ECDH+HIGH:ECDH+MEDIUM:HIGH:MEDIUM:!LOW:!EXP:!aNULL:!RC4:!DSS:!SEED:!IDEA:!MD5:!PSK:!3DES:!SRP
La chaîne entrée dans sslconfig aboutit à cette liste de chiffrements pris en charge pour OUTBOUND :
DHE-RSA-AES256-GCM-SHA384 TLSv1.2 Kx=DH Au=RSA Enc=AESGCM(256) Mac=AEAD
DHE-RSA-AES256-SHA256 TLSv1.2 Kx=DH Au=RSA Enc=AES(256) Mac=SHA256
DHE-RSA-AES128-GCM-SHA256 TLSv1.2 Kx=DH Au=RSA Enc=AESGCM(128) Mac=AEAD
DHE-RSA-AES128-SHA256 TLSv1.2 Kx=DH Au=RSA Enc=AES(128) Mac=SHA256
ECDHE-RSA-AES256-GCM-SHA384 TLSv1.2 Kx=ECDH Au=RSA Enc=AESGCM(256) Mac=AEAD
ECDHE-ECDSA-AES256-GCM-SHA384 TLSv1.2 Kx=ECDH Au=ECDSA Enc=AESGCM(256) Mac=AEAD
ECDHE-RSA-AES256-SHA384 TLSv1.2 Kx=ECDH Au=RSA Enc=AES(256) Mac=SHA384
ECDHE-ECDSA-AES256-SHA384 TLSv1.2 Kx=ECDH Au=ECDSA Enc=AES(256) Mac=SHA384
ECDHE-RSA-AES128-GCM-SHA256 TLSv1.2 Kx=ECDH Au=RSA Enc=AESGCM(128) Mac=AEAD
ECDHE-ECDSA-AES128-GCM-SHA256 TLSv1.2 Kx=ECDH Au=ECDSA Enc=AESGCM(128) Mac=AEAD
ECDHE-RSA-AES128-SHA256 TLSv1.2 Kx=ECDH Au=RSA Enc=AES(128) Mac=SHA256
ECDHE-ECDSA-AES128-SHA256 TLSv1.2 Kx=ECDH Au=ECDSA Enc=AES(128) Mac=SHA256
DHE-RSA-AES256-SHA SSLv3 Kx=DH Au=RSA Enc=AES(256) Mac=SHA1
DHE-RSA-CAMELLIA256-SHA SSLv3 Kx=DH Au=RSA Enc=Camellia(256) Mac=SHA1
DHE-RSA-AES128-SHA SSLv3 Kx=DH Au=RSA Enc=AES(128) Mac=SHA1
DHE-RSA-CAMELLIA128-SHA SSLv3 Kx=DH Au=RSA Enc=Camellia(128) Mac=SHA1
ECDHE-RSA-AES256-SHA SSLv3 Kx=ECDH Au=RSA Enc=AES(256) Mac=SHA1
ECDHE-ECDSA-AES256-SHA SSLv3 Kx=ECDH Au=ECDSA Enc=AES(256) Mac=SHA1
ECDHE-RSA-AES128-SHA SSLv3 Kx=ECDH Au=RSA Enc=AES(128) Mac=SHA1
ECDHE-ECDSA-AES128-SHA SSLv3 Kx=ECDH Au=ECDSA Enc=AES(128) Mac=SHA1
AES256-GCM-SHA384 TLSv1.2 Kx=RSA Au=RSA Enc=AESGCM(256) Mac=AEAD
AES256-SHA256 TLSv1.2 Kx=RSA Au=RSA Enc=AES(256) Mac=SHA256
AES256-SHA SSLv3 Kx=RSA Au=RSA Enc=AES(256) Mac=SHA1
CAMELLIA256-SHA SSLv3 Kx=RSA Au=RSA Enc=Camellia(256) Mac=SHA1
AES128-GCM-SHA256 TLSv1.2 Kx=RSA Au=RSA Enc=AESGCM(128) Mac=AEAD
AES128-SHA256 TLSv1.2 Kx=RSA Au=RSA Enc=AES(128) Mac=SHA256
AES128-SHA SSLv3 Kx=RSA Au=RSA Enc=AES(128) Mac=SHA1
CAMELLIA128-SHA SSLv3 Kx=RSA Au=RSA Enc=Camellia(128) Mac=SHA1
Vérifier
Aucune procédure de vérification n'est disponible pour cette configuration.
Dépannage
Il n'existe actuellement aucune information de dépannage spécifique pour cette configuration.
Informations connexes