购买https证书以及nginx配置https
文章来源
运维公会:购买https证书以及nginx配置https
1、https的作用
https的全名是安全超文本传输协议,是在http的基础上增加了ssl加密协议。在信息传输的过程中,信息有可能被劫持,从而造成数据的丢失,而如果使用的是https的话,即使信息被劫持,因为在传输过程中,信息是被加密的,所以也能保证数据的安全性。
2、申请证书
目前在阿里云或者腾讯云上都可以购买证书,现在以阿里云为例购买证书
在阿里云的产品与服务上找到SSL证书
点击购买证书,可以看到有免费型的SSL证书。如果是个人使用,用这个就行,如果是企业的话,就需要根据自己的具体需求去购买证书。
免费型的只能对应一个固定的二级域名。
选择证书申请,后边就根据提示,写清楚自己的域名,信息就下一步,然后验证就可以了。
当状态变为以签发后,就能下载证书了,然后上传到服务器上边。
3、查看nginx是否有--with-http_ssl_module模块
使用https,是需要使用ssl模块。如果没有需要安装。
4、配置https
一下是本机的配置
ssl on;
ssl_certificate ssl/2943505_www.yunweigonghui.com.pem;#最好写绝对路径
ssl_certificate_key ssl/2943505_www.yunweigonghui.com.key; #最好写绝对路径
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
至于server中其余的配置,只要和配置http的保持一致就行了。也就是80端口里边如何配置,这个443端口里边就如何配置。
5、参数详解
个人认为除了ssl_certificate和ssl_certificate_key需要根据实际情况去配置,别的默认就可以。
参数 解释
ssl on; 开启ssl模块
ssl_certificate ssl/ssl.pem; 存放公钥的位置(一般都使用crt格式或pem格式公钥证书)
ssl_certificate_key ssl/ssl.key; 存放key的位置
ssl_session_cache shared:SSL:1m; 存储session参数的缓存的类型和大小
ssl_session_timeout 5m; 等待超时时间
ssl_ciphers HIGH:!aNULL:!MD5; 密钥的算法,这个写几个就行了
ssl_prefer_server_ciphers on; 优先使用服务器的算法,当使用SSLv3和TLS协议时生效
如果开了防火墙的话,别忘了放通443端口。
6、增加http跳转
免不了客户端还是使用http去访问页面,这个时候只要加上下边的配置就能实现从http跳转到https。
server {
listen 80;
server_name www.yunweigonghui.com;
rewrite ^(.*)$ https://$host$1 permanent;
location / {
index index.html index.htm;
}
- Nginx https的安装配置以及证书的使用
- SSL 证书购买以及Nginx配置相关问题
- nginx证书制作以及配置https并设置访问http自动跳转https(反向代理转发jboss)
- HTTPS证书验证流程及SSL证书生成步骤【附nginx开启https配置】
- Centos6.5服务器环境搭建之安装Nginx以及Https访问方式的配置
- NGINX 配置 SSL 证书 + 搭建 HTTPS 网站教程
- apache2 以及https证书配置
- 在linux(centos)使用openssl生成https证书并配置到nginx的实现过程
- nginx 配置https免费证书
- nginx配置https之使用第三方证书
- nginx配置https(免费证书)
- Windows下Nginx配置SSL实现Https访问(包含证书生成)
- tomcat配置https的方法以及带有证书请求的实例
- 阿里云https配置,nginx多证书配置
- Nginx 配置 SSL 证书 + HTTPS 站点小记
- Nginx配置SSL证书部署HTTPS网站(颁发证书)
- 使用自签的证书配置nginx的https
- nginx配置https ,证书是自签名
- nginx 配置https并自签名证书
- Nginx https加密以及nginx日志配置与管理