温馨提示×

Ubuntu下JSP如何配置SSL证书

小樊
38
2025-10-26 16:23:59
栏目: 云计算

在Ubuntu系统下为JSP应用配置SSL证书,通常需要以下几个步骤:

  1. 安装Apache Tomcat 如果你还没有安装Apache Tomcat,请先安装它。可以使用以下命令安装:
sudo apt-get update
sudo apt-get install tomcat9
  1. 获取SSL证书 你可以从Let’s Encrypt(免费)或其他证书颁发机构(付费)获取SSL证书。这里以Let’s Encrypt为例,使用Certbot工具获取证书。

首先,安装Certbot和Nginx插件:

sudo apt-get install certbot python3-certbot-nginx

然后,运行Certbot以获取SSL证书:

sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com

按照提示操作,Certbot会自动配置Nginx并生成SSL证书。

  1. 配置Apache Tomcat 将Certbot生成的SSL证书文件复制到Tomcat的conf目录下:
sudo cp /etc/letsencrypt/live/yourdomain.com/fullchain.pem /opt/tomcat/conf/yourdomain.com.crt
sudo cp /etc/letsencrypt/live/yourdomain.com/privkey.pem /opt/tomcat/conf/yourdomain.com.key

接下来,编辑Tomcat的配置文件server.xml

sudo nano /opt/tomcat/conf/server.xml

找到以下注释掉的SSL连接器配置:

<!--
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
           maxThreads="150" SSLEnabled="true">
    <SSLHostConfig>
        <Certificate certificateKeystoreFile="conf/localhost-rsa.jks"
                     type="RSA" />
    </SSLHostConfig>
</Connector>
-->

取消注释并修改为以下内容:

<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
           maxThreads="150" SSLEnabled="true">
    <SSLHostConfig>
        <Certificate certificateKeystoreFile="/opt/tomcat/conf/yourdomain.com.jks"
                     type="RSA" certificateKeystorePassword="changeit" />
    </SSLHostConfig>
</Connector>

保存并退出。

  1. 创建Java KeyStore 将PEM格式的证书转换为Java KeyStore格式:
sudo apt-get install portecle

使用Portecle导入yourdomain.com.crtyourdomain.com.key文件,并将其导出为yourdomain.com.jks

  1. 重启Tomcat 最后,重启Tomcat以应用更改:
sudo systemctl restart tomcat9

现在,你的JSP应用应该可以通过HTTPS访问了。请注意,Certbot证书有效期为90天,需要定期更新。可以使用以下命令自动更新证书:

sudo certbot renew --dry-run

如果没有问题,运行以下命令完成更新:

sudo certbot renew

0