Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 网络安全 > 黑客技术 > 用SSL构建一个安全的Apache(3)
【标  题】:用SSL构建一个安全的Apache(3)
【关键字】:c,安全,Apache,SSL,SSL,Apache
【来  源】:网络

用SSL构建一个安全的Apache(3)

Your Ad Here 用SSL构建一个安全的Apache(3)

六、阿帕奇的配置 现在我们可以来看看阿帕奇的配置文件了——需要记住的是如果你对它做了更改,
在未重新启动httpd守护进程前,它是不会发生作用的。好,现在我们可以进目录
/usr/local/apache/conf看看了。

httpd.conf -
这是阿帕奇的主要配置文件,你可以在这里设定服务器启动时的基本环境,比如服务
器的启动方式、端口号、允许的最多连接数等等,这一文件的注释非常详细,要看明
白应该没什么问题。

access.conf -

这一文件是设定系统中的存取方式和环境的,但现在已经可以在httpd.conf中设定了,
所以推荐你别动它,放空好了。

srm.conf -

这家伙主要做的是资源上的设定,你也可以放空,仅仅设定httpd.conf中的相关项。

现在重启web server来使改动生效:

#/usr/local/apache/bin/apachectl restart

七、将阿帕奇设定在chroot环境下

现在我们开始把刚才建立的东西移到chroot环境下——包括阿帕奇服务器以及所有需
要的库文件。当然如前面所说的,这部份是可选的,如果你怕麻烦的话就算了,但转
移后可以对你的web server多一个可靠的保护。

建立/chroot目录

#mkdir /chroot

建立一些必需的子目录

#mkdir /chroot/dev
#mkdir /chroot/lib
#mkdir /chroot/etc
#mkdir /chroot/bin
#mkdir /chroot/usr
#mkdir /chroot/usr/local

在我们的chroot建立/dev/null

#mknod -m 666 /chroot/dev/null c 1 3

将阿帕奇拷贝到/chroot目录中

#cp -rp /usr/local/apache/ /chroot/usr/local

拷贝必需的二进制文件

#cp /bin/sh /chroot/bin

确定哪些库是必需的——这取决于你编译时内建了哪些模块

#ldd /usr/local/apache/bin/httpd

将需要的库拷贝到chroot目录

#cp /lib/libm.* /chroot/lib/
#cp /lib/libgdbm.* /chroot/lib
#cp /lib/libdb.* /chroot/lib
#cp /lib/libdl.* /chroot/lib
#cp /lib/libc.* /chroot/lib

拷贝网络连接所需要的函数库

#cp /lib/libnss* /chroot/lib

拷贝必需的/etc下的文件到chroot

#cp /etc/passwd /chroot/etc
#cp /etc/shadow /chroot/etc
#cp /etc/group /chroot/etc
#cp /etc/resolv.conf /chroot/etc
#cp /etc/hosts /chroot/etc
#cp /etc/localtime /chroot/etc
#cp /etc/localtime /chroot/etc
#cp /etc/ld.so.* /chroot/etc

测试chroot下的阿帕奇

#chroot /chroot /usr/local/apache/bin/apachectl start

现在再

#chroot /chroot /usr/local/apache/bin/apachectl stop

服务器就停下来了,如果不行的话,再次确认是否所有需要的库都拷到了/chroot/lib
下了,如果仍然无帮助的话,或者可以以strace方式运行httpd,它的输出可能会有一
些有价值的内容可以帮助确定是丢失了哪些库或者二进制文件。

然后我们可以做一些小工作了:默认情况下阿帕奇是以nobody用户及用户组运行的,不
要更改它。

在passwd\shadow\group等文件中包含了大量系统信息,所以你可以替换掉它们。

建立一个用户名为httpd,UID为80
建立一个组名为httpd,GID为80

用下面的命令来将/chroot下的passwd,shadow,group替换掉

#echo "httpd:x:80:100:,,,:/home/httpd:/bin/false" > /chroot/etc/passwd
#echo "httpd:*LK*:11010:0:99999:7:::" > /chroot/etc/shadow
#echo "httpd:x:80:" > /chroot/etc/group

设定好文件的许可权限

#chmod 600 /chroot/etc/passwd shadow group

现在我们可以编辑apache的配置文件并进行需要的配置,文件在
/chroot/usr/local/apache/conf/httpd.conf,寻找到包含apache运行用户
及组的信息的行并改变它(approx. line 263),当然是改成httpd/httpd。

一切运行正常后我们可以删除前面的那些服务器安装的东西——/usr/local下的,
包括服务器以及那些内建的模块等等。

#rm -rf /usr/local/apache
#rm -rf /usr/local/mod_ssl-2.5.0-1.3.11/
#rm -rf /usr/local/mod_perl-1.21/
#rm -rf /usr/local/openssl-0.9.4/
#rm -rf /usr/local/rsaref

如果以后还想改变它们的配置,增加新的模块,那么将原先的apache留下来也行。

将阿帕奇设定为在开机时自启动,修改/etc/rc.d/rc.local并且加入以下行:

echo "Starting Apache-SSL"
/usr/sbin/chroot/apache/bin/apachectl startssl

如果一切都运行正常的话,那么恭喜你,你已经成功地运行了带SSL支持的阿帕奇
了,这会使你的web server更加安全,如果你希望加入更多的模块实现其它功能的
话,自己动手吧,最后要说明的是:在chroot环境中最好只有必需的一些二进制程
序,而SUID程序还是干掉比较好些。(全文完)

四种查病毒的绝招:【上一篇】
用SSL构建一个安全的Apache(2):【下一篇】
【相关文章】
  • 灵活应用组策略 让你的Windows XP更安全
  • 网络安全九大问题及破解对策
  • 防范Windows XP的安全策略
  • 调制解调器的不安全
  • 点对点(p2p)通信对信息安全构成严重威胁
  • unix日志文件安全小议(1)
  • unix日志文件安全小议(2)
  • unix日志文件安全小议(3)
  • Linux安全管理10要点
  • Unix系统安全必读(1)
  • 【随机文章】
  • 软件工程——实践者的研究方法学习笔记1
  • OSPF入门童话
  • OTDM通信技术
  • linux下使用vim编辑器
  • asp.net 创建 xml web service 设计指南
  • 罗马神话中拔掉狮子爪子中的刺
  • SSH
  • A memery management interface---Readme
  • 需求分析心得(本人已见)
  • OllyDbg实用技巧六则
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.