Apache+SSL Howto译文
|
Apache + SSL Howto译文(Slackware 10 默认安装环境) 为了能让Apache加入SSL支持我们需要编辑 把如下行: #Include /etc/apache/mod_ssl.conf 更改为: Include /etc/apache/mod_ssl.conf 注意: 一旦完成上一步之后你需要见到的编辑一下文件 /etc/rc.d/rc.httpd 让apache服务器知道你想开启有SSL支持的服务。 把如下行: "start") 更改为: "start") 现在所有剩余的工作就设置SSL证书了,如果你不在意非要使用正式的证书的话,slackware自带了一些预设好的证书,我就用这个,但是如果你运行一个真正的生产环境中的web服务器的话,有很可能想付费并且获得一个真正的证书。你也可以选择制作自己的自签名的证书,如果你对这个感兴趣的话,在这篇 Howto文章的最底部有相应的说明。我们仍然运行如下的命令使用预设的证书,当问及是否覆盖时,选择是。 cp /etc/apache/ssl.crt/snakeoil-rsa.crt /etc/apache/ssl.crt/server.crt 现在所要做的事情就是重新启动apache 服务器了: /etc/rc.d/rc.httpd restart 如果你想确认SSL现在已经正确的运行了,可以执行如下命令。 netstat -tpan | grep 443 如果一切运行正常,你会得到像下面的输出: tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 27426/httpd 如果你没有获得任何的输出,那么无论如何是出错了然后你需要看看 现在SSL就完全建立起来了,下面你将要告诉apache当有人用https://访问的时候应该提供什么内容,这需要通过VirtualHost指令来实现,并且与SSL连接相关的的配置可以在文件 # General setup for the virtual host 最后,如果你想制作你自己的自签名的证书,不使用slackware预先提供的,其实也是很容易的。我从http://www.apache-ssl.org/#FAQ 找到如下命令: 第一步,创建key和request: openssl req -new > new.cert.csr 第二步,从key中删除passphrase(可选): openssl rsa -in privkey.pem -out new.cert.key 第三步,把request转换成signed sert: openssl x509 -in new.cert.csr -out new.cert.cert -req -signkey new.cert.key -days 1825 第四步,把cert和key文件拷贝到适当的位置。 cp new.cert.cert /etc/apache/ssl.crt/server.crt 一些注释: 当在第一步被问及A challenge password的时候,直接按回车继续。 如果你没有在第二步从key中把passphrase删除,那么每次你运行 /etc/rc.d/rc.httpd start 启动服务器的时候你都要输入密码。这也就意味着如果你的服务器因为某些原因重新启动了,除非你在服务器旁手动敲入了密码,否则你的web服务器就不会启动 |
