Tomcat 服务器如何配置 Let’s Encrypt SSL 证书 ?
Let 's Encrypt 是提供有效 SSL 证书的颁发机构,证书对每个人都是免费的,但有一些限制。本教程将介绍如何发布一个新的加密 SSL 证书,并在 Tomcat Web 服务器中对其进行配置。
Step 1 – Installing Certbot
Certbot 是一个命令行程序,用于创建和管理 Let 's Encrypt SSL 证书,它适用于大多数操作系统。
(1)基于 Debian 的用户可以通过以下命令安装 certbot
sudo apt install certbot
(2)其他操作系统用户可按照官方说明安装。
文档链接:https://certbot.eff.org/docs/install.html
接下来,为您的域名创建 SSL 证书,确保域名已经从 DNS 指向 tomcat 服务器。本文中,我将使用tomcat.tecadmin.net 子域名作为示例。
sudo certbot certonly --standalone -d tomcat.tecadmin.net
证书签发后,您可以在以下位置查看所有相关文件。
sudo ls /etc/letsencrypt/live/tomcat.tecadmin.net/
输出如下所示:
cert.pem chain.pem fullchain.pem privkey.pem README
Step 2 – Configure SSL Certifcate
接下来,配置 Tomcat 服务器以监听安全协议。默认情况下,Tomcat 使用 8443 侦听 SSL/TLS 请求。
复制 /opt/tomcat/conf
目录下的 SSL 证书和私钥文件:
cd /etc/letsencrypt/live/tomcat.tecadmin.net
sudo cp {cert,chain,privkey}.pem /opt/tomcat/conf/
编辑 Tomcat 主目录下的 conf/server.xml文件。我的 Tomcat 安装在 /opt/tomcat 目录,因此使用以下命令编辑配置文件。
sudo nano /opt/tomcat/conf/server.xml
修改的配置如下所示:
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true">
<SSLHostConfig>
<Certificate certificateFile="conf/cert.pem"
certificateKeyFile="conf/privkey.pem"
certificateChainFile="conf/chain.pem" />
</SSLHostConfig>
</Connector>
按 CTRL+O
保存更改,按 CTRL+X
退出编辑器。
重新启动 Tomcat 服务以应用更改。
sudo systemctl restart tomcat
Step 3 – Verify SSL Certificate
使用带有 8443 端口的域名访问 Tomcat 服务器
Step 4 – Renew SSL Certificate
默认的 Let 's Encrypt SSL 证书将在 90 天内过期。你可以在过期 30 天之前刷新您的 SSL 证书。
certbot certonly --standalone -d tomcat.tecadmin.net
成功更新后,将新生成的证书文件复制到 Tomcat conf 目录。
cd /etc/letsencrypt/live/tomcat.tecadmin.net
cp {cert,chain,privkey}.pem /opt/tomcat/conf
重新启动 Tomcat 服务以应用更改。
sudo systemctl restart tomcat
我的开源项目
评论已关闭