最小原则是系统安全中最基本的原则之一,使用者对系统及数据进行存取所需要的最小权限,用户可以完成任务,同时也确保被窃取或异常操作所造成的损失必须apache使用一个专门的用户与组,不要使用系统预定的帐户,比请看如下
最小原则是系统安全中最基本的原则之一,使用者对系统及数据进行存取所需要的最小权限,用户可以完成任务,同时也确保被窃取或异常操作所造成的损失必须apache使用一个专门的用户与组,不要使用系统预定的帐户,比如nobody用户与nogroup组因为只有root用户可以运行apache,DocumentRoot应该能够被管理web站点内容的用户访问和使用apache服务器的apache用户与组访问,例如,希望“test”用户在web站点发布内容,并且可以以httpd身份运行apache服务器,可以这样设定groupaddwebteamusermod-Gwebteamtestchown-Rhttpd.webteam/www/htmlchmod-R2570/www/htdocs只有root能访问日志,推荐这样的权限chown-Rroot.root/etc/logschown-R700/etc/logs五:web目录的访问策略对于可以访问的web目录,要使用相对保守的途径进行访问,不要让用户查看任何目录索引列表使用目录索引:
apache在接到用户对一个目录的访问时,会查找DirectoryIndex指令指定的目录索引文件,默认为index.html,如果该文件不存在,那么apache会创建动态列表为用户显示该目录的内容,这样就会web站点结构,因此需要修改配置文件显示动态目录索引,修改httpd.confOptions-IndexesFollowSymLinksOptions指令通知apache使用目录索引,FollowSymLinks表示不允许使用符号连接。
默认访问:
要的安全策略必须要默认访问的存在,只对指定的目录权限,如果允许访问/var/www/html目录,使用如下设定Orderdeny,allowAllowfromall用户重载:
为了用户对目录配置文件(htaccess)进行重载(修改),可以这样设定AllowOverrideNone六:apache服务器访问控制apache的access.conf文件负责设置文件的访问权限,可以实现互联网域名和ip地址的访问控制如允许192.168.1.1到192.168.1.254的主机访问,可以这样设定orderdeny,allowdenyfromallallowfrompair192.168.1.0/255.255.255.0七:apache服务器的密码.htaccess文件是apache上的一个设置文件,它是一个文本文件,.htaccess文件提供了针对目录改变配置的方法既通过在一个特定的文档目录中放置一个包含一个或多个指令的文件(.htaccess文件),以作用于此目录和子目录。
.htaccess的功能包括设置网页密码,设置发生错误时出现的文件,改变首业的文件名(如,index.html),读取文件名,重新导向文件,加上MIME类别,目录下的文件等。
注:.htaccess是一个完整的文件名,不是.htaccess或其他格式,在/abc目录下放置一个.htaccess文件,那么/abc与它的子目录都会被这个文件影响,但/index.html不会被影响.htaccess的建立和使用比较复杂点,如果感兴趣的朋友可以回帖发问,这里就不具体写出来了,这种要比某些程序实现的安全,那种方法可以通过被猜测方法获取密码,用.htaccess很难被破解,但文本方式的验证会比较慢,对少量用户没影响,但对大量用户就必须使用带数据模块的验证了,这需要编译源代码时候模块,默认是不的八:让apache运行在“”中“”的意思是指通过chroot机制来更改某个软件运行时所能看到的根目录,简单说,就是被在指定目录中,软件只能对该目录与子目录文件有所动作,从而整个服务器的安全,即使被或侵入,损伤也不大以前,unix/linux上的daemon都是以root权限启动的,当时,这是一件理所当然的事情,像apache这样的服务器软件,需要绑定到80端口上来请求,而root是唯一有这种权限的用户,随着手段和强度的增加,这样会使服务器受到相当大的,一但被利用缓冲区溢出漏洞,就可以控制整个系统。现在的服务器设计通常以root启动,然后进程放弃root权限,改为某个低级的帐号运行。这种方式显然会降低对系统的危害,但者还是会寻找漏洞提升权限,即使无法获得root权限,也可以删除文件,涂改主页等为了进一步提高系统安全性,linux内核引入chroot机制,chroot是内核中的一个系统调用,软件可以通过调用函数库的chroot函数,来更改某个进程所能见到的跟目录,比如,apache软件安装在/usr/local/httpd目录,以root启动apache,这个root权限的父进程会派生数个以nobody权限运行的子进程,父进程80端口,然后交给某个子进程处理,这时候子进程所处的目录续承父进程,即/usr/local/httpd目录,但是一但目录权限设定错误,被的apache子进程可以访问/usr/local,/usr,/tmp甚至整个文件系统,因为apache进程所处的跟目录仍然是整个文件系统的跟目录,如果可以用chroot将apache在/usr/local/httpd/下,那么apache所存取的文件都被在/usr/local/httpd下,创建chroot的作用就是将进程权限在文件目录树下,安全。
如果自己手动apache的,将是很烦琐和复杂的工作,需要牵扯到库文件,这里可以使用jail包来简化的实现jail的网站为:有兴趣可以逛逛这里也不写出具体的创建过程稍微麻烦,如果对安全有需要的话,请回帖,会及时补上
九:apache服务器防范Dosapache服务经常会碰到Dos,防范的主要手段是通过软件,apahceDosEvasiveManeuversModule来实现的,它是一款mod_access的代替软件,可以对抗DoS,该软件可以快速来自相同地址对同一URL的重复请求,通过查询内部一张各子进程的哈希表来实现可以到网址:上下载软件十:减少CGI和SSI风险CGI脚本的漏洞已经成为WEB服务器的首要安全隐患,通常是程序编写CGI脚本产生了许多漏洞,控制CGI的漏洞除了在编写时候注意对输入数据的检查,对系统调用的谨慎使用等因素外,首先使用CGI程序所有者的ID来运行这些程序,即使被漏洞危害也仅限于该ID能访问的文件,不会对整个系统带来致命的危害,因此需要谨慎使用CGI程序。
1.3版的apache集成了suEXEC程序,可以为apache提供CGI程序的控制支持,可以把suEXEC看做一个包装器,在Apache接到CGI程序的调用请求后,把这个请求交给suEXEC来负责完成具体调用,并从suEXEC返回结果,suEXEC可以解决一些安全问题,但会影响速度如果是对安全性要求很高时候,使用suEXEC,此外还有一个软件CGIWrap,它的安全性要高与suEXEC减少SSI脚本风险,如果用exec等SSI命令运行外部程序,也会存在类似CGI脚本风险,除了内部调试程序时,应使用option命令其使用:
OptionIncludesNOEXEC十一:使用ssl加固Apache使用具有SSL功能的服务器,可以提高网站页的安全性能,SSL工作与TCP/IP协议和HTTP协议之间SSL可以加密互联网上传递的数据流,提供身份验证,在线购物而不必担心别人窃取信用卡信息,在基于电子商务和基于web邮件的地方非常重要。
tags:192.168.1.25