SSL协议与CA服务器的自建

    SSL是Secure Sockets Layer(安全套接层协议)的缩写,可以在Internet上提供秘密性传输。网景

Netscape公司在推出第一个Web浏览器的同时,提出了SSL协议标准。其目标是保证两个应用间通信的保密性和可靠性,可在服务器端和用户端同时实现支持。已经成为Internet上保密通讯的工业标准。
       安全套接层协议能使用户/服务器应用之间的通信不被攻击者窃听,并且始终对服务器进行认证,还可选择对用户进行认证。SSL协议要求建立在可靠的传输层协议(TCP)之上。SSL协议的优势在于它是与应用层协议独立无关的,高层的应用层协议(例如:HTTP,FTP,TELNET等)能透明地建立于SSL协议之上。SSL协议在应用层协议通信之前就已经完成加密算法、通信密钥的协商及服务器认证工作。在此之后应用层协议所传送的数据都会被加密,从而保证通信的私密性.
       SSL协议具有三个特性:
数据的保密性,数据的完整性,安全验证
       OpenSSL包含一个命令行工具用来完成OpenSSL库中的所有功能。

 密码的算法有以下几种:
    1、对称加密 2、公钥加密
    3、单向加密 3、认证协议
       对称加密算法有DES 3DES AES(128,192,256等)blowfish twofish IDEA…… 其特点是加密解密使用同一口令;将明文分隔成固定大小的块,逐个进行加密。也具有密钥过多,传输等风险。
    公钥加密:也叫非对称(密钥)加密,指的是由对应的一对唯一性密钥(即公开密钥和私有密钥)组成的加密方法。
常见算法有RSA,DSA,等。

        单向加密:非可逆加密,不可解密。
 Linux下的加密工具OpenSSL
   OpenSSL:多用途命令工具,各功能分别使用子命令实现。libcrypto,公共加密库,libssl,SSL协

议的实现。
    对称加密:
# openssl enc -des3 -a -salt -in /path/from/somefile -out /path/to/somecipherfile
 enc 加密工具  -des3 加密算法 -in 输出文件  -out加密后的文件位置
    单向加密
# openssl dgst [-md5|-sha1] [-out /path/to/filename] /path/from/somefile
生成随机数:openssl rand -base64|-hex num(位数)
生成密钥: # (umask 077; openssl genrsa  -out /path/to/keyfile NUMBEROFBITS )
提出公钥:# openssl rsa -in /path/from/private_key_file -pubout

如何自建一个CA服务器

一、建立CA服务器

1、生成密钥

wKiom1Pd2NbyS6m0AAAUFF7SIkE676.png

2、自签证书

wKioL1Pd2iSwzA9BAAAs0TbWCBU906.png

req: 生成证书签署请求

 -news: 新请求  -key /path/to/keyfile: 指定私钥文件 -out /path/to/somefile: 输出文件 -x509: 生成自签署证书  -days n: 有效天数

Country Name (2 letter code)[XX]:cn--------国家
 State or Province Name (full name)[]:ning---------省份
 Locality Name (eg, city) [DefaultCity]:ning--------------地区名字
 Organization Name (eg, company)[Default Company Ltd]:ning------公司名
 Organizational Unit Name (eg,section) []:ning-----部门
 Common Name (eg, your name or yourserver's hostname) []:wukui----CA主机名
 Email Address []:---------邮箱

3、初始化工作环境

 wKiom1Pd2W6zDg6pAAAOjA-ywTA197.png

 二、节点申请证书

1、生成密钥对

wKioL1Pd2yjwtBhUAAASL7Rxhos446.png

2、生成证书签署请求

wKioL1Pd20iyO2LmAABENLjUsMo692.png

3、把签署请求文件发送给CA服务wKiom1Pd2oCQ3AWTAAAOnTG-sWk655.png

CA签署请求证书

1、验证证书中的信息

2、签署证书

wKioL1Pd59WCB8b_AAAkWhjxdgk157.png

3、发送给请求者

wKiom1Pd5t3AebecAAAOJ67OV1o623.png

 

 

 

证书的吊销

1、节点

获取证书serial

# openssl x509 -in /path/to/certificate_file.crt -noout -serial -subject
x509:格式
 -in:要吊销的文件路径   -noout:不输出任何额外信息
-serial:生成的序列号      -subjiect:输出subjiect的信息

2,根据节点提交的serial和subject信息来验正与CA服务器中index.txt文件中的信息是否一致;

3、吊销证书

 # openssl  ca -revoke/etc/pki/CA/newcerts/SERIAL.pem

4、生成吊销证书的编号(如果是第一次吊销)
 # echo 00 >/etc/pki/CA/crlnumber

5、更新证书吊销列表文件
 #cd /etc/pki/CA/crl/----切换到证书吊销列表文件下
 # openssl ca -gencrl -outning.crl(吊销证书名字随便起)

查看crl文件中的内容

# openssl crl -in /path/to/crlfile.crl -noout -text

你可能感兴趣的:(浏览器,服务器,internet,安全套,私密性)