对HTTP传输进行加密协议为HTTPS它是通过SSL(安全Socket层)进行HTTP传输协议不但通过公用密钥算法进行加密保证传输安全性而且还可以通过获得认证证书CA保证客户连接服务器没有被假冒
使用公用密钥方式可以保证数据传输没有问题但如果浏览器客户访问站点被假冒这也是个严重安全问题这个问题不属于加密本身而是要保证密钥本身正确性问题要保证所获得其他站点公用密钥为其正确密钥而非假冒站点密钥就必须通过个认证机制能对站点密钥进行认证当然即使没有经过认证仍然可以保证信息传输安全只是客户不能确信访问服务器没有被假冒如果不是为了提供电子商务等方面对安全性要求很高服务般不需要如此严格考虑
虽然Apache服务器不支持SSL但Apache服务器有两个可以自由使用支持SSL相关计划个为Apache-SSL它集成了Apache服务器和SSL另个为Apache+mod_ssl它是通过可动态加载模块mod_ssl来支持SSL其中后个是由前个分化出并由于使用模块易用性很好因此使用范围更为广泛还有些基于Apache并集成了SSL能力商业Web服务器然而使用这些商业Web服务器主要是北美这是在那里SSL使用公开密钥算法具备专利权不能用于商业目其他国家不必考虑这个专利问题而可以自由使用SSL
虽然通常mod_ssl以及其他复杂Apache模块都提供了详细编译安装介绍说明并提供了非常有用脚本和Makefile来帮助使用者进行安装然而为Web服务器增加个模块并不是个简单而易于描述任务幸运是FreeBSD提供了Ports Collection让使用者不必关系每步安装细节就能安装好这个模块
如果不打算使用Ports Collection来安装mod_ssl那么事情就略微麻烦些必须自己手工下载Apache源代码以及mod_ssl代码按照介绍说明步步编译安装
Apache+mod_ssl依赖于另外个软件Software:openssl它是个可以自由使用SSL实现首先需要安装这个Port(由于专利影响这些软件Software无法制作为可以直接安装 2进制软件Software包必须使用Ports Collection 安装)openssl位于/usr/ports下面security子目录下当下载其源的前需要设置环境变量USA_RESIDENT为NO以避开专利纷争
# USA_RESIDENT=NO; export USA_RESIDENT
# cd /usr/ports/security/openssl
# make; make
安装好openssl的后就可以安装Apache+mod_ssl了然而为了安装完全正确需要清除原先安装Apache服务器其他版本并且还要清除所有设置文件及其缺省设置文件以避免出现安装问题最好也删除 /usr/local/www目录(或更名)以便安装能建立正确文档目录如果是台没有安装过Apache 服务器新系统就可以忽略这个步骤而直接安装Apache+mod_ssl了
删除旧有文件的后便可进入相应目录启动安装和编译进程
# cd /usr/ports/www/apache13+mod_ssl
# make ; make
# make certaction=custom
最后个make用于生成认证证书由于这个Port直接生成了httpd.conf等缺省文件(如果安装时候没有httpd.conf等文件存在)因此可以直接启动新服务器而不需要设置如果启动过程设置文件不合适而导致些小问题请参照前面对标准Apache服务器设置介绍说明作出相应修改
# /usr/local/sbin/apachectl startssl
此时使用start参数为仅仅启动普通Apachehttpd守护进程而不启动其SSL能力而startssl 才能启动ApacheSSL能力如果的前Apache守护进程正在运行便需要使用stop参数先停止服务器运行
然后就可以启动netscape或其他支持SSL浏览器输入URL为:http://ssl_server/ 来查看服务器是否有相应https使用缺省端口为443如果
最新评论