Answers:
对于本地开发测试,自签名证书就足够了。您可以使用OpenSSL套件生成一个,如下所示:
生成私钥:
openssl genrsa -des3 -out server.key 1024
输出:
生成RSA私钥,1024位长模数 ................................................... ....... ++++++ ........ ++++++ e是65537(0x10001) 输入PEM密码: 验证密码-输入PEM密码:
输入您的私钥密码。
生成CSR(证书签名请求):
openssl req -new -key server.key -out server.csr
它将要求这样的详细信息:
国家名称(2个字母代码)[GB]: 州或省名称(全名)[Berkshire]: 地点名称(例如城市)[纽伯里]: 机构名称(例如公司)[My Company Ltd]: 组织单位名称(例如,部分)[]: 通用名称(例如,您的名称或服务器的主机名)[]: 电子邮件地址 []: 请输入以下“额外”属性 与您的证书请求一起发送 质询密码[]: 可选的公司名称[]:
这很简单,通用名称是服务器的主机名,如方括号中所示。
生成自签名证书:
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
在httpd.conf中为Apache配置SSL:
启用SSLEngine SSLCertificateFile /path/to/generated/server.crt SSLCertificateKeyFile /path/to/generated/server.key
(用证书和密钥的路径适当替换路径)
重新启动Apache:
apachectl restart
Apache将要求您输入密钥的密码。如果您认为将要关闭很多服务器,则可能要从密钥中删除密码,以便避免每次都输入密码。如果没有,请不要担心。如果是这样,请在步骤2(生成CSR)之后完成此步骤:
cp server.key server.key.copy
openssl rsa -in server.key.copy -out server.key