Red Hat Training

A Red Hat training course is available for Red Hat JBoss Enterprise Application Platform

18.2.3. Configuration de Netty Secure Sockets Layer (SSL)

Netty TCP est un simple transport de sockets basé TCP non chiffré. Netty ressemble à Netty TCP mais il procure une sécurité supplémentaire en chiffrant les connexions TCP par SSL (Secure Sockets Layer).

Avertissement

Utiliser le protocole SSLv3 pour les connecteurs/accepteurs SSL n'était pas autorisé à cause de la vulnérabilité "Poodle". Les clients JMS se connectant à ce protocole ne seront pas acceptés.
L'exemple suivant montre la configuration Netty pour SSL One Way :

Note

La plupart des paramètres suivants peuvent être utilisés avec des accepteurs comme connecteurs. Toutefois, certains paramètres fonctionnent uniquement avec les accepteurs. La description du paramètre explique la différence entre l'utilisation de ces paramètres dans des connecteurs ou des accepteurs.
<acceptors>
 <netty-acceptor name="netty" socket-binding="messaging"/>
   <param key="ssl-enabled" value="true"/>
   <param key="key-store-password" value="[keystore password]"/>
   <param key="key-store-path" value="[path to keystore file]"/>
 </netty-acceptor>
</acceptors>

Tableau 18.2. Propriétés de configuration de Netty SSL

Nom de propriété Par défaut Description
ssl-enabled true Active SSL
key-store-password [keystore password]
Lorsqu'il est utilisé sur un accepteur, c'est le mot de passe du keystore côté serveur.
Lorsqu'il est utilisé sur un connecteur, c'est le mot de passe du keystore côté client. C'est pertinent pour un connecteur si vous utilisez SSL Two Ways (authentification dans les deux sens). Cette valeur peut être configurée sur le serveur, mais elle sera téléchargée et utilisée par le client.
key-store-path [path to keystore file]
Lorsqu'il est utilisé sur un accepteur, c'est le chemin du keystore SSL côté serveur qui détient les certificats du serveur (auto-signés ou signés par une autorité).
Lorsqu'il est utilisé sur un connecteur, c'est le chemin du keystore SSL côté client qui détient les certificats des clients. C'est pertinent pour un connecteur si vous utilisez SSL Two Ways (authentification dans les deux sens). Cette valeur est configurée sur le serveur; elle sera téléchargée et utilisée par le client.
Si vous configurez Netty en SSL Two Ways (authentification mutuelle entre serveur et client), il y a trois paramètres supplémentaires en plus de ceux décrits dans l'exemple ci-dessus pour SSL One Way :
  • need-client-auth : indique le besoin de l'authentification Two Way (dans les deux sens) pour les connexions client.
  • trust-store-password  : lorsqu'il est utilisé sur un accepteur, c'est le mot de passe du trust store côté serveur. Lorsqu'il est utilisé sur un connecteur, c'est le mot de passe du trust store côté client. C'est pertinent pour un connecteur à la fois en SSL One Way et SSL Two Ways. Cette valeur peut être configurée sur le serveur, mais elle sera téléchargée et utilisée par le client
  • trust-store-path : lorsqu'il est utilisé sur un accepteur, c'est le chemin du trust store SSL côté serveur qui détient le clés de tous les clients à qui le serveur fait confiance. Lorsqu'il est utilisé sur un connecteur, c'est le chemin du keystore SSL côté client qui détient les clés publiques de tous les serveurs à qui le client fait confiance. C'est important pour un connecteur si vous utilisez SSL Two Ways ou One Way. Ce chemin peut être configuré sur le serveur, mais sera téléchargé et utilisé par le client.