使用opnessl进行文件加密
[root@feitian ~]# openssl enc -des3 -salt -a -in /etc/inittab -out /mnt/inittab.des3
enter des-ede3-cbc encryption password: #输入密码
Verifying - enter des-ede3-cbc encryption password: #重复输入密码
-a 基于64位的库进行加密
-salt 在加密时使用salt
-des3 基于对称加密算法DES3,就是你的加密使用的算法
- in 要加密的文件
- out 要输出到那个文件
- 解密
openssl enc -des3 -d -salt -a -in /mnt/inittab.des3 -out /mnt/inittab
提取数据的特征码
#首先使用sha1sum和md5sum进行提取数据特征码
[root@feitian mnt]# sha1sum inittab
22a27cacaf1d552fe38d71f98fd7bd2d6f6f6ac2 inittab
[root@feitian mnt]# md5sum inittab
48068226d869ca629629554d324e69c8 inittab
[root@feitian mnt]# openssl dgst -sha1 inittab
SHA1(inittab)= 22a27cacaf1d552fe38d71f98fd7bd2d6f6f6
[root@feitian mnt]# openssl dgst -md5 inittab
MD5(inittab)= 48068226d869ca629629554d324e69c8
[root@feitian mnt]# openssl dgst -md5 inittab
MD5(inittab)= 48068226d869ca629629554d324e69c8
注意这里使用相同的算法提取特征码,结果一样
使用openssl生成密码串
[root@feitian mnt]# openssl passwd -1
Password:
Verifying - Password:
$1$Cb1P8fiX$Q0TBrZs678KPL1XDJoezA1
这里和我们/etc/shadow中保存的密码一样,这里注意salt相同,相同的密码加密结果相同
[root@feitian mnt]# openssl passwd -1 -salt Cb1P8fiX
Password:
$1$Cb1P8fiX$Q0TBrZs678KPL1XDJoezA1
使用openssl生成伪随机数
[root@feitian mnt]# openssl rand -base64 45
MdGPzBDVF1gcSomGHcP3IazvPnndb6yYpdTFYLgP+X0F5sWR+oIFp/RL9Y6D
#45是加密长度
openssl实现私有CA
- genrsa 生成rsa的私钥(一般CA证书使用rsa)
- gendsa生成dsa的私钥
#第一步生成私钥:
[root@feitian mnt]# (umask 077 ;openssl genrsa 1024 >serverkey
#注意使用括号,是指定命令在子shell中执行,执行完直接退出
#生成公钥
[root@feitian mnt]# openssl rsa -in serverkey -pubout
#生成CA
[root@feitian mnt]# openssl req -new -x509 -key serv
#使用文本查看证书信息
[root@feitian mnt]# openssl x509 -text -in server.crt
erkey -out server.crt -days 365
#修改CA的配置文件,更改生成默认值
[root@feitian tls]# pwd
/etc/pki/tls
[root@feitian tls]# vim openssl.cnf
#私钥的存放地址
[root@feitian private]# pwd
/etc/pki/CA/private
[root@feitian private]# (uamsk 077;openssl genrsa -out cakey.pem 2048)
[root@feitian private]# cd ..
[root@feitian CA]# openssl req -new -x509 -key cakey.pem -out cacert.pem
#创建需要的目录
[[root@feitian CA]# mkdir certs newcerts crl
[root@feitian CA]# touch index.txt
[root@feitian CA]# touch serial
#另外一个主机先CA模拟申请证书
#首先创建私钥
[root@loveyu ssl]# (umaskt 077;openssl genrsa -out httpd.key 1024)
#填写好证书信息,向CA提交
[root@loveyu ssl]# openssl req -new -key httpd.key -out httpd.csr
[root@feitian mnt]# openssl ca -in httpd.csr -out httpd.crt -days 100