加密机制:
         明文加密:      telnet    ftp   pop3  密码不可靠
                     sendmail   NFS  NIS    信息数据的不可靠
                     rsh   rcp    验证的不可靠      
实现安全的机制:
              1、随机数字生成器(Random Number Generater)
                  /dev/random   系统初始化生成 软设备:生成随机数的字符设备
                  /dev/urandom-- entropy pool 熵池中生成随机数,熵池为空时 采用伪随机数机制 不安全 一般采用random
                     cat /dev/random
              2、单项加密
                     单项加密:提取数据特征码 并不会对数据加密
                     特征:    任意输入,定长输出
                            雪崩效应
                            数据不可逆转
                     常见的算法:
                            md2  md5   mdc2  rmd160   sha  sha1 ---> md5 sha1
              3、对称加密:
                     DES  3DES  AES  Twofish  RC6
              4、非对称加密:公钥加密
                     基于单向函数功能实现,密钥成对出现
加密组件: openssl  gpg(文件加密)                     
                     openssl rand 67 67生成随机数
                     openssl rand -base64 67 将二进制转成
 
数字签名:发送方用私钥加密数据后发给接受方,接受方有对方的公钥解密
 
CA:证书颁发机构 公信力的第三方
OpenCA 管理大量的CA 证书
       CA命令:
              # openssl genrsa 1024 > /root/http.key 生成密钥对
              # openssl rsa -in /root/http.key -pubout 在密钥对导出公钥
              # openssl req -new -key /root/http.key -out ./private/http.csr 生成CA申请
              # openssl req -noout -in /root/http.csr -text  查看CA申请信息
自签证书:一般放在/etc/pki/CA
              # openssl req -new -x509 -key /private/http.key -out ./private/http.crt -days 3655 
openssl的配置文件:/etc/pki/tls/openssl.cnf 可以配置证书默认选项
测试CA证书:# cd /etc/pki/tls/certs
           # make httpd.crt 生成证书
           # make httpd.key 也可以生成私钥
吊销证书:
       # openssl ca -revoke httpd.crt
更新证书列表:
       #openssl ca -gencrl -out httpd.crl
 
OpenSSL的相关配置
一、配置一个CA服务器(192.168.0.21)
1、生成密钥
# cd /etc/pki/CA
# openssl genrsa 1024 > private/cakey.pem 生成密钥对
# chmod 400 private/cakey.pem
2、自签证书
# openssl req -new -x509 -key private/cakey.pem -out cacert.pem -days 3655
根据实际情况填写相关信息
3、编辑openssl的配置文件/etc/pki/tls/openssl.cnf
# vim /etc/pki/tls/openssl.cnf
       找到[ CA_default ]并更改dir的值
       dir = /etc/pki/CA
4、建立所需文件
# mkdir certs newcerts crl
# touch serial index.txt
# echo 01 > serial (16进制 01开始)
二、配置客户端 提供https服务需要证书 客户端ip 192.168.0.65
5、新建并进入工作目录
# cd /etc/httpd
# mkdir certs 存放证书信息
# cd certs
6、模拟客户机生成密钥
# openssl genrsa 1024 > httpd.key
# chmod 400 httpd.key
7、生成并向CA服务器提交申请
# openssl req -new -key httpd.key -out httpd.csr
填写的信息要与CA保持一致
8、将CA申请提交给CA服务器
# scp httpd.csr 192.168.0.21:/tmp  
9、在服务器端192.168.0.21签署证书
# cd /tmp
# openssl ca -in httpd.csr -out  /etc/pki/CA/certs/httpd.crt
证书生成以后就可以直接发给客户端了
#scp /etc/pki/CA/certs/httpd.crt 192.168.0.65:/etc/httpd/certs/