由于https安全性高,很多网站都部署了SSL证书,下面记录了自己探索 Linux + Nginx + tomcat 部署SSL证书的过程。
- 我的是阿里云的ECS服务器,证书也是在阿里云上免费买的,域名通过阿里网站上的万网买的。.top后缀很便宜,可以买个玩玩。下面先说nginx 安装和 证书的部署
nginx 安装可参考 参考文档
证书购买流程:登录阿里,在安全(云盾)里有证书服务,进入后点击购买证书
购买完,可绑定域名,等待证书的审核,签发 签发成功后可下载,在下载中针对不同服务器有不同的部署方法,具体的部署方法都有说明 下面就展示一下Nginx/Tengine 安装证书的过程
SSL数字证书Nginx配置部署指导(阿里视频教程) https://help.aliyun.com/video_detail/54216.html?spm=5176.2020520163.cas.42.549166aazuyHp2
- 配置Nginx 的SSL 和 Proxy 找到Nginx安装目录,编辑 nginx.conf 新加 server 配置 默认代理路径
server {
listen 443;
server_name localhost;
ssl on;
root html;
index index.html index.htm;
ssl_certificate cert/214199595370316.pem;
ssl_certificate_key cert/214199595370316.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM- SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://xxxxxx.top:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
配置Tomcat server.xml 的 Engine 模块下配置一个 Value:
<Valve className="org.apache.catalina.valves.RemoteIpValve"
remoteIpHeader="X-Forwarded-For"
protocolHeader="X-Forwarded-Proto"
protocolHeaderHttpsValue="https"/>
3.都配置好,重启tomcat,nginx nginx重启命令 service nginx start