zoukankan      html  css  js  c++  java
  • 关于ssl证书的一些知识

    前言:

    最近有一个网站要启用ssl,需要要CA申请ssl证书,以前对这一块体会不多,特将此过程记录下来,以便后续参考

    一 证书的功能

    1)保证网站 的真实性

    2)保证信息传输的机密性

    二 证书的分类

    1) 扩展验证型(EV)SSL证书
    2) 组织验证型(OV)SSL证书
    3) 域名验证型(DV)SSL证书
     
    三 证书的工作流程
    a)  用户连接到你的Web站点,该Web站点受服务器证书所保护。(可由查看 URL的开头是否为"https:"来进行辩识,或浏览器会提供你相关的信息)。
    b)  你的服务器进行响应,并自动传送你网站的数字证书给用户,用于鉴别你的网站。
    c)  用户的网页浏览器程序产生一把唯一的“会话钥匙码,用以跟网站之间所有的通讯过程进行加密。
    d)  使用者的浏览器以网站的公钥对交谈钥匙码进行加密,以便只有让你的网站得以阅读此交谈钥匙码。
    具有安全性的通讯过程已经建立。这个过程仅需几秒钟时间,且使用者不需进行任何动作。依不同的浏览器程序而定,使用者会看到一个钥匙的图标变得完整,或一个门栓的图标变成上锁的样子,用于表示工作阶段具有安全性。
     
    四 如何申请
    1.制作CSR文件。
    SSL证书 CSR就是Certificate Signing Request证书请求文件。这个文件是由申请人制作,在制作的同时,系统会产生2个密钥,一个是公钥就是这个CSR文件,另外一个是私钥,存放在服务器上。要制作CSR文件,申请人可以参考WEB SERVER的文档,一般APACHE等,使用OPENSSL命令行来生成KEY+CSR2个文件,Tomcat,JBoss,Resin等使用KEYTOOL来生成JKS和CSR文件,IIS通过向导建立一个挂起的请求和一个CSR文件。
    2.CA认证。
    将CSR提交给CA,CA一般有2种认证方式:
    1.域名认证,一般通过对管理员邮箱认证的方式,这种方式认证速度快,但是签发的证书中没有企业的名称;
    2.企业文档认证,需要提供企业的营业执照。一般需要3-5个工作日。 也有需要同时认证以上2种方式的证书,叫EV证书,这种证书可以使IE7以上的浏览器地址栏变成绿色,所以认证也最严格。
    3.证书的安装。
    在收到CA的证书后,可以将证书部署上服务器,一般APACHE文件直接将KEY+CER复制到文件上,然后修改HTTPD.CONF文件;TOMCAT等,需要将CA签发的证书CER文件导入JKS文件后,复制上服务器,然后修改SERVER.XML;IIS需要处理挂起的请求,将CER文件导入。
     
    五 Apache下如何生成CSR文件
    1) 找到apache 安装目录,进行bin子目录
     
    C:UsersAdministrator>cd C:BtSoftapachein
     2) 指定openssl.cnf文件的路径并生成服务器私钥文件 www.fornaria.com.key
          因为是windows版本,所以没有使用 -des3 选 项,否则会出现错误:
          Apache启动失败,错误提示是:Init: SSLPassPhraseDialog builtin is not supported on Win32 (key file .....)  原因是window下的apache不支持加密的私钥文件。
    C:BtSoftapachein>set OPENSSL_CONF=..confopenssl.cnf
    C:BtSoftapachein>openssl genrsa 1024 > www.fornarina.com.key  

      3) 生成证书请求CSR文件 www.fornarina.com.csr

    C:BtSoftapachein>openssl req -new -key www.fornarina.com.key > www.fornarina
    .com.csr
    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) [AU]:HK
    State or Province Name (full name) [Some-State]:HongKong
    Locality Name (eg, city) []:HongKong
    Organization Name (eg, company) [Internet Widgits Pty Ltd]:Fornarina
    Organizational Unit Name (eg, section) []:Fornarina Int'l Co.,Ltd.
    Common Name (e.g. server FQDN or YOUR name) []:www.fornarina.com
    Email Address []:fornarinainternational@gmail.com
    
    Please enter the following 'extra' attributes
    to be sent with your certificate request
    A challenge password []:
    An optional company name []:
    
    C:BtSoftapachein>
  • 相关阅读:
    【MySQL】JavaWeb项目中配置数据库的连接池
    【Java】Struts2配置默认Action和配置Action的默认处理类
    【Java】Struts2中使用ServletAPI
    【JavaScript】JS对象-属性的遍历,删除对象属性
    nginx 的三种虚拟主机配置方法
    nginx官方源安装-主配置文件详解
    http协议工作原理及工作流程
    ssh安全优化免密登陆
    sersync 实时同步网站数据
    nfs 共享存储
  • 原文地址:https://www.cnblogs.com/yuchsheng/p/12185527.html
Copyright © 2011-2022 走看看