文档章节

nginx使用SSL模块配置HTTPS支持

ccor
 ccor
发布于 2016/06/12 17:11
字数 453
阅读 209
收藏 18

生成证书

创建服务器私钥,命令会让你输入一个口令:

$ openssl genrsa -des3 -out server_org.key 1024

除去私钥口令,否则启动时需要输入口令(没亲试)

$ openssl rsa -in server_org.key -out server.key

生成一个证书请求(CSR),生成证书请求,会提示输入省份、城市、域名信息、邮箱等。

$ openssl req -new -key server_org.key -out server.csr

Country Name (2 letter code) [XX]:CN State or Province Name (full name) []:Beijing Locality Name (eg, city) [Default City]:Beijing Organization Name (eg, company) [Default Company Ltd]:CompanyName Organizational Unit Name (eg, section) []:unitName Common Name (eg, your name or your server's hostname) []:hostName Email Address []:admin@xx.com

注意Common Name不能省略,某些svn客户端访问会验证这项而导致访问失败, 例如TortoiseSVN会报:

方法OPTIONS 失败于“https://xxx/svn/xx”: Server certificate was missing commonName attribute in subject name

自己签发证书

$ openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

配置nginx的SSL

    server {
        server_name YOUR_DOMAINNAME_HERE;
        listen 443;
        ssl on;
        ssl_certificate /etc/nginx/conf.d/server.crt;
        ssl_certificate_key /etc/nginx/conf.d/server.key;
    }

重启nginx,这样就可以通过以下方式访问: https://YOUR_DOMAINNAME_HERE

自行颁发的SSL证书能够实现加密传输功能,但浏览器并不信任,会告警,选择继续或者添加例外可访问。如果要获取受浏览器信任的证书,则需要到证书提供商处申请。证书授证中心,又叫做CA机构,为每个使用公开密钥的用户发放一个数字证书。CA签发的证书一般都价格不菲,小网站可选择一些免费证书,国内免费证书可考虑沃通,比较方便。

另外还可以加入如下代码实现80端口重定向到443:

    server {
       listen 80;
       server_name YOUR_DOMAINNAME_HERE;
       rewrite ^(.*) https://$server_name$1 permanent;
    }

本文转载自:https://www.centos.bz/2011/12/nginx-ssl-https-support/

ccor
粉丝 5
博文 17
码字总数 5629
作品 0
海淀
CTO(技术副总裁)
私信 提问
Nginx开启SSL支持HTTPS(使用Let's Encrypt免费证书)

Let's Encrypt是国外一个公共的免费SSL项目,由 Linux 基金会托管。 它的来头不小,由Mozilla、思科、Akamai、IdenTrust和EFF等组织发起,目的就是向网站自动签发和管理免费证书,以便加速互...

openthings
2018/08/18
0
2
开启全站HTTPS时代-Nginx SSL+tomcat集群

目录: 1、凭证申请 Let’s Encrypt 2、Nginx支持多域名ssl证书 3、Nginx强制使用https访问(http跳转到https) 4、配置 Tomcat SSL For Free 免费 SSL 凭证申请 Let’s Encrypt 什么是Let’s...

Javen205
2017/11/18
0
0
服务器(6)--Nginx实现HTTPS网站设置

一、HTTPS 全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内...

u013043341
2017/12/04
0
0
nginx使用ssl模块配置HTTPS支持

默认情况下ssl模块并未被安装,如果要使用该模块则需要在编译时指定–with-httpsslmodule参数,安装模块依赖于OpenSSL库和一些引用文件,通常这些文件并不在同一个软件包中。通常这个文件名类...

区杰
2016/03/10
434
0
Nginx安装配置详解-修订版

版本更新历史: v1.2更新内容: 添加了proxy_connect正向代理模块的说明 添加了stream配置tcp代理 更新了gzip的配置 修复了大部分安装配置错误 改善了lua安装过程 v1.1更新内容: 集成ngxlu...

Leon_zhang50773
2016/11/17
0
0

没有更多内容

加载失败,请刷新页面

加载更多

GMTC2019|闲鱼-基于Flutter的架构演进与创新

作者:闲鱼技术-宗心 2012年应届毕业加入阿里巴巴,主导了闲鱼基于Flutter的新混合架构,同时推进了Flutter在闲鱼各业务线的落地。未来将持续关注终端技术的演变及趋势 Flutter的优势与挑战 ...

阿里云云栖社区
31分钟前
3
0
迪蒙人工智能共享停车吸引国际关注

  近来,华为创始人任正非多次提及人工智能。即便在华为生死攸关的关键时刻,任正非依旧不忘强调教育的重要性,“如果不重视教育,实际上我们会重返贫穷的,因为这个社会,最终是要走向人工智能的...

琴殇的
32分钟前
1
0
iOS开发之EventKitUI框架的应用

iOS开发之EventKitUI框架的应用 前面博客,有介绍EventKit这个框架的使用,使用EventKit可以与系统的日历和提醒应用进行交互,读写用户的日程事件。EventKitUI,顾名思义,其实基于EventKit框...

珲少
40分钟前
0
0
从MySQL源码看其网络IO模型

从MySQL源码看其网络IO模型 前言 MySQL是当今最流行的开源数据库,阅读其源码是一件大有裨益的事情(虽然其代码感觉比较凌乱)。而笔者阅读一个Server源码的习惯就是先从其网络IO模型看起。于是...

无毁的湖光-Al
41分钟前
0
0
WebService学习笔记

什么是Web Services? Web Services 是应用程序组件 Web Services 使用开放协议进行通信 Web Services 是独立的(self-contained)并可自我描述 Web Services 可通过使用UDDI来发现 Web Serv...

榴莲黑芝麻糊
57分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部