美文网首页
nginx:配置SSL

nginx:配置SSL

作者: 春暖花已开 | 来源:发表于2024-01-28 19:21 被阅读0次

一、申请

首先去阿里云申请免费的SSL证书:搜索“数字证书管理服务”,去“/SSL 证书”里申请免费证书。申请之后半个小时就能下发,之后将证书下载下来,包含一个pem和一个key,假设名字分别为:domain.pemdomain.key

二、配置

  1. 检验nginx有没有安装--with-http_ssl_module
cd /usr/local/nginx
sbin/nginx -V

如果有,就跳转到第2步,如果没有就安装(我是通过源码安装的,以源码安装为例):

--with-http_ssl_module:https协议支持,构建和运行此模块需要 OpenSSL 库

yum install -y openssl-devel

进入nginx源码,之后配置编译参数:

./configure --with-http_ssl_module

编译和安装:

make && make install
  1. 开启443端口:


  1. 上传pem和key:
cd /usr/local/nginx && mkdir cert

通过 scp 将文件上传到cert目录:

scp domain.pem root@xxx.xx.xxx.xx:/usr/local/nginx/cert/
scp domain.key root@xxx.xx.xxx.xx:/usr/local/nginx/cert/
  1. nginx配置:
# HTTPS server
server {
  listen       443 ssl;
  server_name  你的域名;

  # ssl证书地址
  ssl_certificate     ../cert/domain.pem;
  ssl_certificate_key  ../cert/domain.key;

  # ssl验证相关配置
  ssl_session_cache    shared:SSL:1m;
  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 / {
    root   html;
    index  index.html index.htm;
  }
}

将http重定向到https:

listen       80;
server_name  dotts.top;

# 将http转到https
rewrite ^ https://$host$request_uri? permanent;
  1. 重启nginx:
killall nginx
nohup /usr/local/nginx/sbin/nginx &

相关文章

网友评论

      本文标题:nginx:配置SSL

      本文链接:https://www.haomeiwen.com/subject/bjowodtx.html