分享
 
 
 

用SSL构建一个安全的Apache之三

王朝厨房·作者佚名  2007-01-05
窄屏简体版  字體: |||超大  

六、阿帕奇的配置

现在我们可以来看看阿帕奇的配置文件了——需要记住的是如果你对它做了更改,在未重新启动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用户及用户组运行的,不要更改它。

在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程序还是干掉比较好些。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有