Ubuntu Nginx下配置网站ssl实现https访问
2016-01-20 15:40
1106 查看
最近在看 HTTP权威指南 看到介绍了HTTPS的ssl,自己就动手测试了下,将步骤记录下
mkdir ~/ssl/
拷贝 CA.sh到证书目录
cp /usr/lib/ssl/CA.sh ~/ssl/
生成证书
cd ~/ssl/ && sh CA.sh -newca
根据提示填写信息完成后,在demoCA下会生成证书文件,
其中demoCA/private/cakey.pem为ca证书私钥,demoCA/cacert.pem为ca根证书
![](http://cdn.pic1.yunetidc.com/20160120/941fe7cf3050900ae97bf5fc5fd7e554.jpg?imageView/2/w/600)
生成服务器证书
生成私钥: openssl genrsa -des3 -out nginx.key 1024
生成csr文件: openssl req -new -key nginx.key -out nginx.csr
生成证书&签名: openssl ca -in nginx.csr -out nginx.crt
![](http://cdn.pic1.yunetidc.com/20160120/e6941267bca2a33599228caf1573a70f.jpg?imageView/2/w/600)
![](http://cdn.pic1.yunetidc.com/20160120/224be949e301675e1832855736bce882.jpg?imageView/2/w/600)
![](http://cdn.pic1.yunetidc.com/20160120/8682bd29cdbc26d84ced7a048e5f6196.jpg?imageView/2/w/600)
重启服务,输入密码
![](http://cdn.pic1.yunetidc.com/20160120/1a140f65c51027951e6034d673faf0cf.jpg?imageView/2/w/600)
![](http://cdn.pic1.yunetidc.com/20160120/aa08bb08b09b48ed6d432fb597c04dcb.jpg?imageView/2/w/600)
效果预览
![](http://cdn.pic1.yunetidc.com/20160120/8e86e91b0fda29e24c4a8478bdc3a985.jpg?imageView/2/w/600)
![](http://cdn.pic1.yunetidc.com/20160120/aa48b2dba4fb3ab0c052fa4ffb3cefc1.jpg?imageView/2/w/600)
简单方法就是所有的资源文件都不要写协议,例如
"http://www.vincentguo.cn/default/info.js"=>"//www.vincentguo.cn/default/info.js",
这样依赖浏览器来自己决定协议是http还是https
原文地址:Ubuntu Nginx下配置网站ssl实现https访问
标签:nginx https ubuntu openssl ssl
nginx rewrite 参数和例子
解读大型网站的演变过程
virtualbox + ubuntu虚拟机 目录共享
ubuntu12.04 安装 php5.4/php5.5
HTTPS简介
什么是HTTPS?百科是这样解释的。HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。现在它被广泛用于互联网上安全敏感的通讯,例如交易支付等。
使用openssl生成证书
安装openssl
本人ubuntu14.04已经安装了生成ca证书
创建证书目录mkdir ~/ssl/
拷贝 CA.sh到证书目录
cp /usr/lib/ssl/CA.sh ~/ssl/
生成证书
cd ~/ssl/ && sh CA.sh -newca
根据提示填写信息完成后,在demoCA下会生成证书文件,
其中demoCA/private/cakey.pem为ca证书私钥,demoCA/cacert.pem为ca根证书
![](http://cdn.pic1.yunetidc.com/20160120/941fe7cf3050900ae97bf5fc5fd7e554.jpg?imageView/2/w/600)
生成服务器证书
生成私钥: openssl genrsa -des3 -out nginx.key 1024生成csr文件: openssl req -new -key nginx.key -out nginx.csr
生成证书&签名: openssl ca -in nginx.csr -out nginx.crt
![](http://cdn.pic1.yunetidc.com/20160120/e6941267bca2a33599228caf1573a70f.jpg?imageView/2/w/600)
![](http://cdn.pic1.yunetidc.com/20160120/224be949e301675e1832855736bce882.jpg?imageView/2/w/600)
![](http://cdn.pic1.yunetidc.com/20160120/8682bd29cdbc26d84ced7a048e5f6196.jpg?imageView/2/w/600)
Nginx 配置
虚拟主机监听443端口并配置证书重启服务,输入密码
![](http://cdn.pic1.yunetidc.com/20160120/1a140f65c51027951e6034d673faf0cf.jpg?imageView/2/w/600)
![](http://cdn.pic1.yunetidc.com/20160120/aa08bb08b09b48ed6d432fb597c04dcb.jpg?imageView/2/w/600)
效果预览
![](http://cdn.pic1.yunetidc.com/20160120/8e86e91b0fda29e24c4a8478bdc3a985.jpg?imageView/2/w/600)
![](http://cdn.pic1.yunetidc.com/20160120/aa48b2dba4fb3ab0c052fa4ffb3cefc1.jpg?imageView/2/w/600)
获取免费ssl证书
目前免费证书机构并且被浏览器支持信任的不对,startssl算是一家了,有需要的可以自己去申请,官网网址:https://startssl.com注意问题
资源文件必须改成https的简单方法就是所有的资源文件都不要写协议,例如
"http://www.vincentguo.cn/default/info.js"=>"//www.vincentguo.cn/default/info.js",
这样依赖浏览器来自己决定协议是http还是https
原文地址:Ubuntu Nginx下配置网站ssl实现https访问
标签:nginx https ubuntu openssl ssl
智能推荐
nginx处理问题笔记nginx rewrite 参数和例子
解读大型网站的演变过程
virtualbox + ubuntu虚拟机 目录共享
ubuntu12.04 安装 php5.4/php5.5
相关文章推荐
- HTTP协议详解
- iOS应用架构谈(三):网络层设计方案
- android网络编程 四(android-async-http)
- Android实时监听网络状态
- http 安全验证
- 图片的三级缓存策略(内存LruCache+磁盘DiskLruCache+网络Volley)
- ASIHTTPRequest开源类项目导入问题及解决方法
- HTTPS那些事(一)HTTPS原理
- cisco iou配合GNS3连接真实网络或虚拟主机
- 好的网络诗文
- 基于Windows的 wininet 网络库 写的访问服务器接口的函数
- HTTPS与SSL
- OSI模型与TCP/IP协议族
- 发送HTTP请求 -- HttpClientUtil
- Windows 无法自动将 IP 协议堆栈绑定到网络适配器。解
- 网络软中断与NAPI函数分析
- 使用afinal 中的finalhttp和finalbitmap访问网络资源+finalActivity
- centos下网络配置方法(网关、dns、ip地址配置)
- 从框架到完整项目搭建,实战项目《约个球》(5)-为我们自己的框架导入网络的开源框架
- 网络测试常用的命令-比较ping,tracert和pathping等命令之间的关系