一、openssl检查安装
1、查看系统是否安装:openssl version -a
2、ubontu系统安装:
sudo apt-get install openssl
sudo apt-get install libssl-dev
3、centos系统安装:
1 //解压openssl安装包 2 tar xvzf openssl-1.0.0d.tar.gz 3 //进入解压后的目录 4 cd openssl-1.0.0d 5 //修改openssl配置文件 6 ./configure --prefix=/usr/local/openssl 7 //编译代码 8 make 9 //安装 10 make install 11 //安装curses.h头文件的库 12 sudo apt-get install libncurses5-dev
二、颁发证书
ca.crt 为自签名证书;
server.crt,server.key 为服务器端的证书和私钥文件;
proxy.crt,proxy.key 为代理服务器端的证书和私钥文件;
client.crt,client.key 为客户端的证书和私钥文件。
1、生成根证书私钥
1 openssl genrsa -out /home/ssl/CA/ca.key 2 3 #利用私钥生成一个根证书的申请,一般证书的申请格式都是csr。所以私钥和csr一般需要保存好 4 openssl req -new -key /home/ssl/CA/ca.key -out /home/ssl/CA/ca.csr 5 6 #自签名的方式签发我们之前的申请的证书,生成的证书为ca.crt 7 openssl x509 -req -days 3650 -in /home/ssl/CA/ca.csr -signkey /home/ssl/CA/ca.key -out /home/ssl/CA/ca.crt 8 9 #为我们的证书建立第一个序列号,一般都是用4个字符,这个不影响之后的证书颁发等操作 10 echo FACE > /home/ssl/CA/serial 11 12 #建立ca的证书库,不影响后面的操作,默认配置文件里也有存储的地方 13 touch /home/ssl/CA/index.txt 14 15 #建立证书回收列表保存失效的证书 16 openssl ca -gencrl -out /home/ssl/CA/ca.crl -crldays 7 17
2、生成服务器证书
1 #建立服务器验证证书的私钥 2 openssl genrsa -out /home/ssl/server/server.key 3 4 #生成证书申请文件 5 openssl req -new -key /home/ssl/server/server.key -out /home/ssl/server/server.csr 6 7 #利用根证书签发服务器身份验证证书 8 openssl ca -in /home/ssl/server/server.csr -cert /home/ssl/ca.crt -keyfile /home/ssl/ca.key -out /home/ssl/server/server.crt 9 10 #至此,服务器端身份认证证书已经完成,可以利用证书和私钥生成pfx格式的证书给微软使用,命令如下: 11 openssl pkcs12 -export -clcerts -in /home/ssl/server/server.crt -inkey /home/ssl/server/server.key -out
3、生成客户端证书
1 #生成私钥 2 openssl genrsa -des3 -out /home/ssl/client/client.key 1024 3 4 #生成证书请求文件 5 openssl req -new -key /home/ssl/client/client.key -out /home/ssl/client/cient.csr 6 7 #签发证书 8 openssl ca -in /home/ssl/client/client.csr -cert /home/ssl/ca.crt -keyfile /home/ssl/client/client.crt 9 10 #客户端证书完成