使用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