中国青基会
RSS
热门关键字:  None  linux+moodle安装  mac  rhel5  199
当前位置 : Nixsky>服务器>Web>列表

apache+mod_ssl中证书生成方法

来源: 作者: 时间:2008-03-27 点击:

为配置一个安全连接,必须要给mod_ssl设置一个安全证书,CentOS默认提供一套证书,但是使用的时候每次都会提示证书签名的域名不正确,于是想弄一套自己的证书,google了很久,很多方法都有问题,最终从这里找到了合适的方法。

首先生成证书请求:

#openssl req -new > server.csr

按照提示输入相关信息后,会在当前目录自动生成server.csr和privkey.pem两个文件,privkey.pem是私钥文件,默认会 有passphrase,如果不移除的话,每次运行apache的时候都会提示输入passphrase,所以如果服务器重启后如果你不在服务器前面,则 apache无法正常运行。

所以,第二步需要移除passphrase:

#openssl rsa -in privkey.pem -out server.key

这一步会让你输入前面设定的passphrase,所以在前面的时候不要胡乱设定一个passphrase哈。

第三步,生成服务器证书:

#openssl req -x509 -days 3650 -key server.key -in server.csr > server.crt

days参数是指定证书有效期的,3650是10 年,够长的了吧?
最后,在httpd.conf里的相应域名配置里加上:

SSLCertificateFile /etc/httpd/conf/key/server.crt
SSLCertificateKeyFile /etc/httpd/conf/key/server.key

然后重启apache即可。

====

UPDATE:

还有一种方法,先按照指定算法生成密钥:

#openssl genrsa -des3 1024 -new > server.old.key

然后移除passphrase:

#openssl rsa -in server.old.key -out server.key

然后生成证书请求:

#openssl req -new -key server.key > server.csr

最后生成证书:

#openssl req -x509 -days 3650 -key server.key -in server.csr > server.crt

最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册