Confluence 6 通过 SSL 或 HTTPS 运行 - 创建或请求一个 SSL 证书

简介: 在启用 HTTPS 之前,你需要一个有效的证书,如果你已经有了一个有效的证书,你可以直接跳过这个步骤,进入 step 2。你可以创建一个自签名的证书,或者从信任的 Certificate Authority 中获得一个证书。

在启用 HTTPS 之前,你需要一个有效的证书,如果你已经有了一个有效的证书,你可以直接跳过这个步骤,进入 step 2

你可以创建一个自签名的证书,或者从信任的 Certificate Authority 中获得一个证书。

如果你的项目小组计划使用 Confluence 服务器移动 app。你需要你的证书是从信任的证书签发机构签发的。你不能使用自签名的证书或者从一个不信任的机构获得的证书,或者自由 CA。

选项 1: 创建一个自签名证书

当你需要进行加密,但是你并不需要对网站的的请求校验的话,自签名证书能够帮助你完成这个。在通常的情况下,你可以在你的测试环境下签发你的自签名证书,你也可以在你公司内部的网络上签发自签名证书。

因为证书不是信任的组织签发的(CA),用户可能会收到站点不被信任,并且提供一个步骤让用户先确定,才能访问网站的信息。这个通常是在第一次访问网站的时候出现的提示。如果你使用的 Confluence 的移动 app 的话,用户不能通过你的自签名证书访问你的 Confluence 站点。

在这个情况下,我们需要使用 Java 的 keytool 工具包。这个工具包是包含在 JDK 中的。如果你对命令行工具并不是十分熟悉的话,你可以考虑使用 KeyStore Explorer 工具。

使用 keytool 来创建一个自签名证书:

  1. 从命令行中,为你的操作系统运行正确的命令:

    Windows

    "%JAVA_HOME%\bin\keytool" -genkeypair -keysize 2048 -alias tomcat -keyalg RSA -sigalg SHA256withRSA

    Linux (and MacOS)

    $JAVA_HOME/bin/keytool -genkeypair -keysize 2048 -alias tomcat -keyalg RSA -sigalg SHA256withRSA

  2. 当出现提示后,为你的证书创建 密码(password ),私有 key。
    • 仅使用数字和英文字符。如果你使用了特殊字符,Tomcat 可能会出现错误。
    • 请记录你创建的密码,在下一步中你需要使用到你创建的密码。
    • 默认的密码是 'changeit'。
  3. 根据提示来确定证书的细节。这些信息被用来构造 X.500 实体中的 Distinguished Name (DN) 。
     
    • First and last name:这个不是你的名字,这个是 Common Name (CN),例如 'confluence.example.com'。CN 必须与 Confluence 使用的域名完全对应,否则 Tomcat 将不能使用你签名的证书。
    • Organizational unit:这个是证书使用的部门或者小组,例如 'marketing'。
    • Organization:是你公司的名字,例如 'SeeSpaceEZ'。
    • City, State / province, country code:这个是你公司的地理位置,例如 Sydney, NSW, AU。
  4. 输出将会如下所示。输入 'y' 来确定你输入的内容。

    CN=confluence.example.com, OU=Marketing, O=SeeSpaceEZ, L=Sydney, ST=NSW, C=AU

  5. 当被询问为 'tomcat' 准备使用的 密码(password )的时候,输入你第二步中输入的密码(在输入密码后单击回车)。
    • 'tomcat' 是你在 keytool 命令行中输入的别名,在这里用来对你提示。
    • 你 keystore 实例必须和你的私有 key 有相同的密码。这个是 Tomcat 服务器要求的。
  6. 你的证书现在已经可以用了,进入 下面 的第二步。

选项 2: 使用 Certificate Authority  签发的证书(推荐)

在生产环境中,你需要使用从 Certificate Authority (CA) 签发的证书。下面的内容是从 Tomcat documentation 中拷贝出来的。

首先你需要创建本地证书,然后基于你创建的本地证书再创建一个 'certificate signing request' (CSR) 。你需要提交 CSR 到你的选择的 CA 提供商上进行收取。CA 将会通过 CSR 将授权后的证书发给你。

  1. 使用 Java 的 keytool 工具来创建一个本地证书(请按照上面第一步所描述的内容)。
  2. 从命令中,将会返回下面的命令工具来创建所需要前面的证书。

    keytool -certreq -keyalg RSA -alias tomcat -file certreq.csr -keystore <MY_KEYSTORE_FILENAME>

    替换 <MY_KEYSTORE_FILENAME> 为路径和你本地证书创建 .keystore 的文件名。

  3. 提交创建的文件为 certreq.csr 到你希望进行授权的 CA。
    (info) 请参考 CA 的文档来找到如何进行这个操作。
  4. CA 将会发个你已经签名好的证书。
  5. 导入新证书到你的本地的 keystore:

    keytool -importcert -alias tomcat -keystore <MY_KEYSTORE_FILENAME> -file <MY_CERTIFICATE_FILENAME>

    一些 CA 可能要求你在安装你的证书之前先安装一个中间人证书。你应该按照 CA  提供的文档来完成你本地证书的成功安装。

如果你使用的是 Verisign 或 GoDaddy,然后你收到了错误的信息,你可能需要将 PKCS12 和你的私钥(private key)同时导出。

  1. 首先,删除添加到 keystore 中的所有 key:

    keytool -delete -alias tomcat -keystore <MY_KEYSTORE_FILENAME>

  2. 然后导出为 PKCS12 格式:

    openssl pkcs12 -export -in <MY_CERTIFICATE_NAME> -inkey <MY_PRIVATEKEY_NAME> -out <MY_PKC12_KEYSTORE_NAME> -name tomcat -CAfile <MY_ROOTCERTIFICATE_NAME-alsoCalledBundleCertificateInGoDaddy> -caname root

  3. 然后导入 PKCS12 到 jks 中:

    keytool -importkeystore -deststorepass <MY_DESTINATIONSTORE_PASSWORD> -destkeypass <MY_DESTINATIONKEY_PASSWORD> -destkeystore <MY_KEYSTORE_FILENAME> -srckeystore <MY_PKC

 

https://www.cwiki.us/display/CONF6ZH/Running+Confluence+Over+SSL+or+HTTPS

目录
相关文章
|
10天前
|
存储 算法 安全
ssl 证书名词解释--crt和pem
ssl 证书名词解释--crt和pem
22 0
|
11天前
|
安全 搜索推荐 数据建模
解决网站“不安全”、“不受信”、“排名下降”,你需要——「SSL证书」
SSL证书是网络安全的关键,用于加密和验证网站身份,保护用户数据安全,防止信息被窃取。它分为DV、OV、EV和IV四种类型,每种验证网站身份的程度不同。DV证书快速签发,OV和EV证书提供更高级别的身份验证,EV证书曾在浏览器地址栏显示绿色。目前,DV证书占据市场大部分份额。SSL证书还有单域、通配符和多域之分,有效期曾从多年逐渐缩短至90天,以增强安全性。部署SSL证书能提升用户信任,优化SEO排名,并符合网络安全法规要求。
解决网站“不安全”、“不受信”、“排名下降”,你需要——「SSL证书」
|
11天前
|
域名解析 网络协议 应用服务中间件
阿里云SSL证书配置(HTTPS证书配置)
该内容是一个关于如何在阿里云上准备和购买SSL证书,以及如何为网站启用HTTPS的步骤指南。首先,需要注册并实名认证阿里云账号,然后在SSL证书控制台选择证书类型、品牌和时长进行购买。申请证书时填写域名信息,并进行DNS验证,这包括在阿里云域名管理板块添加解析记录。完成验证后提交审核,等待证书审核通过并下载Nginx格式的证书文件。最后,将证书配置到网站服务器以启用HTTPS。整个过程涉及账户注册、实名认证、证书购买、DNS设置和证书下载及安装。
52 0
|
14天前
|
网络安全 数据安全/隐私保护 Docker
免费的HTTPS证书
免费的HTTPS证书
55 1
|
22天前
|
前端开发 应用服务中间件 网络安全
http转为https,ssl证书安装及nginx配置
http转为https,ssl证书安装及nginx配置
36 1
|
29天前
|
数据采集 缓存 前端开发
http和https请求服务器的时候在请求头部分都带什么到服务器呢?
HTTP和HTTPS请求头基本结构相似,HTTPS多了一层SSL/TLS加密。常见请求头如Accept(指定内容类型)、Authorization(身份验证)、Cookie(会话跟踪)、User-Agent(标识用户代理)等。HTTPS特有的头包括Upgrade-Insecure-Requests(升级到HTTPS)、Strict-Transport-Security(强制使用HTTPS)、Sec-Fetch-*(安全策略)和X-Content-Type-Options、X-Frame-Options等(增强安全性)。实际应用中,请求头会根据需求和安全策略变化。
20 0
|
1月前
|
存储 网络安全 数据安全/隐私保护
Windows Server 2019 IIS HTTPS证书部署流程详解
Windows Server 2019 IIS HTTPS证书部署流程详解
|
1月前
|
安全 网络安全 CDN
阿里云CDN HTTPS 证书配置流程
阿里云CDN HTTPS 证书配置流程
167 1
|
1月前
|
存储 缓存 安全
https跳过SSL认证时是不是就是不加密的,相当于http?
https跳过SSL认证时是不是就是不加密的,相当于http?
118 0
|
1月前
|
弹性计算 网络安全 Apache
windows server2012服务器下PHPstudy配置ssl证书(https配置)
windows server2012服务器下PHPstudy配置ssl证书(https配置)
66 0