首页 > 其他分享 >12、web 中间件加固-apache 加固

12、web 中间件加固-apache 加固

时间:2024-04-13 15:44:33浏览次数:20  
标签:cgi web ErrorDocument httpd 中间件 修改 conf 加固 apache

1.账号设置

1.1.防止 webshell 越权使用

修改 httpd.conf:/etc/httpd/conf/httpd.conf 或编译路径下 /conf/httpd.conf

检查程序启动账号和用户组

  user apache或nobody

  group apache或nobody

  一般情况下默认用户符合安全要求

1.2.非超级用户权限禁止修改 apache 主目录

在 httpd.conf 文件中查找主目录位置:grep "ServerRoot" /etc/httpd/conf/httpd.conf

修改权限:

  chmod -R 700 /etc/httpd/

  chmod 644 /var/log/httpd/*.log

2.日志设置

2.1.修改日志级别,记录格式

修改 httpd.conf 文件

更改错误日志:

  LogLevel notice(更多的记录信息,但会占用大量空间)

  ErrorLog /logs/error_log(可根据磁盘规划更改)

更改访问日志

  LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Accept}i\"%{Referer}i\" \"%{User-Agent}i\"" combined

  CustomLog /logs/access_log combined(可根据磁盘规划更改)

3.禁止访问外部文件

防止访问网站目录以外的文件

打开 httpd.conf 检查关键语法

<Directory />
    AllowOverride none
    Require all denied
</Directory>
<Directory "/var/www/html">
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

4.禁止列出目录

防止使用 web 直接浏览目录内容

修改 httpd.conf 文件

去掉站点配置信息中的 Indexes 选项(Indexes:无法在当前目录下找到首页文件,就显示目录内容)

<Directory "/var/www/html">
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

5.错误页面重定向

防止通过默认错误回馈泄露敏感信息

修改 httpd.conf 文件

编辑错误页面配置:

ErrorDocument 400 /error400.html
ErrorDocument 401 /error401.html
ErrorDocument 403 /error403.html
ErrorDocument 404 /error404.html
ErrorDocument 405 /error405.html
ErrorDocument 500 /error500.html
错误页面在站点根目录下创建,也可以在子目录中
错误信息还可以使用 ”直接输出提示“

6.拒绝服务防范

合理设置会话时间,防 止拒绝服务

编辑 httpd.conf

修改内容:

  Timeout 10

  KeepAlive On

  KeepAliveTimeout 15

此处的连接间隔和 session 保持时间单位都是秒,一定要根据实际情况,分析后再设定

7.隐藏程序版本号

避免被针对漏洞

编辑 httpd.conf

修改信息:

  ServerSignature Off

  ServerTokens Prod

8.关闭 TRACE 功能

防止 trace 方法被恶意利用泄露信息

编辑 httpd.conf

修改信息:TraceEnable Off

9.禁用 CGI 功能

确保不适用 cgi 程序的情况下,关闭 cgi 功能(开启状态下,可运行脚本)

编辑 httpd.conf

注释信息如下

ScriptAlias /cgi-bin/ "/var/www/cgi-bin"
<Directory "/var/www/cgi-bin">
    AllowOverride Nonde
    Options None
    Require all granted
</Directory>
LoadModule cgi_module modules/mod_cgi.so

10.绑定监听地址

服务器多个 IP 时,绑定业务接口 IP

编辑 httpd.conf

添加监听

  Listen xx.xx.xx.xx:80

  如果页面为私有页面,还可以更改默认端口值

11.禁用非法 HTTP 方法

禁用 put、delete 等危险的 http 方法

编辑 httpd.conf

加入信息:

除了这些方法,以外都可以使用
<Location /> <LimitExcept GET POST CONNECT OPTIONS> AllowOverride None Require all granted </LimitExcept> </Location>

12.防止 apache 解析漏洞

防止非法文件绕过合法性检查

编辑 httpd.conf

添加配置信息

将文件后缀定死了
<FilesMatch \.php$> SetHandler application/x-httpd-php </FilesMatch> <FilesMatch "\.phps$"> SetHandler application/x-httpd-php-source </FilesMatch>

13.防止 sql 注入

禁止 PHP 页面对 sql 注入给予反馈

修改 php.ini 文件:/etc/php.ini

加入或修改信息:magic_quotes_gpc=On

14.限制请求消息长度

防止溢出漏洞

编辑 httpd.conf

添加信息:LimitRequestBody 102400

 

标签:cgi,web,ErrorDocument,httpd,中间件,修改,conf,加固,apache
From: https://www.cnblogs.com/luoluostudy/p/18132947

相关文章

  • 11、操作系统安全加固-Windows 加固
    1.账号管理与认证授权1.1.按用户类型分配账号目的:根据系统要求,设定不同账户和组,管理员、数据库sa、审计用户、来宾用户等实施方法:打开本地用户和计算机管理器或 打开运行,输入lusrmgr.msc右击账户->属性->更改隶属于右击功能组->属性->成员1.2.清理......
  • 10、操作系统安全加固-Linux加固
    1.账号管理与认证授权1.1.为不同的管理员分配不同的账号目的:根据不同用途设置不同账户账号,提高安全层级实施方法:1.设置高风险文件为最小权限,如:passwd、shadow、group、securetty、services、grub.conf等2.使用sudo命令设置命令执行权限和禁止敏感操作权限3.检查其他权限过......
  • 记录协助Javaer硬件快速开发过程之Web技术栈对接施耐德网络IO网关
    前一段时间有个Java技术栈的朋友联系到我,需要快速对接现有的无人值守称重系统,这里的对接是指替代现有系统,而非软件层面的对接,也就是利用现有的硬件开发一套替代现有软件的自动化系统。主要设备包括地磅秤、道闸、红外对射传感器、摄像头、小票打印、LED显示屏等等,全程使用LED显示......
  • 42 Typescript编译配置-webpack-babel
    TS编译配置自动编译单个文件tsc1.ts#如果想要自动监视文件的变化,需要添加`-W`配置tsc1.ts-W自动编译整个项目初始化,会自动生成一个tsconfig.json文件,然后直接执行tsc命令,就可以对当前目录的所有ts文件进行编译,生成对应的js文件#初始化项目tsc--init#编译......
  • 02_Web Api使用Jwt
    JWT(JSONWebToken)是一种用于在网络应用之间传递信息的开放标准(RFC7519)。它使用JSON对象在安全可靠的方式下传递信息,通常用于身份验证和信息交换。在WebAPI中,JWT通常用于对用户进行身份验证和授权。当用户登录成功后,服务器会生成一个Token并返回给客户端,客户端在接下来的请求......
  • SeleniumBase 制作WEB用户使用导览,并导出 JS-使用笔记(三)
    自动化福音(爬虫、办公、测试等)SeleniumBase使用笔记(三)SeleniumBase制作WEB用户使用导览,并导出JSSeleniumBase包含强大的JS代码生成器,用于将Python转换为JavaScript,而制作用户导览,就是其中的应用之一,用户导览能将SaaS产品采用率提高10倍或更多目录创建导览......
  • CMC-IIS-WebService發布遇到的問題點
     启动网站调试提示HTTP错误403.14–ForbiddenWeb服务器被配置为不列出此目录的内容。解决方案第一种.在网站的配置文件里添加,第二種IIS設置(不使用)。<system.webServer><directoryBrowseenabled="true"/></system.webServer>  IIS中的一個異常:......
  • 基于Web的二手房交易系统
    墨刀、Axure和Mockplus适用领域及优缺点墨刀(MockingBot):适用领域:墨刀主要定位于移动端原型设计,特别适合移动应用和微信小程序的快速原型制作。优点:操作简便:界面直观,新手上手快,拖拽式操作使得设计过程高效。动效丰富:提供多种动效,方便设计师制作生动的交互效果。缺点:自......
  • webpack优化
    编译优化1、使用缓存:缓存可以显著提高编译速度。例如,babel-loader的cacheDirectory选项可以将转译的结果缓存到文件系统中,此外,cache-loader可以将其他loader的处理结果缓存到磁盘。2、DLL动态链接库:DLL文件为动态链接库,在一个动态链接库中可以包含给其他模块调用的函数和数据。......
  • 消息中间件RabbitMQ_RabbitMQ的工作模式4
    一、Workqueues工作队列模式1、模式说明WorkQueues:与入门程序的简单模式相比,多了一个或一些消费端,多个消费端共同消费同一个队列中的消息。应用场景:对于任务过重或任务较多情况使用工作队列可以提高任务处理的速度。2、代码编写WorkQueues与入门程序的简......