在 Debian 上给 Tomcat 配置 SSL(HTTPS),通常有两种常见方式:
sudo apt update
sudo apt install tomcat9
Tomcat 默认目录:
/etc/tomcat9/var/log/tomcat9sudo apt install certbot
sudo certbot certonly --webroot -w /var/lib/tomcat9/webapps/ROOT -d example.com
生成文件:
/etc/letsencrypt/live/example.com/fullchain.pem
/etc/letsencrypt/live/example.com/privkey.pem
sudo keytool -genkeypair \
-alias tomcat \
-keyalg RSA \
-keysize 2048 \
-validity 365 \
-keystore /etc/tomcat9/keystore.jks
sudo openssl pkcs12 -export \
-in /etc/letsencrypt/live/example.com/fullchain.pem \
-inkey /etc/letsencrypt/live/example.com/privkey.pem \
-out /etc/tomcat9/tomcat.p12 \
-name tomcat
编辑:
sudo nano /etc/tomcat9/server.xml
找到并修改 Connector(默认被注释):
<Connector
port="8443"
protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150"
SSLEnabled="true">
<SSLHostConfig>
<Certificate
certificateKeystoreFile="/etc/tomcat9/tomcat.p12"
certificateKeystorePassword="你的密码"
certificateKeystoreType="PKCS12"
certificateKeyAlias="tomcat" />
</SSLHostConfig>
</Connector>
sudo systemctl restart tomcat9
访问:
https://服务器IP:8443
sudo apt install nginx
server {
listen 443 ssl;
server_name example.com;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
如果你告诉我:
我可以给你更精确的配置。