1.11.9. 使用 server-ssl-sni-context
server-ssl-sni-context 用于提供服务器端 SNI 匹配。它提供了匹配规则,以将主机名与 SSL 上下文关联,并在未匹配任何提供的主机名时提供默认值。SSL SNI 上下文可以代替标准服务器 SSL 上下文,如在 undertow 子系统中定义上下文时。
-
根据需要创建
key-store、key-manager、trusted-manager 和server-ssl-context组件。必须定义服务器 SSL 上下文来创建server-ssl-sni-context。 创建
server-ssl-sni-context,为server-ssl-context元素提供匹配信息。必须使用default-ssl-context属性来指定默认的 SSL 上下文,如果没有找到匹配的主机名,则将使用此属性。host-context-map接受用逗号分开的主机名列表,以匹配各种 SSL 上下文。/subsystem=elytron/server-ssl-sni-context=SERVER_SSL_SNI_CONTEXT:add(default-ssl-context=DEFAULT_SERVER_SSL_CONTEXT,host-context-map={HOSTNAME=SERVER_SSL_CONTEXT,...})/subsystem=elytron/server-ssl-sni-context=SERVER_SSL_SNI_CONTEXT:add(default-ssl-context=DEFAULT_SERVER_SSL_CONTEXT,host-context-map={HOSTNAME=SERVER_SSL_CONTEXT,...})Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下将用于定义默认为
server,并将SSLSSL 上下文的 server-ssl-sni-contextwww.example.com的传入请求与exampleSSL上下文匹配。/subsystem=elytron/server-ssl-sni-context=exampleSNIContext:add(default-ssl-context=serverSSL,host-context-map={www\\.example\\.com=exampleSSL})/subsystem=elytron/server-ssl-sni-context=exampleSNIContext:add(default-ssl-context=serverSSL,host-context-map={www\\.example\\.com=exampleSSL})Copy to Clipboard Copied! Toggle word wrap Toggle overflow
注意
主机匹配的属性值充当正则表达式,因此请确保转义用于分隔域名的任何句点(.)。
使用管理控制台配置 server-ssl-sni-context
- 访问管理控制台。如需更多信息,请参见《JBoss EAP 配置指南 https://access.redhat.com/documentation/en-us/red_hat_jboss_enterprise_application_platform/7.3/html-single/configuration_guide/#management_console_overview 》中的管理控制台部分。
-
导航到 Configuration
Subsystems Security(Elytron) Other Settings 并点 View。 -
点 SSL
Server SSL SNI Context 配置所需的 ssl-sni-context。
有关 Elytron 组件属性的完整列表,请参阅 Elytron Subsystem 组件参考。