实现平台:redhat 7.3
需要的软件:apache_1.3.28.tar.gz,
1、因为mod_ssl依赖于OpenSSL库,所以需要一个有效OpenSSL
tar -xvzf openssl-0.9.7b.tar.gz
cd openssl-0.9.7b
./config shared
make
make test
make install
echo "/usr/local/ssl/lib" >> /etc/ld.so.conf
ldconfig
至此openssl安装完成
2、安装apache和mod_ssl模块
tar -xzf mod_ssl-2.8.15-1.3.28.tar.gz
cd mod_ssl-2.8.15-1.3.28
./configure --with-apache=../apache_1.3.28
cd ../apache_1.3.28
SSL_BASE=/usr/local/ssl
./configure --prefix=/usr/local/apache --enable-module=ssl --enable-module=so --enable-shared=ssl
make
这里我们可以按照提示创建一个自签署的证书。但是我想告诉大家如何在安装完成后使用openssl创建
密钥及申请证书或者创建自签署的证书。所以这里就直接安装
make install
如果没有错误说明安装成功
openssl安装目录是/usr/local/ssl
apache安装目录是/usr/local/apache
3、创建密钥申请证书及安装证书
cd /usr/local/apache/
mkdir cert
cd cert
创建密钥
/usr/local/ssl/bin/openssl genrsa -des3 -out FQDN.key 1024
创建证书请求
/usr/local/ssl/bin/openssl req -new -key FQDN.key -out FQDN.csr
成功创建证书请求后可以通过下面的密令了解请求内容
/usr/local/ssl/bin/openssl req -noout -text -in FQDN.csr
现在你就可以到一个CA申请一个证书了。Verisign是可以选择一家CA
https://www.verisign.com/从这里可以申请一个试用的证书,并且此网站提供了详细的帮助。可以知道你成功的获得一个可用的证书。
安装证书,编辑httpd.conf文件做如下设置
Listen 80
Listen 443
<VirtualHost ip:443>
ServerName mail.yhx.com
DocumentRoot "/usr/local/apache/htdocs"
SSLEngine on
SSLCertificateFile /usr/local/apache/cert/www.yhx.com.cert
SSLCertificateKeyFile /usr/local/apache/cert/www.yhx.com.key
</VirtualHost>
测试
/usr/local/apache/bin/apachectl startssl
访问站点https://www.yhx.com
对于没有条件的同志,可以用下面的方法创建一个自签署的证书
/usr/local/ssl/bin/openssl x509 -req -days 30 -in www.yhx.com.csr -signkey www.yhx.com.key -out www.yhx.com.cert
参考资料
OpenSSL http://www.openssl.org
modssl http://www.apacheref.com