- 安装
可选配置:启动EPEL存储库 非必要项
yum install -y epel-release
yum clean all
yum makecache
#启用可选通道 可以不配置
yum -y install yum-utils
yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
必要配置参数:安装certbot
yum -y install certbot python2-certbot-nginx
- 配置nginx
upstream proxy {server 127.0.0.1:9000;
}
server {listen 443;server_name test.test.com;location ~ ^/(base|admin|web|assets|auth|user) {proxy_redirect off;proxy_set_header X-Proxy-Client-IP $remote_addr;proxy_set_header Host $http_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;proxy_pass http://proxy;}location / {root /data/camc/public/dist;# project pathtry_files $uri /index.html;# if not match,go to the save pageindex index.html index.htm;}error_page 404 /404.html; error_page 500 502 503 504 /50x.html;location = /50x.html {root /usr/share/nginx/html;}}
#http直接重定向到https
server {listen 80;server_name test.test.com;rewrite ^(.*)$ https://$host$1 permanent;}
或是一个正常的侦听80端口的也可以,重点是下一步生成证书,
3. 生成证书
3.1自动配置nginx
运行如下命令会自动下载证书并配置nginx。
certbot --nginx
会列表nginx下的域名列表,从其中选择2中配置的域名,会自动生成ssl文件并配置好443端口
3.2 手动配置nginx
运行如下命令会自动下载证书但需要自己配置nginx。
certbot certonly --nginx
若nginx未安装在默认路径(/etc/nginx or /usr/local/etc/nginx)下需自己指定nginx路径,到conf目录
certbot certonly --nginx --nginx-server-root=/root/nginx/conf
- 自动更新
sudo crontab -e
0 0 1 * * /usr/bin/certbot renew >> /var/log/le-renew.log