6. 相关条目的说明
6.1 SSLEngine on
在虚拟主机中打开ssl支持,默认主服务主机和虚拟主机是禁用的。
6.2 SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
ssl协议握手协商时使用的密码簇,支持所有握手密码
6.3 SSLCertificateFile conf/ssl.crt/server.crt
服务器端PEM-encoded X.509认证文件
6.4 SSLCertificateKeyFile conf/ssl.key/server.key
服务器端PEM-encoded私匙文件
6.5 SSLOptions +StdEnvVars
配置各种运行时的SSL引擎选项, +StdEnvVars创建SSL与CGI&SSI相关的变量,仅用在CGI和SSI的页面中。
四. 补遗或注解
1. 认证文件的认证方式
本例中采用的自认证的方式,就是说没有去购买证书,如果是商业站点可以考虑购买证书。
2. 自认证文件的生成
a. 生成private Key文件
openssl genrsa -des3 -out server.key 1024
b. 创建服务器端的认证文件
openssl req -new -x509 -nodes -sha1 -days 365 -key server.key -out server.crt
在提示输入common name的时候输入域名:
c. 按照vhost.conf中的配置,存放b步骤中创建的文件
3. apache的启动和关闭方式(SSL)
3.1 启动
./apachectl startssl
会提示输入创建server.key时的密码,输入正确才能启动
3.2 关闭
./apachectl stop
3.3 为了测试方便可以关闭启动时输入密码
a. 修改vhost.conf
#SSLCertificateKeyFile conf/ssl.key/server.key
SSLCertificateKeyFile conf/ssl.key/server.key.unsecure
b. server.key.unsecure的生成
openssl rsa -in server.key -out server.key.unsecure
4. ssl仅支持基于ip的虚拟主机