庞大资源库的计算机教程网站!
设为首页
加入收藏
总编信箱
投稿或申请专栏请先 [登 陆]
首页 操作系统 程序设计 图形图像 媒体动画 机械电子 WEB开发 数 据 库 办公系列 路由技术 网络原理 网络应用
认证考试 安全技术
首页>操作系统>FreeBSD>使用大全>正文
资料搜索
Google搜索
Google
返回上级列表

推荐文章

快速保存网页中所有图片的方法
Windows中让光驱巧妙“隐身”技
防范非法用户入侵Win 2000/XP系
两款比较典型的ASP木马防范方法
有关表格边框的css语法整理
Windows XP中可以被禁用的服务
SQL Server导出导入数据方法
Javascript所有对象的属性的获
网页(HTML)中的特殊字符
与篮球共舞,尽显模式本色
QQ病毒的手工清除方法
Photoshop为极品美女打造性感睫
天衣无缝:IIS与PHP水火也相容
SQL Server存储过程编写和优化

FreeBSD连载(88):安全连接方式SSL

 作者:王波    日期:2005-3-13
字号选择〖 〗/ 双击滚屏 单击停止   

安全连接方式SSL

  通常的连接方式中,通信是以非加密的形式在网络上传播的,这就有可能被非法窃听到,尤其是用于认证的口令信息 。为了避免这个安全漏洞,就必须对传输过程进行加密。对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依赖于另外一个软件:openssl,它是一个可以自由使用的SSL实现,首先 需要安装这个Port(由于专利的影响,这些软件无法制作为可以直接安装的二进制软件包,必须使用Ports Collection 安装)。openssl位于/usr/ports下面的security子目录下,当下载其源程序之前 ,需要设置环境变量USA_RESIDENT为NO,以避开专利纷争。

# USA_RESIDENT=NO; export USA_RESIDENT
# cd /usr/ports/security/openssl
# make; make install

  安装好openssl之后,就可以安装Apache+mod_ssl了。然而为了安装完全正确,需要清除原先 安装的Apache服务器的其他版本,并且还要清除所有的设置文件及其缺省设置文件,以避免出现安装问题。最好也删除 /usr/local/www目录(或更名),以便安装程序能建立正确的初始文档目录。如果是一台没有安装过Apache 服务器的新系统,就可以忽略这个步骤,而直接安装Apache+mod_ssl了。

  删除旧有文件之后,便可进入相应目录,启动安装和编译进程。

# cd /usr/ports/www/apache13+mod_ssl
# make ; make install
# make certifaction=custom

  最后一个make用于生成认证证书,由于这个Port直接生成了httpd.conf等缺省文件(如果安装的 时候没有httpd.conf等文件存在),因此可以直接启动新的服务器而不需要设置,如果启动过程因为设置文件的不 合适而导致一些小问题,请参照前面对标准Apache服务器的设置说明作出相应修改。

# /usr/local/sbin/apachectl startssl

  此时使用start参数为仅仅启动普通Apache的httpd守护进程,而不启动其SSL能力,而startssl 才能启动Apache的SSL能力。如果之前Apache的守护进程正在运行,便需要使用stop参数先停止 服务器运行。

  然后,就可以启动netscape或其他支持SSL的浏览器,输入URL为:https://ssl_server/ 来查看服务器是否有相应,https使用的缺省端口为443,如果一切正常,服务器将返回mod_ssl的使 用手册,讲解SSL以及mod_ssl的技术及其使用方法。

未完,待续。。。  

上一篇:FreeBSD连载(89):CGI和SSI的安全性    下一篇:FreeBSD连载(87):基于用户的访问控制  
[发送给好友]  [关闭窗口]  [返回顶部]   转载请注明来源:www.it00.com   
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
责任编辑: 原点 投稿作者: 王波
信息来源: 网络 录入时间: 2005-3-13
关于我们 - 广告服务 - 版权申明 - 网站地图 - 联系方式 - 总编信箱 - 会员投稿