• SSL:Ubuntu证书配置


    CA证书的配置

    Ubuntu上CA证书的配置可以通过工具ca-certificates来方便的进行。该工具默认是随Ubuntu安装的,如果没有可以通过下面的命令来安装:

    sudo apt-get install ca-certificates

    需要安装CA证书我们只需要将其放在”/usr/share/ca-certificates”目录或其子目录下,ca-certificates工具就能自动扫描到。为了不与其它根证书混淆,我们创建一个子目录名为”extra”:

    sudo mkdir /usr/share/ca-certificates/extra

    然后将待安装的证书拷贝到刚刚创建的目录下:

    sudo cp CASHLibCACert.crt /usr/share/ca-certificates/extra/CASHLibCACert.crt

    (注意这里的证书是.crt的扩展名)

    接下来让ca-certificates工具帮我们安装CA证书:

    sudo dpkg-reconfigure ca-certificates

    clip_image002[4]

    选择”Yes”,我们能看到待安装的CA证书已经被扫描到了,选中它(点空格键)然后选”OK”就行了。

    clip_image004[4]

    看到这样的消息就说明CA证书已经安装成功了

    clip_image006[4]

    那么安装的CA证书在哪里呢,Ubuntu把所有的证书都放在”/etc/ssl/certs”目录下,包括CA证书和普通的证书。来看看刚刚安装好的证书:

    clip_image008[4]

    CASHLibCACert.pem就是CA证书。 我们安装的时候证书扩展名是.crt,安装后扩展名变为了.pem。这两者的内容其实是一样的。CASHLibCACert.pem就是CA证书。 我们安装的时候证书扩展名是.crt,安装后扩展名变为了.pem。.crt证书是按base64编码的,如果.pem也采用base64编码,那么这两者是可以通用的。在本例中,CA证书的内容在安装前后没有变化。

    普通证书的配置

    普通证书是指除CA之外的证书,真正用来做身份认证或签名的证书。相对而言,CA证书用来验证普通证书的可信性。

    普通证书没有特别的安装步骤,放在任意可以访问的目录下就可以了。当然也可以拷贝到Ubuntu的证书目录下,跟刚刚安装的CA证书在同一目录——”/etc/ssl/certs”

    证书的使用

    以Python代码为例,测试采用TLS协议的SSL连接:

    import socket,ssl,pprint
    addr=('10.175.13.159', 56001)
    s =socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    s.connect(addr)
    #cert_file="/home/guagua/Documents/CASHLibClient.pem"
    cert_file="/etc/ssl/certs/CASHLibClient.pem"
    ssl_sock=ssl.wrap_socket(s,certfile=cert_file,ca_certs="/etc/ssl/certs/CASHLibCACert.pem"
        ,cert_reqs=ssl.CERT_REQUIRED,ssl_version=ssl.PROTOCOL_TLSv1)
    peername = ssl_sock.getpeername()
    print peername

  • 相关阅读:
    SpringMVC框架搭建
    java事务的概念
    SpringMVC框架
    JAVA多线程面试题
    MD5加密
    java对象和xml的转换
    eclipse环境配置
    关于枚举类的使用
    定时器的使用
    关于AS-OS
  • 原文地址:https://www.cnblogs.com/rader/p/3781880.html
Copyright © 2020-2023  润新知