|
![]() |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
拷贝必需的/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用户及用户组运行的,不要更改它。 在passwdshadowgroup等文件中包含了大量系统信息,所以你可以替换掉它们。 建立一个用户名为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程序还是干掉比较好些。 返回类别: 教程 上一教程: SMTP服务扩展 下一教程: 构建DNS服务器简易指南(一) 您可以阅读与"用SSL构建一个安全的APACHE之四"相关的教程: · 用SSL构建一个安全的APACHE之三 · 用SSL构建一个安全的APACHE之一 · 雅虎发布新版Jukebox软件 修补数个安全缺陷 · 怎样在APACHE上安装MOD_SSL · 在APACHE中,同一个IP配置两个虚拟主机的例子 |
![]() ![]() |
快精灵印艺坊 版权所有 |
首页![]() ![]() ![]() ![]() ![]() ![]() ![]() |