安装SSL证书 and 根域名跳转www域名
1.安装自签证书
自签证书也就是不被公网认可的证书,可在局域网内进行签名认证,其12306也是自签证书,通过证书+nginx代理web服务器 可以实现https连接
一.使用OpenSSL创建证书
建立服务器私钥
openssl genrsa -des3 -out server.key
Generating RSA private key, 1024 bit long modulus
..................++++++
.............++++++
e is 65537 (0x10001)
Enter pass phrase for server.key:
140713263834776:error:28069065:lib(40):UI_set_result:result too small:ui_lib.c:823:You must type in 4 to 1023 characters
Enter pass phrase for server.key:
Verifying - Enter pass phrase for server.key:
必须输入密码,并要这次验证密码
二.生成一个证书请求csr文件
需要依次输入服务器秘钥,国家,地区,组织,email
openssl req -new -key server.key -out server.csr
生成的csr文件交给CA签名后形成服务端自己的证书, 在此说明,common name选项尽量使用域名
三.去除key文件口令的命令
openssl rsa -in server.key -out server.key
四.使用上面的密钥和CSR对证书进行签名
openssl x509 -req -days -sha256 -in server.csr -signkey server.key -out servernew.crt
五.Nginx配置ssl
server {
listen ssl;
server_name myssl.com;
index index.html index.htm index.php;
root /home/wwwroot/myssl;
autoindex on;
include enable-php.conf;
access_log /home/wwwlogs/access.log;
ssl on;
ssl_certificate ssl/servernew002.crt;
ssl_certificate_key ssl/server002.key;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1. TLSv1.;
}
# http重定向https
server {
listen ;
server_name myssl.com;
rewrite ^(.*) https://$server_name$1 permanent;
}
参考:
http://blog.csdn.net/ldx891113/article/details/50456273
http://blog.csdn.net/cangzihu/article/details/53488996
2.安装Let's Encrypt免费SSL证书
Let's Encrypt作为一个公共且免费SSL的项目逐渐被广大用户传播和使用,是由Mozilla、Cisco、Akamai、IdenTrust、EFF等组织人员发起,主要的目的也是为了推进网站从HTTP向HTTPS过度的进程,目前已经有越来越多的商家加入和赞助支持。
到目前为止,Let's Encrypt获得IdenTrust交叉签名,这就是说可以应用且支持包括FireFox、Chrome在内的主流浏览器的兼容和支持。
1.获取letsencrypt git文件 ,并执行生成证书
git clone https://github.com/letsencrypt/letsencrypt
cd letsencrypt
./letsencrypt-auto certonly --standalone --email service@myssl.com -d myssl.com -d myssl.com
在执行letsencrypt时会会安装pythonDev环境(第一次),agree and yes
生成的证书目录在"/etc/letsencrypt/live"下
进入子目录有4个文件
cert.pem - Apache服务器端证书
chain.pem - Apache根证书和中继证书
fullchain.pem - Nginx所需要ssl_certificate文件
privkey.pem - 安全证书KEY文件
2.配置Nginx
server
{
listen ssl;
server_name myssl.com;
index index.html index.htm index.php;
root /home/wwwroot/myssl; #error_page /.html;
include enable-php.conf;
if (!-e $request_filename){
rewrite ^/(.*) /index.php?r=$ last;
}
autoindex on;
ssl on;
ssl_certificate /etc/letsencrypt/live/myssl.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/myssl.com/privkey.pem;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1. TLSv1.;
access_log /home/wwwlogs/access.log access;
} # http重定向https
server {
listen ;
server_name myssl.com;
rewrite ^(.*) https://$server_name$1 permanent;
}
3.自动续期
Let's Encrypt申请的证书会有三个月的有效期
手动:
./letsencrypt-auto certonly --standalone --email service@myssl.com -d myssl.com -d myssl.com
用crontab进行定时执行续期脚本
参考: http://www.open-open.com/lib/view/open1456025126839.html
根域名跳转www域名
if ($host = 'aaa.com') {
rewrite ^/(.*)$ https://www.aaa.com/$1 permanent;
}
安装SSL证书 and 根域名跳转www域名的更多相关文章
- nginx安装SSL证书,并强制跳转https访问
网站最初是nginx代理80端口,实现http访问的.现在要安装SSL证书,使用https访问. 我的nginx根目录是/usr/local/nginx,将申请的SSL证书和key放在/usr/loc ...
- 免费获取SSL证书/一键安装SSL证书/https加密
因为我用的是恒创的香港服务器 虽然价格相较于大促的阿里云贵一些,但是有一个有点不用备案... 安装步骤: 1.登录云主机控制面板, 在 其他管理 中找到并进入 SSL证书 设置. 注意:如拥有多个域名 ...
- MVC图片上传详解 IIS (安装SSL证书后) 实现 HTTP 自动跳转到 HTTPS C#中Enum用法小结 表达式目录树 “村长”教你测试用例 引用provinces.js的三级联动
MVC图片上传详解 MVC图片上传--控制器方法 新建一个控制器命名为File,定义一个Img方法 [HttpPost]public ActionResult Img(HttpPostedFile ...
- oneinstack如何安装ssl证书和配置Let's Encrypt免费SSL证书教程汇总(转)
OneinStack包含以下组合:lnmp(Linux + Nginx+ MySQL+ PHP) LNMP安装SSL安全证书 部署HTTPS:https://www.gworg.com/ssl/309 ...
- SSL安装方法一:在Windows Server 2008安装SSL证书(IIS 7.0)
购买的是GlobalSign 公司的通配符域名型SSL 大致的意思就是“通配符公用名填写*.域名.com,这个下面的所有子域名是不受数量限制的,*可以换成任意字符” 1 生成数字证书签名请求文件(CS ...
- phpStudy模式下安装ssl证书,详细版
phpStudy模式下安装ssl证书,详细版 2017年12月16日 14:27:38 骑着蚂蚁追大象 阅读数:4232 标签: phpstudy安装ssl证书 更多 个人分类: php 版权声明 ...
- phpStudy环境安装SSL证书教程(apache)
https://cloud.tencent.com/product/ssl 此链接是检测域名 证书的可以检测一下 下面是证书配置 小白呢亲测 作为PHP程序员,我们一定要学会使用phpStudy环境集 ...
- Linux+Apache下如何安装SSL证书
最近很多站长在问linux系统平台下如何安装SSL证书?Linux+Apache下如何安装SSL证书?本文整理了关于Linux+Apache下如何安装SSL证书的相关教程供大家参考,更多SSL证书安装 ...
- 网站安装SSL证书成为影响SEO排名的重要因素之一
百度谷歌先后发声明倡导站长们使用https链接,同样的网站,https站点要比http站点拥有更好的排名权重.https已经是网站SEO必须要考虑的环节之一了,而https的必要条件就是安装SSL证书 ...
随机推荐
- uploadify多文件上传实例--C#
下载uploadify文件 http://www.uploadify.com/ HTML(视图) <html lang="zh-cn"> <head> &l ...
- Oracle下查看索引的语句
1. 查询一张表里面索引 select * from user_indexes where table_name=upper('bills'); 2. 查询被索引字段 select * from ...
- MySQL_写锁_lock tables tableName write
pre.环境准备 1.建立两个表S,T,并插入一些数据 --创建表S create table S(d int) engine=innodb; ); --创建表T create table T(c i ...
- 01-oracle学习环境配置
1.安装oracle与SQL Developer oracle10g安装教程 2.创建表空间以及用户 表空间是存储数据文件的容器,由数据文件组成,数据库的所有系统数据和用户数据都必须存储在数据文件中. ...
- Kettle日志中BootFeaturesInstaller错误
到新公司接手了别人的Kettle ETL作业. 发现每次启动 Kettle ,日志中都会出现下面的错误,虽然不影响运行结果,但是看着不爽: 18:41:15,327 INFO [KarafInstan ...
- localStorage sessionStorage cookie indexedDB
目录: localStorage sessionStorage cookie indexedDB localStorage localStorage存储的数据能在跨浏览器会话保留 数据可以长期保留,关 ...
- RabbitMQ 和 Kafka
============================RabbitMQ 术语============================RabbitMQ 有很多术语和Kafka不一样, 理解这些术语十分 ...
- echo 输入背景和字体常用方法
ECHO输出背景颜色以及文字颜色输出格式: echo -e "\033[字背景颜色;文字颜色m字符串\033[0m"例如: echo -e & ...
- VS2017添加引用报错
未能正确加载“ReferenceManagerPackage”包. 此问题可能是因配置更改或安装另一个扩展导致的.可通过查看文件“C:\Users\Administrator\AppData\Roam ...
- 关于js dtGrid报错长度的问题
错误js截图 Uncaught TypeError: Cannot read property 'length' of undefined 翻译:Uncaught TypeError:无法读取未定义的 ...