声明:笔者菜鸟一枚,可能由于理解不足,文章多有偏颇,欢迎各种批评。
先简单的说几个小笔记:
openssl enc -des3 -salt -a -in inittab -out inittab.des3
命令 子命令 加密算法 密钥salt信息(有无皆可) base64编码处理数据 对哪个文件 输出到哪个文件
openssl enc -des3 -d -salt -a -in inittab1.des3 -out inittab
-d为解密,其他同上
(umask 077;openssl genrsa -out test.rsa 1024) 私钥
创建私钥,rsa为genrsa
openssl rsa -in test.rsa -pubout 公钥
在已创建的私钥中,提取公钥
现在,要求做一个内部的CA服务端
总体步骤就是:
1、得有个CA内部机构(服务端)
2、这个CA服务端为了声明自身合法,得先自签署个证书出来
3、然后客户端,得有私钥,然后私钥生成个可以被签署的文件
4、客户端把这个需要签署的文件,传递给CA服务端
5、CA服务端成功签好了,把签好的文件,传给客户即可,大致就这么个意思.
############操作加注释如下:##################
CA服务端:
1、vim /etc/pki/tls/openssl.cnf
dir=/etc/pki/CA
默认为相对路径,修改为绝对路径,保证无误
2、cd /etc/pki/CA
# mkdir certs newcerts crl
# touch index.txt
# echo 01 > serial
创建配置文件所需的目录和文件,注意cd命令,甭忘了...
3、自签证书
# (umask 077; openssl genrsa -out private/cakey.pem 2048)
# openssl req -x509 -new -key private/cakey.pem -out cacert.pem -days 3650
x509生成自签证书必备选项,有效期为3650天
然后依次输入:国家、省、城市、公司、部门、主机名、邮件地址
证书申请方:
1、为vsftpd服务生成密钥:此处对vsftpd不做细说,仅示例openssl的内部CA服务器功能
# cd /etc/vsfptd/
# mkdir ssl
# cd ssl
# (umask 077; openssl genrsa 1024 > vsftpd.key) #生成私钥文件
# openssl req -new -key vsftpd.key -out vsftpd.csr
以私钥中的公钥信息,生成需csr(证书签署请求)文件,此步骤为申请方必须的操作
此次生成的文件基于之前生成的私钥文件,尾部无硬规定为.csr,但是这么起名,便于理解
然后依次输入:国家、省、城市、公司、部门、主机名、邮件地址、密码、用户
注意:私有CA机构签发,除了主机名和邮件地址,其他必须保持和服务器一致.
2、将此请求通过某方式传递给CA服务器
可以ftp,scp...但是服务端签署后,必须要把签署生成的*.crt再传递回来
3、CA签署证书(在CA服务器上操作)
# openssl ca -in vsftpd.csr -out vsftpd.crt -days 365
openssl x509 -text -in vsftpd.crt 查看已签署的证书信息