温馨提示×

ubuntu jsp如何配置ssl

小樊
49
2026-10-06 21:56:52
栏目: 云计算

在 Ubuntu 上让 JSP(通常运行在 Tomcat 等 Java Web 容器) 支持 SSL/HTTPS,一般有两种常见做法:


一、Tomcat 直接配置 SSL(推荐用于 Java 项目)

1. 准备工作

  • Ubuntu 已安装 JDK
  • 已安装 Tomcat(如 /opt/tomcat 或 /var/lib/tomcat9)
  • 有 SSL 证书(自签或 CA 签发)

2. 生成证书(自签名示例)

cd /opt/tomcat/conf
keytool -genkey -alias tomcat -keyalg RSA -keysize 2048 \
-keystore tomcat.keystore -validity 365

按提示输入信息,会生成 tomcat.keystore


3. 修改 Tomcat 的 server.xml

编辑:

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

找到并修改(或取消注释):

<Connector
    port="8443"
    protocol="org.apache.coyote.http11.Http11NioProtocol"
    maxThreads="150"
    SSLEnabled="true"
    scheme="https"
    secure="true"
    keystoreFile="/opt/tomcat/conf/tomcat.keystore"
    keystorePass="你的密码"
    clientAuth="false"
    sslProtocol="TLS" />

4. 重启 Tomcat

sudo systemctl restart tomcat

访问:

https://服务器IP:8443/你的项目/

二、使用 Nginx + Tomcat(生产环境推荐)

1. 安装 Nginx

sudo apt update
sudo apt install nginx

2. 配置 Nginx SSL

sudo nano /etc/nginx/sites-available/default

示例:

server {
    listen 443 ssl;
    server_name yourdomain.com;

    ssl_certificate /etc/ssl/certs/your.crt;
    ssl_certificate_key /etc/ssl/private/your.key;

    location / {
        proxy_pass http://127.0.0.1:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

server {
    listen 80;
    server_name yourdomain.com;
    return 301 https://$host$request_uri;
}

3. 测试并重启

sudo nginx -t
sudo systemctl restart nginx

访问:

https://yourdomain.com/xxx.jsp

三、使用 Let’s Encrypt(免费证书)

sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d yourdomain.com

四、常见问题

  • 端口被占用:确认 8443 / 443 未被占用
  • 浏览器不安全:自签名证书需手动信任
  • JSP 无法访问:检查 Tomcat 是否启动、防火墙是否放行

如果你能告诉我:

  • 用的是 Tomcat 几
  • 是否 有域名
  • 是 测试还是生产

我可以给你更精确的配置示例。

0 踩