银河麒麟服务器操作系统编译安装httpd-2.4.54

Apache简介

Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将Perl/Python等解释器编译到服务器中~

Apache攻击手段介绍

目前Apache存在换行解析漏洞与多后缀解析漏洞~

换行解析漏洞

影响版本:Apache 2.4.0 ~ 2.4.29

影响说明:绕过服务器策略,上传webshell

环境说明:PHP5.5、Apache2.4.10

漏洞原理:在php文件名后缀加了0x0a(换行),使得逃过了黑名单的检查,而Apache配置文件可以正确匹配.php0x0a的文件并当作php去解析。

注:在windows中不行,因为windows不允许换行符做文件名。所以虽然可以上传绕过检测,但文件无法保存。

多后缀解析漏洞

影响版本:使用module模式与php结合的所有版本apache存在未知扩展名解析漏洞,使用fastcig模式与php结合的所有版本apache不存在此漏洞。

影响说明:绕过服务器策略,上传webshell

环境说明:PHP7、任意版本的使用module模式与php结合的apache

漏洞原理:

apache支持php有多种模式,常见的有module、cgi、fastcgi等,此漏洞存在于module模式

Apache在遇到多个后缀的文件时,尝试从后往前解析,直到解析到可解析的为止。例如test.php.xxx就按照php去解析,test.php.aaa.jpg就按照php去解析。

根据这个原理,我们可以上传文件名如shell.php.xxx的文件,以此来绕过后端黑名单的检测,从而上传成功而且又能被Apache按照php去解析

应对方法

新版本的Apache已修复此漏洞,今日小编便编译最新版本:httpd-2.4.54

安装包下载网址:https://httpd.apache.org/download.cgi

实验环境:虚拟机

系统版本:Kylin-Server-10-SP2-x86-Release-Build09-20210524

安装包可以直接官网下载,也可以在终端使用wget下载(需有wget工具)

安装wget

终端中输入命令:

[root@172 ~ ]# yum  -y install wget

如图,我的系统中已安装wget且为最新版本,没有安装wget的可以使用 apt-yum  -y install wget 进行安装

下载相关安装包

[root@172 ~ ]#  wget https://httpd.apache.org/download.cgi/httpd-2.4.54.tar.gz

[root@172 ~ ]#  wget http://archive.apache.org/dist/apr//apr-1.7.0.tar.gz 

[root@172 ~ ]#  wget http://archive.apache.org/dist/apr/apr-util-1.6.1.tar.gz 

如图所示,相关安装包已下载完毕

添加用户

[root@localhost ~]# useradd -r -M -s /sbin/nologin apache

 

安装依赖包

[root@172 ~ ]#  yum -y install openssl-devel pcre-devel expat-devel  libtool

解压安装包

[root@172 ~ ]#  tar -zvxf apr-1.7.0.tar.gz 

[root@172 ~ ]#  tar -zvxf apr-util-1.6.1.tar.gz 

[root@172 ~ ]#  tar -zvxf httpd-2.4.54.tar.gz 

查看解压后的文件

[root@172 ~ ]#  ls

编译安装apr

[root@172 ~ ]#  cd apr-1.7.0/

[root@172  apr-1.7.0 ]#  vim configure

将框l蓝的一行注释掉,也就是在这一行行首添加#

[root@172  apr-1.7.0 ]#  ./configure --prefix=/usr/local/apr

[root@172  apr-1.7.0 ]#   make

[root@172  apr-1.7.0 ]#   make  install

编译安装apr-util

[root@172  apr-1.7.0 ]#  cd ../apr-util-1.6.1/

[root@172  arp-util-1.6.1 ]#  ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr

[root@172  arp-util-1.6.1 ]#  make

[root@172  arp-util-1.6.1 ]#  make  install

编译安装httpd

[root@172  arp-util-1.6.1 ]#   cd ../httpd-2.4.54/

[root@172  httpd-2.4.54 ]#   ./configure --prefix=/usr/local/apache  --enable-so  --enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/ --enable-modules=most --enable-mpms-shared=all --with-mpm=prefork

[root@172  httpd-2.4.54 ]#   make

[root@172  httpd-2.4.54 ]#   make  install 

设置环境变量

[root@172 ~ ]# echo 'export PATH=/usr/local/apache/bin:$PATH' > /etc/profile.d/apache.sh

[root@172 ~ ]#  source /etc/profile.d/apache.sh

映射

[root@localhost ~]# ln -s /usr/local/apache/include/ /usr/include/apache

关闭防火墙

[root@localhost ~]# systemctl disable --now firewalld

[root@localhost ~]# setenforce 0

[root@localhost ~]# getenforce 

启动服务

[root@localhost ~]# which  apachectl

[root@localhost ~]#  apachectl  start

[root@localhost ~]#  ss  -antl

访问验证

浏览器输入:http://172.16.58.130

至此,编译完成~

同时,欢迎扫码关注如下公众号

 

                   

      祝:

工作顺利

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
httpd-2.4.46-o111k-x64是一个用于部署和运行Apache HTTP服务器的软件包。 首先,要进行httpd-2.4.46-o111k-x64的配置,需要使用一个文本编辑器打开所安装httpd.conf文件。该文件位于Apache安装目录下的conf文件夹中。 在httpd.conf文件中,可以设置一些全局的配置选项,包括服务器的监听端口、主机名、日志记录选项等。可以根据自己的需求对这些选项进行相应的修改或配置。 另外,还可以在httpd.conf文件中增加虚拟主机的配置。虚拟主机可以让一个服务器同时提供多个不同的网站或域名。可以根据需要在httpd.conf文件中增加多个虚拟主机的配置,包括指定虚拟主机的域名、文档根目录、日志文件等。 除了httpd.conf文件,还可以使用其他的配置文件来进一步定制和调整httpd-2.4.46-o111k-x64的配置。例如,可以使用.htaccess文件来配置特定目录下的访问控制规则和其他相关选项。 配置完成后,可以使用启动脚本或命令来启动httpd-2.4.46-o111k-x64服务器。启动后,可以通过浏览器访问配置的域名或IP地址,来查看是否成功部署和配置了httpd-2.4.46-o111k-x64服务器。 总结来说,httpd-2.4.46-o111k-x64配置主要包括修改httpd.conf文件中的全局配置选项和虚拟主机配置,以及使用其他相关配置文件进行特定定制。配置完成后,可以启动服务器并通过浏览器来访问配置的网站。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值