5.3. Durcissement de la configuration TLS dans les applications
Dans RHEL, les règles cryptographiques applicables à l'ensemble du système constituent un moyen pratique de s'assurer que les applications utilisant des bibliothèques cryptographiques n'autorisent pas les protocoles, les algorithmes de chiffrement ou les algorithmes non sécurisés connus.
Si vous souhaitez renforcer votre configuration TLS avec vos paramètres cryptographiques personnalisés, vous pouvez utiliser les options de configuration cryptographique décrites dans cette section et remplacer les stratégies cryptographiques du système par le minimum requis.
Quelle que soit la configuration que vous choisissez d'utiliser, veillez toujours à ce que votre application serveur applique server-side cipher order, de sorte que la suite de chiffrement à utiliser soit déterminée par l'ordre que vous avez configuré.
5.3.1. Configuration du serveur HTTP Apache pour l'utilisation de TLS
Le site Apache HTTP Server
peut utiliser les bibliothèques OpenSSL
et NSS
pour ses besoins en TLS. RHEL 9 fournit la fonctionnalité mod_ssl
par le biais de paquets éponymes :
# dnf install mod_ssl
Le paquet mod_ssl
installe le fichier de configuration /etc/httpd/conf.d/ssl.conf
, qui peut être utilisé pour modifier les paramètres relatifs à TLS du paquet Apache HTTP Server
.
Installez le paquetage httpd-manual
pour obtenir la documentation complète de Apache HTTP Server
, y compris la configuration TLS. Les directives disponibles dans le fichier de configuration /etc/httpd/conf.d/ssl.conf
sont décrites en détail dans le fichier /usr/share/httpd/manual/mod/mod_ssl.html
. Des exemples de différents paramètres sont décrits dans le fichier /usr/share/httpd/manual/ssl/ssl_howto.html
.
Lorsque vous modifiez les paramètres du fichier de configuration /etc/httpd/conf.d/ssl.conf
, veillez à tenir compte au minimum des trois directives suivantes :
SSLProtocol
- Utilisez cette directive pour spécifier la version de TLS ou SSL que vous souhaitez autoriser.
SSLCipherSuite
- Utilisez cette directive pour spécifier votre suite de chiffrement préférée ou pour désactiver ceux que vous souhaitez interdire.
SSLHonorCipherOrder
-
Décommentez et mettez cette directive à
on
pour vous assurer que les clients qui se connectent respectent l'ordre des algorithmes de chiffrement que vous avez spécifié.
Par exemple, pour utiliser uniquement les protocoles TLS 1.2 et 1.3 :
SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1
Pour plus d'informations, voir le chapitre Configurer le cryptage TLS sur un serveur HTTP Apache dans le document Déployer des serveurs web et des proxys inversés.
5.3.2. Configurer le serveur HTTP et proxy Nginx pour utiliser TLS
Pour activer la prise en charge de TLS 1.3 dans Nginx
, ajoutez la valeur TLSv1.3
à l'option ssl_protocols
dans la section server
du fichier de configuration /etc/nginx/nginx.conf
:
server { listen 443 ssl http2; listen [::]:443 ssl http2; .... ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers .... }
Voir le chapitre Ajouter le cryptage TLS à un serveur web Nginx dans le document Déployer des serveurs web et des proxys inversés pour plus d'informations.
5.3.3. Configurer le serveur de messagerie Dovecot pour utiliser TLS
Pour configurer votre installation du serveur de messagerie Dovecot
afin d'utiliser TLS, modifiez le fichier de configuration /etc/dovecot/conf.d/10-ssl.conf
. Vous trouverez une explication de certaines des directives de configuration de base disponibles dans ce fichier dans le fichier /usr/share/doc/dovecot/wiki/SSL.DovecotConfiguration.txt
, qui est installé avec l'installation standard de Dovecot
.
Lorsque vous modifiez les paramètres du fichier de configuration /etc/dovecot/conf.d/10-ssl.conf
, veillez à tenir compte au minimum des trois directives suivantes :
ssl_protocols
- Utilisez cette directive pour spécifier la version de TLS ou SSL que vous souhaitez autoriser ou désactiver.
ssl_cipher_list
- Utilisez cette directive pour spécifier vos suites de chiffrement préférées ou désactiver celles que vous souhaitez interdire.
ssl_prefer_server_ciphers
-
Décommentez et mettez cette directive à
yes
pour vous assurer que les clients qui se connectent respectent l'ordre des algorithmes de chiffrement que vous avez spécifié.
Par exemple, la ligne suivante dans /etc/dovecot/conf.d/10-ssl.conf
n'autorise que TLS 1.1 et les versions ultérieures :
ssl_protocols = !SSLv2 !SSLv3 !TLSv1
Ressources supplémentaires
- Déploiement de serveurs web et de serveurs mandataires (reverse proxies)
-
config(5)
etciphers(1)
. - Recommandations pour l'utilisation sécurisée de la sécurité de la couche transport (TLS) et de la sécurité de la couche transport du datagramme (DTLS).
- Générateur de configuration SSL de Mozilla.
- Test du serveur SSL.