HTTPS 证书申请及配置
2016-12-29 10:41
295 查看
证书采用的是 Let's
Encrypt 颁发的免费, 高效, 跨平台证书. 关于
方法一:
方法二:
这里需要注意, 如果 80 端口的域名配置 和其他的有冲突, 则需要先关掉, 或者将上述的配置添加到置顶域名里面
如果有多个子域名, 可以通过添加
将监听端口改为 443
增加以下配置
证书采用的是 Let's
Encrypt 颁发的免费, 高效, 跨平台证书. 关于
Let's Encrypt的前世今生, 请自行Google.
申请及配置步骤
1. 安装 acme.sh
方法一:curl https://get.acme.sh | sh
方法二:
# acme.sh 作者推荐的安装方式可能会出现资源访问不了的情况 # 可以尝试通过 先下载 在安装的方法, 如下: wget https://github.com/Neilpang/acme.sh/archive/master.zip unzip master.zip mv acme.sh-master acme.sh cd acme.sh ./acme.sh/acme.sh --install
2. 创建用于存放验证文件的文件夹, 如: /var/www/acme-challenges/
mkdir -p /var/www/acme-challenges
3. 配置 Nginx 验证
server { listen 80; server_name *.beinhere.com beinhere.com *.luodi.cc luodi.cc *.lyfeyaj.com lyfeyaj.com; # 用于验证服务, acme 会自动将认证token 放在此文件夹下面, 并通过web请求来验证 location ^~ /.well-known/acme-challenge/ { alias /var/www/acme-challenges/.well-known/acme-challenge/; try_files $uri =404; } ## Don't show the nginx version number, a security best practice server_tokens off; # 用于跳转 http 为 https location / { return 301 https://$http_host$request_uri; } }
这里需要注意, 如果 80 端口的域名配置 和其他的有冲突, 则需要先关掉, 或者将上述的配置添加到置顶域名里面
4. 生成域名证书
acme.sh --issue -d luodi.cc -d www.luodi.cc --webroot /var/www/acme-challenges/
如果有多个子域名, 可以通过添加
-d 子域名.com来增加 如果生成失败, 可以通过 添加
--debug或者
--log参数来查看详细调试信息
5. 安装域名证书
acme.sh --installcert -d luodi.cc --keypath /etc/nginx/ssl/luodi.cc.key --fullchainpath /etc/nginx/ssl/luodi.cc.cer --reloadcmd "service nginx force-reload"
6. 配置 Nginx
将监听端口改为 443listen 443 ssl;
增加以下配置
## Strong SSL Security ## https://raymii.org/s/tutorials/Strong_SSL_Security_On_nginx.html & https://cipherli.st/ ssl on; ssl_certificate /etc/nginx/ssl/luodi.cc.cer; ssl_certificate_key /etc/nginx/ssl/luodi.cc.key; # Luodi needs backwards compatible ciphers to retain compatibility with Java IDEs ssl_ciphers "ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4"; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; ssl_session_cache shared:SSL:50m; ssl_session_timeout 1d; # 根证书 + 中间证书 ssl_trusted_certificate /etc/nginx/ssl/letsencrypt.cer; ssl_stapling on; ssl_stapling_verify on;
相关文章推荐
- StartCom 申请 SSL 证书及 Nginx HTTPS 支持配置全攻略
- 阿里云申请的免费证书,配置到Tomcat,实现https访问
- StartCom 申请 SSL 证书及 Nginx HTTPS 支持配置全攻略
- https研究(三)使用腾讯云申请证书配置https(单向认证)
- Let's Encrypt申请免费https证书并配置nginx
- 申请 SSL 证书 并且配置 iis 启用https协议
- 为微信小程序搭建https服务,证书申请及配置。Apache服务器。重点描述request:fail ssl hand shake error 错误
- 免费 Https 证书(Let's Encrypt)申请与配置
- 阿里云申请免费DV SSl(https证书),及详细配置运用
- HTTPS 证书申请及配置
- Nginx + Tomcat HTTPS/SSL 配置方法 ——申请证书
- 转自《https安全链接的配置教程:startSSl免费证书申请与nginx的https支持配置》
- 配置赛门铁克(Symantec)https证书:从阿里云申请免费赛门铁克(Symantec)https证书并配置到cdn
- xp下使用Openssl来制作证书,在IIS中配置Https笔记
- Nginx 配置 SSL 证书 + HTTPS 站点
- xp下使用Openssl来制作证书,在IIS中配置Https笔记
- nginx中使用https时,证书的生成方式及配置
- Win2003证书服务配置/客户端(服务端)证书申请/IIS站点SSL设置
- java发https请求,证书配置
- 如何解决实际错误:配置IIS使其支持SSL加密的HTTPS,并且要求浏览器客户端证书