在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
選項。