Apache-配置支持HTTPSSSL证书-生成CA证书.doc
文本预览下载声明
Apache 配置支持HTTPS的SSL证书在设置Apache + SSL之前, 需要做:
安装Apache, 下载安装Apache时请下载带有ssl版本的Apache安装程序.
并且ssl需要的文件在如下的位置:
?
? ? [Apache安装目录]/modules/ mod_ssl.so
? ? [Apache安装目录]/bin/ openssl.exe, libeay32.dll, ssleay32.dll, f
? ? [Apache安装目录]/conf/ f
创建SSL证书(注意,我下载的是PHPStudy里面自带了openssl,但是bin目录下没有f,需要将conf下的f拷贝一份到bin目录下,但总体原理一样)
?
一.生成一个带CA(Certificate Authority)授权的证书
打开CMD,进入到Apache安装目录下的bin目录下:
步骤一:
? ? ? ?执行命令,生成私钥:
openssl genrsa -out tian_server.key 2048
? ? ? ?(RSA密钥对的默认长度是1024,取值是2的整数次方,并且密钥长度约长,安全性相对会高点)。?
? ? ? 完成密钥server.key生产完毕后进行步骤二操作。
步骤二:
配置f
请确保以下数据这里所要求的值
default_md?= md5 #默认是default,会触发[default digest message is not supported ]
req_extensions = v3_req #默认签名被注释了
[ v3_req ]
basicConstraints = CA:FALSEkeyUsage = nonRepudiation, digitalSignature, keyEnciphermentsubjectAltName = @alt_names ?#此项不存在,需要添加
[ alt_names ] #此项不存在,需要添加,注意DNS.x
DNS.1 = #自定义DNS.2 = ?#自定义DNS.3 = ?#自定义DNS.4 = ?#自定义DNS.5 = ?#自定义DNS.6 = ?#自定义
然后创建目录和文件
demoCA/
? ? ? ? ?newcerts/
? ? ? ? ?private/
? ? ? ? ?index.txt
? ? ? ? ?index.txt.attr
? ? ? ? ?serial #此文件初始值输入00即可
生成Certificate Signing Request文件,用于向CA机构申请证书:
openssl req -new -key tian_server.key -out tian_server.csr ?-config f
(如果不加-config .f参数的话,常会报Unable to load config info from .../ssl/f)
之后就会要求输入一系列的参数:
????Country?Name?(2?letter?code)?[AU]:CN?ISO?国家代码(只支持两位字符)????State?or?Province?Name?(full?name)?[Some-State]:ZJ?所在省份????Locality?Name?(eg,?city)?[]:HZ?所在城市????Organization?Name?(eg,?company):?公司名称????Organizational?Unit?Name?(eg,?section)?[]:?组织名称????Common?Name?(eg,?YOUR?name)?[]:?申请证书的域名(建议和httpd.conf中serverName必须一致)????Email?Address?[]:admin@?管理员邮箱????Please?enter?the?following?extra?attributes?to?be?sent?with?your?certificate?request?A?challenge?password?[]:?交换密钥?????An?optional?company?name?[]:
注:Common Name建议和httpd.conf中serverName必须一致,或者与f 中的alt_names中的一个域名保持一致,否则证书有可能申请不到,并且启动 apache 时错误提示为:server RSA certificate CommonName (CN) `Kedou does NOT match server name!??)? ??
我们得到CSR之后,第三方CA机构申请通过后,会把生成好下发给你,如果你选择了第三方机构,可以跳
显示全部