11.12. SSL 加密
11.12.1. 对 JBoss EAP 6 Web 服务器实施 SSL 加密
许多 web 应用程序都要求对客户端和服务器间的连接进行 SSL 加密,这也被称为 HTTPS 连接。你可以通过这个过程对服务器或服务器组启用 HTTPS。
前提条件
- 您需要一系列 SLL 加密密钥和加密证书。你可以从证书签名机构购买或者使用命令行工具来生成。关于使用红帽企业版 Linux 里的可用工具来生成加密密钥,请参考 第 11.12.2 节 “生成 SSL 密钥和证书”。
- 您的环境和设置的细节:
- 证书文件所在的完整目录名。
- 你的加密密钥的密码。
- 连接域控制器或独立服务器的管理 CLI 命令。
注意
/profile=default 删除。
过程 11.39. 配置 JBoss Web 服务器以使用 HTTPS
添加新的 HTTPS 连接器。
执行下列管理 CLI 命令来修改配置。这会创建一个新的加密连接器,名为HTTPS。它使用https模式、https套接字绑定(默认为8443端口),且被设置为安全的。例 11.36. 管理 CLI 命令
/profile=default/subsystem=web/connector=HTTPS/:add(socket-binding=https,scheme=https,protocol=HTTP/1.1,secure=true)
- 执行下列管理 CLI 命令来设置协议为
TLSv1。例 11.37. 管理 CLI 命令
/profile=default/subsystem=web/connector=HTTPS/ssl=configuration/:write-attribute(name=protocol,value=TLSv1)
选择合适的加密套件
加密套件由使用大量的加密类型的构建模块组成。第一个表列出了我们推荐的加密类型。第二个表列出可能用来和现有软件兼容的加密类型,它们不具备和我们所推荐的相等的安全性。警告
Red Hat 推荐在加密套件(cipher-suite)里使用其白名单上的强密码。启用弱加密会导致重大的安全风险。在确定加密套件至前,请阅读 JDK 供应商的文档,因为它们可能会有兼容性问题。表 11.9. 推荐的加密类型
具有 2048 位密钥和 OAEP 的 RSA CBC 模式的 AES-128 SHA-256 HMAC-SHA-256 HMAC-SHA-1 表 11.10. 其他加密类型
具有大于 1024 密钥及传统 padding 的 RSA AES-192 AES-256 3DES(三重 DES,带有两个或三个 56 位的密钥) RC4(极不推荐) SHA-1 HMAC-MD5 关于连接器的 SSL 属性参数的完整列表,请参考 第 11.12.3 节 “SSL 连接器引用”。配置 SSL 加密证书和密钥。
执行下列 CLI 命令来配置你的 SSL 证书,请用自己的值来替换例子里的值。这个例子假设密钥库被复制到服务器的配置目录,对于受管域来说,也就是EAP_HOME/domain/configuration/。例 11.38. 管理 CLI 命令
/profile=default/subsystem=web/connector=HTTPS/ssl=configuration:add(name=https,certificate-key-file="${jboss.server.config.dir}/keystore.jks",password=SECRET, key-alias=KEY_ALIAS, cipher-suite=CIPHERS)部署应用程序。
部署一个使用你已经配置好的配置集的应用程序到服务器组。如果你使用的是独立服务器,将这个应用程序部署至服务器。它的 HTTPS 请求将使用新的 SSL 加密的连接。

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.