申请的证书,规划存放在/etc/httpd/conf.d/ssl
一、在申请的服务器上:
1 cd /etc/pki/CA/
二、生成一个4096位的,会放在 当前目录的 private/cakey.pem 下(这里生成的CA自己的私钥)
1 (umask 077;openssl genrsa -out private/cakey.pem 4096)
三、用自签名的证书,给自己颁发一个证书
1 openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -out /etc/pki/CA/cacert.pem -days 3650
四、记录证书编号
1 touch /etc/pki/CA/index.txt 2 echo 01 >/etc/pki/CA/serial
五、在需要申请ca的服务器上申请证书
1 mkdir /etc/httpd/conf.d/ssl/ 2 cd /etc/httpd/conf.d/ssl
六、生成一个httpd 专有的私钥文件
1 (umask 066;openssl genrsa -out httpd.key 1024)
七、利用私钥文件,生成证书申请文件
openssl req -new -key httpd.key -out httpd.csr
#这里的信息要和上面的填的一模一样,网站则填对应的网站即可
八、颁发证书,在CA服务器上(-days表示证书有效时间,内部用户可以适当长点)
1 cd /etc/pki/CA/ 2 openssl ca -in /etc/pki/CA/httpd.csr -out /etc/pki/CA/certs/httpd.crt -days 1000
九、复制CA的证书到申请证书的服务器上
1 scp cacert.pem 192.168.1.7:/etc/httpd/conf.d/ssl
在/etc/httpd/conf.d/ssl下现在有四个文件
1 httpd.crt 证书文件 2 httpd.key 私钥 3 httpd.csr 证书申请文件,这里暂时没有用了 4 cacert.pem CA自己的证书
十、修改配置文件,如果没有这个文件的话需要安装mod_ssl 模块
1 vim /etc/httpd/conf.d/ssl.conf 2 将原来的这行:SLCertificateFile /etc/pki/tls/certs/localhost.crt 3 替换成 SSLCertificateFile /etc/httpd/conf.d/ssl/httpd.crt 4 将这行:SSLCertificateKeyFile /etc/pki/tls/private/localhost.key 5 替换成 6 将根证书CASSLCertificateChainFile /etc/pki/tls/certs/server-chain.crt 7 替换成现在的SSLCertificateChainFile /etc/httpd/conf.d/ssl/cacert.pem
1 yum install mod_ssl
在Windows上使用的话,只需要把证书导入到Windows上,在添加都受信任的里面就行