gpt4 book ai didi

apache - 使用 Let's encrypt with Apache 和 Apache Tomcat

转载 作者:行者123 更新时间:2023-12-04 22:36:41 26 4
gpt4 key购买 nike

在同一台机器上,Apache 在端口 80 上运行,Tomcat 在端口 8080 上运行。
Apache 包括 html;css;js;文件并调用 tomcat 服务。
基本上 exampledomain.com 调用 exampledomain.com:8080 来接收数据。
现在我使用 Let's Encrypt certbot 将协议(protocol)从 http 升级到 https 以生成证书,该证书将由 certbot 每 3 个月更新一次。 Apache 在端口 443 上运行良好,但 Tomcat 仍然使用端口 8080,我可以使用相同的证书在端口 8443 上运行 tomcat 但是.. 为此,需要将证书转换为 Java Keystore。
我的问题是,如果我要转换证书,它将在 3 个月后过期,我需要再次将 certbot 生成的新证书转换为 Java Keystore 吗?

最佳答案

是的,您必须在每次证书到期时转换证书。
Tomcat 接受 .jks 和 .pfx 证书,您可以通过编写脚本轻松地在每次 certbot 生成新证书时自动转换,并使其与 certbot 续订 Hook 运行。
脚本:

#!/bin/bash
# Adjust these variables as necessary

# Where you want to final PKCS12 file to be stored.
CERT_PATH="/opt/app/certificate.pfx"

# Password to encrypt the PKCS12 file.
CERT_PW="ShoobyDooby"

# Path to LE files, RENEWED_LINEAGE provided by CertBot
PRIV_KEY_PEM="$RENEWED_LINEAGE/privkey.pem"
CERT_PEM="$RENEWED_LINEAGE/cert.pem"
CHAIN_PEM="$RENEWED_LINEAGE/chain.pem"

# If there's already a .pfx file, back it up
if [[ -f "$CERT_PATH" ]]; then
now=`date +%Y-%m-%d-%T`
mv $CERT_PATH $CERT_PATH.bak.$now
fi

# Le Conversion
openssl pkcs12 -export -out $CERT_PATH -inkey $PRIV_KEY_PEM -in $CERT_PEM -certfile $CHAIN_PEM -password pass:$CERT_PW
将此脚本放在/etc/letsencrypt/renewal-hooks/deploy/auto_pfx.sh
不要忘记 chmod!如果脚本不可执行,则会被忽略。
Automatic PKCS12 Conversion for Let's Encrypt Certificates

关于apache - 使用 Let's encrypt with Apache 和 Apache Tomcat,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65902583/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com