1.Apache具有灵活的设置
所有Apache的安全特性都要经过周密的设计与规划 , 进行认真地配置才能够实现 。Apache安全配置包括很多层面 , 有运行环境、认证与授权设置等 。Apache的安装配置和运行示例如下:
- 1 修改apache的版本信息 , 使外部访问看到的apache信息是经过伪装或错误的 , 这个可以尽可能的保证apache的安全 。
- 2 建立安全的apache的目录结构 。ServerRoot DocumentRoot ScripAlias Customlog Errorlog 均放在单独的目录环境中 。以上主要目录相互独立并且不存在父子逻辑关系 。
- ServerRoot目录只能具有管理权限用户访问;DocumentRoot能够被管理Web站点内容的用户访问和使用Apache服务器的Apache用户和Apache用户组访问;只有admin组的用户可以访问日志目录 。各个目录设置独立的权限
- 4、禁止默认访问的存在 , 只对指定的目录开启访问权限 。
- 5 更改apache的默认路径 , 单独建立路径提供apache文件的存放
- 6、通过使用例如“Apache DoS Evasive Maneuvers Module ”等工具来实现Apache服务器对DoS攻击的防范 。其工具可以快速拒绝来自相同地址对同一URL的重复请求 。
- 7、以Nobody用户运行
- 一般情况下 , Apache是由Root 来安装和运行的 。如果Apache Server进程具有Root用户特权 , 那么它将给系统的安全构成很大的威胁 , 应确保Apache Server进程以最可能低的权限用户来运行 。通过修改httpd.conf文件中的下列选项 , 以Nobody用户运行Apache 达到相对安全的目的 。
为了确保所有的配置是适当的和安全的 , 需要严格控制Apache 主目录的访问权限 , 使非超级用户不能修改该目录中的内容 。Apache 的主目录对应于Apache Server配置文件httpd.conf的Server Root控制项中 , 应为:
Server Root /usr/local/apache3、SSI的配置
在配置文件access.conf 或httpd.conf中的确Options指令处加入Includes NO EXEC选项 , 用以禁用Apache Server 中的执行功能 。避免用户直接执行Apache 服务器中的执行程序 , 而造成服务器系统的公开化 。
Options Includes Noexec4、阻止用户修改系统设置
在Apache 服务器的配置文件中进行以下的设置 , 阻止用户建立、修改 .htaccess文件 , 防止用户超越能定义的系统安全特性 。
AllowOveride NoneOptions NoneAllow from all然后再分别对特定的目录进行适当的配置 。
5、改变Apache 服务器的确省访问特性
Apache 的默认设置只能保障一定程度的安全 , 如果服务器能够通过正常的映射规则找到文件 , 那么客户端便会获取该文件 , 如http://local host/~ root/ 将允许用户访问整个文件系统 。在服务器文件中加入如下内容:
order deny,ellowDeny from all将禁止对文件系统的缺省访问 。
6、CGI脚本的安全考虑
CGI脚本是一系列可以通过Web服务器来运行的程序 。为了保证系统的安全性 , 应确保CGI的作者是可信的 。对CGI而言 , 最好将其限制在一个特定的 目录下 , 如cgi-bin之下 , 便于管理;另外应该保证CGI目录下的文件是不可写的 , 避免一些欺骗性的程序驻留或混迹其中;如果能够给用户提供一个安全 性良好的CGI程序的模块作为参考 , 也许会减少许多不必要的麻烦和安全隐患;除去CGI目录下的所有非业务应用的脚本 , 以防异常的信息泄漏 。
以上这些常用的举措可以给Apache Server 一个基本的安全运行环境 , 显然在具体实施上还要做进一步的细化分解 , 制定出符合实际应用的安全配置方案 。
Apache Server基于主机的访问控制
Apache Server默认情况下的安全配置是拒绝一切访问 。假定Apache Server内容存放在/usr/local/apache/share 目录下 , 下面的指令将实现这种设置:
Deny from allAllow Override None则禁止在任一目录下改变认证和访问控制方法 。
同样 , 可以用特有的命令Deny、Allow指定某些用户可以访问 , 哪些用户不能访问 , 提供一定的灵活性 。当Deny、Allow一起用时 , 用命令Order决定Deny和Allow合用的顺序 , 如下所示:
1、 拒绝某类地址的用户对服务器的访问权(Deny)
如:Deny from allDeny from test.cnn.comDeny from 204.168.190.13Deny from 10.10.10.0/255.255.0.02、 允许某类地址的用户对服务器的访问权(Allow)
推荐阅读
- MySQL如何选择合适的索引
- Apache ShardingSphere开源的分布式数据库中间件
- 年糕常温下可以放多久 米糕常温可以放几天
- 梦见山塌下来自己躲过 梦到山塌了躲过去了
- 泡茶13个流程十三道茶道操作流程如下
- 饭盒盖子被吸住了凹下怎么弄回头啊 饭盒盖子凹下去怎么办
- 新能源汽车板块接下来大概率会有大行情
- 海带洗一下就烂了能吃吗
- 大宅门玉芬为什么嫁到济南 大宅门白家跟王府是怎么结下仇的
- 梦见爬非常陡峭的山崖,坚持了一下然后掉了下去 梦见爬非常陡峭的山崖周公解梦