• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

Linux上优化安装Apache(PHP)及安全配置

发布: 2007-5-26 11:34 | 作者: 未知 | 来源: Blog.ChinaUnix.net | 查看: 29次 | 进入软件测试论坛讨论

领测软件测试网

--------------------------
Apache版本:Apache-1.3.27
PHP版本:PHP-4.3.2
--------------------------

--------------------------
Apache版本:Apache-2.0.47
PHP版本:PHP-4.3.2
--------------------------

本文地址: http://bbs.chinaunix.net/forum/viewtopic.php?t=449964

############################
Linux上优化安装Apache(PHP)及安全配置
By gzdrk (msn:gzdrk@hotmail.com)
############################

--------------------------
Apache版本:Apache-1.3.27
PHP版本:PHP-4.3.2
--------------------------

说明:Apache整合PHP有两种方式:一种是DSO模式,把PHP当作Apache的外部模块来调用,这样增加了Apache的灵活性,但会带来5%的性能降低;另一种方式是把PHP编译进Apache的内核,这样牺牲了以后调整的灵活性(每次对PHP的重新编译,都需要再次编译Apache),但性能会高一些。对Perl也是如此。相比之下,本人更愿意使用第二种方式,即把PHP编译进Apache的静态内核。

一.编译Apache:

1. 进入Apache展开目录;
2. ./configure - -prefix=/usr/local/apache1.3 - -disable-module=all \
- -enable-module=access - -enable-module=log_config \
- -enable-module=dir - -enable-module=mime \ ##Apache工作的基本模块
(说明:如果以后使用DSO方式,则编译时加上 - -enable-mdule=so)

二.安装PHP:
1. 进入PHP展开目录;
2. ./configure - -prefix=/usr/local/php4 \
- -with-apache=../apache_1.3.27 ##这里指定Apache的源代码目录
3. make;make install

三.安装Apache:
1. 进入Apache展开目录;
2. ./configure - -prefix=/usr/local/apache1.3 - -disable-module=all \
- -enable-module=access - -enable-module=log_config \
- -enable-module=dir - -enable-module=mime \
- -activate-module=src/modules/php4/libphp4.a ##把PHP模块编译进去
3. make;make install


四。配置Apache:
修改httpd.conf文档:
1.Timeout 300--->Timeout 120
2.MaxKeepAliveRequests 100
3.KeepAliveTimeout 5
4.ServerSignature on--->ServerSignature off
5.Options Indexes FollowSymLinks 行把indexes删掉(目录的Options不要带index选项)
6.将Apache运行的用户和组改为nobody
7.MaxClients 150——>MaxClients 1500
(该参数是多少有一个基本的算法,例如2G的机器,一个Apache+PHP进程大概消耗4M内存,则最高效率的进程数为2g/4m * 2=1000,最大进程数为1000*1.5=1500;1.3下要调整到高于256须在编译Apache前修改其源代码)
(对apache2.0版本,将worker MPM字段里的MaxClients 150——>MaxClients 1500)
8.DirectoryIndex index.html index.html.var 后面加上index.php
9.查找包含大量AddType命令的小节,添加下面这一行: AddType application/x-httpd-php .php


--------------------------
Apache版本:Apache-2.0.47
PHP版本:PHP-4.3.2
--------------------------

一.安装Apache:
1. 进入Apache安装目录;
2. ./configure - -prefix=/usr/local/apache2 - -enable-so
3. make;make install

二.安装PHP:
1. 进入PHP安装目录;
2. ./configure - -prefix=/usr/local/php4 - -with-apxs2=/usr/local/apache2/bin/apxs
3. make;make install

三.配置Apache:
1. 修改httpd.conf,上述配置工作照做;
2. 另外修改的地方:
LoadModule php4_module modules/libphp4.so (这一项在装完php后会自动添加)
AddType application/x-httpd-php .php (这一项手工添加)

 

-----------------------
Linux基本安全配置(纲要)
--------------------

一. 安装过程中注意事项:
1. 分区
2. 禁止安装任何服务
3. 不安装KDE
4. 安装内核源代码及编译工具

二. 安装完后应做的事:
1. 调整内核:
1) 运行dmesg、lspci等命令查看服务器硬件列表,确定所需要的基本硬件的驱动信息,包括SCSI、RAID、磁盘、网卡、键盘、鼠标、显卡等;
2) 进入内核源码目录:/usr/src/linux-2.4,执行make menuconfig,进入内核配置菜单,根据硬件配置和实际需要来修改该菜单,去掉大部分不必要的模块(或者不使用模块),保存退出;
3) 执行make dep,生成代码关系树;
4) 分别执行make; make modules; make modules_install; make install等编译命令;
5) 其它选择:depmod –a;修改/etc/grub.conf等。

2. 关闭服务:
1)/etc/rc2.d下的下列服务:
S13portmap S14nfslock S28autofs S80sendmail S90FreeWnn S90canna S90cups S85gpm S24pcmcia S08iptables S09isdn S90xfs
2)/etc/rc3.d下除local、network、syslog外,其他服务关闭
3)/etc/rc.d/xinetd.d下的全部网络服务关闭
4)关闭所有服务后,执行netstat -an |grep LISTEN 应开不到任何打开的TCP端口

3. 定制服务:
1) Openssh最新版本的安装及安全增强配置
要点:尽量将Openssh端口(22)侦听在内网卡上,使用SSH协议2,特权分离,禁止root登陆和
端口转发,忽略信任主机等
2) Proftp最新版本的安装及安全增强配置;
要点:禁止匿名FTP,将用户登陆限制在家目录下
3) Apache的安装及安全增强配置;
要点:httpd.conf配置文件的调整,见上文
4) 其它应用软件的安装及安全配置。

4. 帐号管理:
删除大部分不必要帐号,取消帐号中不必要的shell。
如下帐号可被删除:
adm,lp,sync,shutdown,halt,mail,news,uucp,operator,games,gopher,ftp,rpm,nscd,rpc,
rpcuser,nfsnobody,mailnull,smmsp,pcap,xfs,ntp
如果要使用KDE之类的图形窗口,则有些帐号如rpc,xfs是需要的。

5. Suid及sgid文件检查:
执行如下命令:
find / -user root -perm -4000 -print -exec md5sum {} \;
find / -user root -perm -2000 -print -exec md5sum {} \;
将结果重定向到一个文件,保存起来以后备查。

6. 防范SYN攻击:
1)使用SYN Cookies,在/etc/rc.d/rc.local里加入:
echo 1 > /proc/sys/net/ipv4/tcp_syncookies
2)增加TCP最大半连接数:
sysctl -w net.ipv4.tcp_max_syn_backlog="2048"
3)缩短TCP半连接的等待超时时间

这些措施只能减缓SYN攻击,并不能真正解决SYN攻击问题。最好的方法还是使用硬件防火墙。

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网