在Debian系统上为Tomcat安装SSL证书的步骤如下:
确保系统是最新的,并安装Tomcat和OpenSSL工具。
sudo apt-get update sudo apt-get upgrade sudo apt-get install tomcat9 openssl
使用OpenSSL生成自签名证书或从证书颁发机构(CA)获取证书。以下是生成自签名证书的命令:
sudo openssl req -new -newkey rsa:2048 -days 365 -nodes -x509 -keyout /usr/local/tomcat/conf/tomcat.key -out /usr/local/tomcat/conf/tomcat.crt
将生成的密钥和证书合并到一个密钥库文件中:
sudo openssl pkcs12 -export -out /usr/local/tomcat/conf/tomcat.pfx -inkey /usr/local/tomcat/conf/tomcat.key -in /usr/local/tomcat/conf/tomcat.crt
编辑Tomcat的 server.xml
文件,通常位于 /usr/local/tomcat/conf/
目录下。找到或添加以下 Connector
元素:
<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol" maxThreads="150" SSLEnabled="true" scheme="https" secure="true" keystoreFile="/usr/local/tomcat/conf/tomcat.pfx" keystorePass="your_keystore_password" clientAuth="false" sslProtocol="TLS" />
请确保将 keystoreFile
和 keystorePass
替换为你实际的密钥库文件路径和密码。
保存 server.xml
文件的更改,并重启Tomcat以应用新的配置:
sudo systemctl restart tomcat9
打开浏览器,访问 https://your_server_ip:443
,你应该能看到一个安全锁标志,表示SSL配置成功。
请注意,上述步骤中的 your_server_ip
应替换为你的实际服务器IP地址。如果在执行步骤5时遇到 keytool error: java.lang.Exception: Public keys in reply and keystore don't match
错误,请确保您的私钥和证书使用相同的别名,并且在导入证书时使用 -trustcacerts
选项。