您好,欢迎来到思海网络,我们将竭诚为您提供优质的服务! 诚征网络推广 | 网站备案 | 帮助中心 | 软件下载 | 购买流程 | 付款方式 | 联系我们 [ 会员登录/注册 ]
促销推广
客服中心
业务咨询
有事点击这里…  531199185
有事点击这里…  61352289
点击这里给我发消息  81721488
有事点击这里…  376585780
有事点击这里…  872642803
有事点击这里…  459248018
有事点击这里…  61352288
有事点击这里…  380791050
技术支持
有事点击这里…  714236853
有事点击这里…  719304487
有事点击这里…  1208894568
有事点击这里…  61352289
在线客服
有事点击这里…  531199185
有事点击这里…  61352288
有事点击这里…  983054746
有事点击这里…  893984210
当前位置:首页 >> 技术文章 >> 文章浏览
技术文章

Apache+SSL Howto译文

添加时间:2011-2-28  添加: admin 

为了能让Apache加入SSL支持我们需要编辑
/etc/apache/httpd.conf 文件并且滚动到文件的最下部。
在这里去掉如下的注释。

把如下行:

#Include /etc/apache/mod_ssl.conf

更改为:

Include /etc/apache/mod_ssl.conf

注意:
如上的处理方法是建立在你的发行版已经安装有mod_ssl和httpd的基础之上的。如果你是从源代码编译安装而来或你的发行版不包括这两个软件包,这篇文章就不适合你啦。

一旦完成上一步之后你需要见到的编辑一下文件

/etc/rc.d/rc.httpd

让apache服务器知道你想开启有SSL支持的服务。

把如下行:

'start')
     /usr/sbin/apachectl start ;;

更改为:

'start')
     /usr/sbin/apachectl startssl ;;

现在所有剩余的工作就设置SSL证书了,如果你不在意非要使用正式的证书的话,slackware自带了一些预设好的证书,我就用这个,但是如果你运行一个真正的生产环境中的web服务器的话,有很可能想付费并且获得一个真正的证书。你也可以选择制作自己的自签名的证书,如果你对这个感兴趣的话,在这篇 Howto文章的最底部有相应的说明。我们仍然运行如下的命令使用预设的证书,当问及是否覆盖时,选择是。

cp /etc/apache/ssl.crt/snakeoil-rsa.crt /etc/apache/ssl.crt/server.crt
cp /etc/apache/ssl.key/snakeoil-rsa.key /etc/apache/ssl.key/server.key

现在所要做的事情就是重新启动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

如果你没有获得任何的输出,那么无论如何是出错了然后你需要看看
/var/log/apache/error_log
文件啦。

现在SSL就完全建立起来了,下面你将要告诉apache当有人用https://访问的时候应该提供什么内容,这需要通过VirtualHost指令来实现,并且与SSL连接相关的的配置可以在文件
/etc/apache/mod_ssl.conf中找到。默认情况下它是如下样子的,而且你应当需要该其中的一些配置的。

#  General setup for the virtual host
DocumentRoot "/var/www/htdocs"
ServerName new.host.name
ServerAdminyou@your.address
ErrorLog /var/log/apache/error_log
TransferLog /var/log/apache/access_log

最后,如果你想制作你自己的自签名的证书,不使用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
 cp new.cert.key /etc/apache/ssl.key/server.key

一些注释:
当在第一步被问及Common Name的时候,请输入你的web服务器的完全限定域名(FQDN)例如:www.mywebserver.com

当在第一步被问及A challenge password的时候,直接按回车继续。

如果你没有在第二步从key中把passphrase删除,那么每次你运行

/etc/rc.d/rc.httpd start

启动服务器的时候你都要输入密码。这也就意味着如果你的服务器因为某些原因重新启动了,除非你在服务器旁手动敲入了密码,否则你的web服务器就不会启动。


关键字:Apache SSL Howto 译文
分享到:

顶部 】 【 关闭
版权所有:佛山思海电脑网络有限公司 ©1998-2024 All Rights Reserved.
联系电话:(0757)22630313、22633833
中华人民共和国增值电信业务经营许可证: 粤B1.B2-20030321 备案号:粤B2-20030321-1
网站公安备案编号:44060602000007 交互式栏目专项备案编号:200303DD003  
察察 工商 网安 举报有奖  警警  手机打开网站