加密机制:<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
明文加密: 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/
转载于:https://blog.51cto.com/jingmu/508044