简介

SSL证书是数字证书的一种类似于驾驶证、护照和营业执照的电子副本。因为配置在服务器上,也称为SSL服务器证书。SSL 证书就是遵守SSL协议,由受信任的数字证书颁发机构CA,在验证服务器身份后颁发,具有服务器身份验证和数据传输加密功能。

阿里云SSL证书的配置非常简单,申请完成,打包下载放到你的web服务器上即可;与阿里云的SSL证书不同,GoDaddy作为一个专门的域名和SSL证书服务的提供商,其为保证SSL证书的安全性,整个证书的操作过程都需要自己来做,本篇文章就主要介绍在GoDaddy上SSL证书的制作和安装,同时介绍一下SSL的工作原理,希望对需要的小伙伴有所帮助。

SSL证书的工作原理

证书主要作用是在SSL握手中,我们来看一下SSL的握手过程,如下图的步骤

  1. 客户端提交https请求
  2. 服务器响应客户,并把证书公钥发给客户端
  3. 客户端验证证书公钥的有效性
  4. 有效后,会生成一个会话密钥
  5. 用证书公钥加密这个会话密钥后,发送给服务器
  6. 服务器收到公钥加密的会话密钥后,用私钥解密,回去会话密钥
  7. 客户端与服务器双方利用这个会话密钥加密要传输的数据进行通信

GoDaddy 证书制作过程

制作CSR证书签署请求文件

生成证书签署请求CSR(Certificate Signing Request)文件,本文以glinux.top域名为例,自己使用中请做相应替换,需要填写的信息中,请注意Common Name,应为泛域名地址,如: *.glinux.top ,在linux命令行,使用openssl工具执行如下命令

openssl req -new -newkey rsa:2048 -nodes -keyout glinux.top.key -out glinux.top.csr

Generating a 2048 bit RSA private key
.......................+++
...................+++
writing new private key to 'glinux.top.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:CN
State or Province Name (full name) []:ZhejiangSheng
Locality Name (eg, city) [Default City]:Hangzhou
Organization Name (eg, company) [Default Company Ltd]:glinux
Organizational Unit Name (eg, section) []:DevOps
Common Name (eg, your name or your server's hostname) []:*.glinux.top
Email Address []: Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:

生成两个文件,glinux.top.csr为证书签署请求,glinux.top.key为客户端解密数据使用的私钥

(可选)将证书签署请求内容输入到该网站https://www.ssldun.com/tools/csr-decoder.php#results进行解码,验证信息是否正确,如下图。

CA(Certification Authorities)对请求进行签署

打开GoDaddy中所购买的SSL证书,点击生成密钥和管理,填写相关证书签署请求内容,即生成的glinux.top.csr文件内容,验证域名持有者信息,一般有两种方式,通过邮件或者在DNS添加解析记录,等待证书的签发。

证书的安装

待证书签发完成,找到证书下载页,选择对应的web服务类型,如果不存在,请选择其他,此处以nginx web服务类型为主

下载完成,将解压出的文件合并成一个文件,并命名为crt格式,即为证书文件

cat fd72a4fa7c1de0e3.crt gd_bundle-g2-g1.crt > glinux.top.crt

更新nginx配置文件以使用 SSL 证书

server {
listen 80 default_server;
server_name example.htrader.cn;
return 301 https://$host$request_uri;
} server {
listen 443 ssl http2 default_server;
server_name example.glinux.top;
root /usr/share/nginx/html; ssl_certificate "/etc/nginx/conf.d/glinux.top.crt";
ssl_certificate_key "/etc/nginx/conf.d/glinux.top.key";
index index.php index.html index.htm
}

参考文档

SSL:GoDaddy SSL证书制作和安装的更多相关文章

  1. Godaddy SSL 安装及Tomcat 7配置

    基础环境:Centos 7.X 1. 安装tomcat 与java 环境: 2.使用jre 程序的keytool 生成密钥,java 我使用解压版本并运行目录在/usr/java, 生成tomcat. ...

  2. LNMP安装Let’s Encrypt 免费SSL证书方法:自动安装与手动配置Nginx

    前几天介绍了最新StartSSL免费SSL申请与配置,很多人看到部落介绍SSL证书安装时总是推荐了OneinStack,因为OneinStack提供了一键添加和配置Let's Encrypt 免费SS ...

  3. goDaddy SSL证书 Nginx配置全流程 (转)

    好长时间没动过这玩意了,今天突然用到,忘的一干二净.在此做个笔记吧! 一.购买Godaddy SSL证书 1.打开Godaddy官网 http://www.godaddy.com/: 2.点击网站导航 ...

  4. 阿里云 Ubuntu16.04 apache2 ssl证书下载与安装(必须有域名)

    阿里云申请免费SSL证书并下载(包含xxx.key|xxx._root_bundle.crt|xxx._public.crt三个文件) 用https是自己的网站收到保护,不易被攻克,所以保护自己的网站 ...

  5. 免费https/ssl通配证书(letsencrypt)安装

    教程:免费https/ssl通配证书(letsencrypt)安装 前置条件 开发443端口 关闭nginx .获取脚本 wget https://dl.eff.org/certbot-auto .执 ...

  6. tsl/ssl 证书制作记录

    生成自签名证书 生成服务端秘钥 $ openssl genrsa -out server.key 1024 生成证书请求文件 编写配置文件openssl.cnf $ vi openssl.cnf [r ...

  7. asio制作使用ssl通信的证书

    1,生成ca的keyopenssl genrsa -out ca.key 1024/2048 (with out password protected) openssl genrsa -des3 -o ...

  8. Godaddy ssl续费更新问题总结

    之前客户在Godaddy 上购买的ssl证书过期了,但客户续费后打开https时却提示证书过期了 进行Godaddy 后台看到证书确实是过期的 但在账户里也确实看到ssl续费成功了 猜想可能是ssl续 ...

  9. HTTPS、SSL与数字证书介绍

    在互联网安全通信方式上,目前用的最多的就是https配合ssl和数字证书来保证传输和认证安全了.本文追本溯源围绕这个模式谈一谈. 名词解释 HTTPS:在HTTP(超文本传输协议)基础上提出的一种安全 ...

随机推荐

  1. linux各目录及重要目录的详细介绍

    1 目录说明 根目录 (/) /bin bin是Binary的缩写, 这个目录存放着最经常使用的命令,比如ls,cat,mkdir等 /dev dev是Device(设备)的缩写, 该目录下存放的是L ...

  2. Theia APIs——Preferences

    上一篇:Theia APIs——命令和快捷键 Preferences Theia有一个preference service,模块可以通过它来获取preference的值,提供默认的preference ...

  3. Serv_U FTP服务端使用教程

    Serv-U FTP Server是一种被广泛运用的FTP服务器端软件,可以设定多个FTP服务器.限定登录用户的权限.登录主目录及空间大小等,功能非常完备.具有非常完备的安全特性,支持SSl FTP传 ...

  4. Fabric1.4:链码管理与测试

    1 链码介绍 智能合约在 Hyperledger Fabric 中称为链码(chaincode),是提供分布式账本的状态处理逻辑.链码被部署在fabric 的网络节点中,能够独立运行在具有安全特性的受 ...

  5. Java 遍历集合时产生的ConcurrentModificationException异常

    前几天做Java实验的时候,打算用foreach遍历一个ArrayList集合,并且当集合中的某个元素符合某个值时删除这个元素.写完运行时抛出了ConcurrentModificationExcept ...

  6. CF - 一直交换元素的规律

    Dima is a beginner programmer. During his working process, he regularly has to repeat the following ...

  7. Java入门 - 面向对象 - 04.抽象类

    原文地址:http://www.work100.net/training/java-abstract.html 更多教程:光束云 - 免费课程 抽象类 序号 文内章节 视频 1 概述 2 Java抽象 ...

  8. CCPC-Wannafly Winter Camp Day 1

    B. 密码学 题意: 告诉你关于字符串加密的方法,然后给你一些加密操作和加密后的字符串,让你求原来的串 思路: 知道被加密后的串与加密字符可以向前推出被加密之前的串,不断向前模拟即可 #include ...

  9. SSM框架整合中,不报错,数据库只能存ID进去问题解决

    嗯,这个错误其实不能算错误,是粗心造成的,在配置文件中对于传递的参数没有写#字符,直接写的的属性名.居然错了两次,哎!!! 嗯,还有一个问题,在动态SQL中,if标签中test属性中判断时,不能用大写 ...

  10. Node.js实操练习(一)之Node.js+MySQL+RESTful

    前言 最近学习了一下node.js相关的内容,在这里初步做个小总结,说实话关于本篇博客的相关内容,自己很久之前就已经有过学习,但是你懂的,“好记性不如烂笔筒”,学过的东西不做笔记的话,很容易就会忘记的 ...