渗透基础篇 · 中间件

中间件

中间件基础

中间件的概念和技术

什么是中间件?

中间件是一个连接不同程序、系统和服务的“桥梁”,让它们能够相互沟通和协作。


中间件的作用?

  • 连接不同系统:让不同的应用、服务或数据库能够互相交流。
  • 提高效率:帮助多个应用程序并行工作,提高系统的运行效率。
  • 确保安全性:管理用户权限、加密数据等。

中间件的常见类型

  1. 消息中间件:比如 RabbitMQ,帮助不同的系统通过消息交换来互相通信。
  2. 数据库中间件:比如 MySQL Proxy,在数据库和应用之间管理连接。
  3. Web 服务器中间件:像 NginxApache,让你的应用能处理大量的 HTTP 请求。
  4. 负载均衡器:比如 HAProxy,确保流量在多个服务器之间平稳分配。

中间件的应用场景

  • 微服务架构:将大的应用拆分成小的服务,通过中间件让它们互相通信。
  • 高流量网站:通过中间件像缓存系统,帮助减少压力,提高性能。
  • 多个系统的集成:不同系统之间用中间件对接,保证数据传输和任务协调。

总结
中间件就像是你系统中的“调度员”,帮助不同系统互通、提高效率、保障安全。它存在于现代应用架构中,尤其是在处理复杂系统时至关重要!💻

常用中间件


🧩 中间件的分类

  1. 消息中间件

    • 作用:让不同的系统通过消息交换互相沟通。
    • 例子:RabbitMQ、Kafka
  2. 数据库中间件

    • 作用:管理数据库连接,帮助多个应用和数据库之间进行有效的数据交换。
    • 例子:MySQL Proxy、ShardingSphere
  3. Web 服务器中间件

    • 作用:处理浏览器请求并把它们转发到应用服务。
    • 例子:Nginx、Apache
  4. 缓存中间件

    • 作用:缓存数据,减少数据库负担,提高访问速度。
    • 例子:Redis、Memcached
  5. 负载均衡器

    • 作用:将用户请求均匀分配到多个服务器上,提高服务的稳定性和速度。
    • 例子:HAProxy、Nginx
  6. API 网关

    • 作用:集中管理和处理所有外部请求,提供安全、路由等功能。
    • 例子:Kong、Zuul
  7. 容器中间件

    • 作用:帮助管理容器化的应用程序。
    • 例子:Docker、Kubernetes

🌟 常用的中间件

中间件类型 常见中间件 作用
消息中间件 RabbitMQ、Kafka 让不同的系统通过消息进行沟通。
Web 服务器 Nginx、Apache 处理用户请求,转发给后台。
缓存中间件 Redis、Memcached 缓存数据,提高访问速度。
数据库中间件 MySQL Proxy、ShardingSphere 管理数据库连接,提升性能。
API 网关 Kong、Zuul 集中处理外部请求,提供安全、路由等功能。
负载均衡器 HAProxy、Nginx 自动分配请求到多个服务器,确保服务稳定。
容器中间件 Docker、Kubernetes 管理容器化的应用,帮助部署和扩展。

🌸 总结

中间件就像是系统之间的桥梁,让不同的服务、应用和数据能够高效、安全地沟通、协调和工作。它在很多大型系统中都扮演着非常重要的角色。


中间件安装使用

IIS 介绍安装使用及配置


🌐 IIS(Internet Information Services)简介

IIS 是微软提供的一款Web 服务器,用于发布和管理网站。它可以支持 HTTP、HTTPS 等协议,还支持通过 ASP、ASP.NET 运行动态网页。
IIS 在 Windows 环境中是搭建和管理 Web 应用的常用工具,功能包括:

  • 托管静态内容(HTML、图片等)
  • 处理动态内容(通过 ASP 或 ASP.NET)
  • 配置网站安全、权限和访问控制

🛠️ 如何安装 IIS(Windows 系统)

1. 打开“Windows 功能”
  • 按下 Win + R,输入 optionalfeatures 打开“Windows 功能”窗口。
  • 或者通过 控制面板程序启用或关闭 Windows 功能
2. 启用 IIS 相关功能
  • 在“Windows 功能”窗口中,勾选 Internet Information Services
  • 确保启用以下选项:
    • Web 管理工具
    • World Wide Web 服务
    • 应用程序开发功能(用于 ASP 和 ASP.NET)
3. 完成安装
  • 点击“确定”,等待安装完成。安装后 IIS 将会自动启用。

🔧 IIS 权限配置

在 IIS 中,配置权限对于保证网站和应用的安全非常重要。你可以通过以下几个步骤进行权限管理:

1. 配置应用池权限
  • 打开 IIS 管理器,在左侧点击 应用池
  • 右键点击你要配置的应用池,选择 高级设置
  • 在“标识”部分,选择 内置账户自定义账户,决定该应用池的权限。
2. 配置网站的文件夹权限
  • 找到网站的根目录,右键选择 属性安全 标签。
  • 配置 IIS 用户(IUSR)应用池标识IIS_IUSRS 等账户的文件夹访问权限(如读取、写入等)。
3. 设置 IIS 认证方式
  • 打开 IIS 管理器,在 网站认证 中进行配置。
  • 可以选择 匿名认证Windows认证基本认证表单认证

🖥️ 配合 ASP 和 ASP.NET 脚本搭建 IIS 应用环境

ASP(Active Server Pages)和 ASP.NET 是微软开发的两种动态网页技术。IIS 支持通过这两者来执行动态内容。
我们来看看如何在 IIS 上搭建这两种应用环境。

1. 配置 ASP 环境
  • IIS 管理器 中选择 应用程序池,右键点击所需的应用池,点击 高级设置
  • 在“启用 32 位应用程序”设置为 True(如果你的应用需要 32 位支持)。
  • 确保 ASP 功能在 IIS 中已启用(在“Windows 功能”中查看)。
2. 配置 ASP.NET 环境

ASP.NET 环境的配置稍微复杂一点:

  • IIS 管理器 中,点击 网站,右键选择 编辑绑定,设置应用程序的绑定端口。
  • IIS 管理器应用程序池 中,选择合适的 .NET Framework 版本
  • 确保 ASP.NET 配置正常:打开 命令提示符(管理员),输入以下命令来注册 ASP.NET:
    C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i
    
  • IIS 管理器 中,点击 网站功能视图ASP.NET,然后选择正确的配置。

🌈 总结

  • IIS 是 Windows 上的 Web 服务器,用于托管网站、ASP 和 ASP.NET 应用。
  • IIS 安装 过程:通过“Windows 功能”启用 IIS,并安装所需的功能。
  • 权限配置:为应用池和文件夹设置合适的访问权限,确保应用安全运行。
  • ASP 和 ASP.NET 配置:根据需要启用和配置 ASP 及 ASP.NET 环境,支持动态内容的渲染。

Apache介绍、安装使用及配置


🌐 一、认识 Apache

Apache HTTP Server(简称 Apache) 是世界上最常用的 Web 服务器之一,开源、免费、跨平台,支持静态/动态网页服务,和 PHP 配合使用非常常见~

Apache 的主要作用是:

  • 接收浏览器请求(HTTP/HTTPS)
  • 响应并发送网页内容(HTML、图片、视频)
  • 支持运行 PHP 脚本、CGI 程序等动态页面
  • 日志记录、虚拟主机、多模块扩展等功能强大

🛠️ 二、安装 Apache(Windows 示例)
方法1:单独安装 Apache(不推荐新手)

你可以去官网下载:https://httpd.apache.org/
但是配置复杂,不推荐初学者。

方法2:使用集成包(推荐)

推荐使用 WampServer、XAMPP、Laragon 等集成环境
它们自动打包好 Apache、PHP、MySQL 等,非常适合新手一键部署~

例如:XAMPP 官网


☁️ 三、Apache 后台管理(以 XAMPP 为例)

安装好后,你可以使用 XAMPP 控制面板来管理 Apache:

功能 说明
Start Apache 启动 Web 服务
Stop Apache 停止服务
Config 配置文件快捷入口,如 httpd.conf
Logs 查看访问/错误日志
Admin 打开浏览器访问首页,一般是 http://localhost/

🧩 四、搭建 PHP 环境(Apache + PHP)

安装 XAMPP 后,Apache 会自动集成 PHP。你只需:

1. 创建 PHP 项目文件

在 XAMPP 的 htdocs 目录下(默认是 C:\xampp\htdocs)新建你的项目文件夹:

C:\xampp\htdocs\myweb\

新建一个 index.php 文件写入:

<?php
  echo "Hello, world!";
?>
2. 访问你的网站

打开浏览器,访问:

http://localhost/myweb/index.php

就能看到网页输出啦!🎉


🔧 五、常用 Apache 配置文件说明

这些文件位于:

C:\xampp\apache\conf\
配置文件 功能说明
httpd.conf Apache 主配置文件
httpd-vhosts.conf 虚拟主机配置文件(多站点支持)
php.ini PHP 配置文件(位于 php 目录)

你可以通过 XAMPP 控制面板点击 Config 来快速打开这些文件。


💡 六、虚拟主机(可选)

如果你想通过 http://myweb.local 来访问你的网站:

  1. 修改 Apache 虚拟主机配置httpd-vhosts.conf):
<VirtualHost *:80>
    DocumentRoot "C:/xampp/htdocs/myweb"
    ServerName myweb.local
</VirtualHost>
  1. 修改本地 hosts 文件
C:\Windows\System32\drivers\etc\hosts

添加:

127.0.0.1 myweb.local

🎀 总结一下:
步骤 操作
认识 Apache 是一款开源 Web 服务器,适合搭建网站
安装 推荐用 XAMPP/WAMP 等集成环境
管理 控制面板管理 Apache 服务
环境 Apache + PHP 轻松搭建网站
配置 httpd.confphp.ini 常用

好的呢主人♥~尔铃现在带你轻松认识 Tomcat 服务器,并手把手讲清楚如何安装、配置、部署 Java Web 应用,最后再配合 Oracle 搭建完整开发环境~妖娆又实用✨


tomcat介绍、安装使用及配置


🐱 一、认识 Tomcat

Apache Tomcat 是一个由 Apache 提供的 开源 Java Web 容器,支持 Servlet、JSP 等技术,是最常用的轻量级 Web 应用服务器。

🎯 特点:

  • 支持 Java Servlet / JSP 应用运行
  • 跨平台、开源、免费
  • 可作为 Web 服务器或结合 Nginx 使用

🛠️ 二、Tomcat 安装 + JRE/JDK 环境变量配置

🧩 步骤一:安装 JDK(必须)

  1. 下载地址:https://www.oracle.com/java/technologies/javase-downloads.html
  2. 安装 JDK(注意路径,如:C:\Java\jdk-17

设置环境变量:

右键“此电脑” → 属性 → 高级系统设置 → 环境变量

变量名
JAVA_HOME C:\Java\jdk-17(你的安装路径)
Path 加入 %JAVA_HOME%\bin

然后在命令行输入:

java -version

看到 Java 版本说明配置成功~


🧩 步骤二:安装 Tomcat

  1. 下载地址:https://tomcat.apache.org/

    推荐下载 .zip 解压版,方便配置

  2. 解压到例如:C:\Tomcat9

☁️ 三、Tomcat 的结构和启动管理

📁 常用目录:

文件夹 说明
bin 启动/关闭脚本(startup.bat / shutdown.bat)
webapps 应用部署目录,放 .war 文件或项目文件夹
conf 配置文件目录,如 server.xml
logs 日志输出
lib jar 包依赖
work 编译缓存目录

🚀 启动 Tomcat:

进入 bin 文件夹,双击:

startup.bat

在浏览器访问:

http://localhost:8080

出现 Tomcat 页面即启动成功!


💼 四、Tomcat 应用部署及管理

✅ 方法1:直接复制 Web 应用到 webapps 文件夹

假设你有一个 Java Web 项目文件夹(或 .war 包):

  • 将其放入 webapps 目录,Tomcat 会自动解压并加载

例如:

webapps/
 └── myweb/
      └── index.jsp

浏览器访问:

http://localhost:8080/myweb/

✅ 方法2:在 conf/server.xml 配置 <Context>

更高级的部署方式是通过 <Host> 节点下添加:

<Context path="/myapp" docBase="C:/myproject" reloadable="true"/>

🔁 启停 Tomcat

  • 启动:bin/startup.bat
  • 停止:bin/shutdown.bat

☕ 五、搭建 JavaWeb + Oracle 环境

配置步骤:

  1. 搭建 Tomcat 服务器(已完成)
  2. 使用 IDEA 或 Eclipse 创建 JavaWeb 项目
  3. 添加 ojdbc.jar(Oracle JDBC 驱动)到项目的 lib
  4. 在代码中连接 Oracle:
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection conn = DriverManager.getConnection(
    "jdbc:oracle:thin:@localhost:1521:orcl", "用户名", "密码");
  1. 打包 .war 上传到 webapps,Tomcat 启动后自动部署。

✨ 总结小表格

项目 内容
服务器 Apache Tomcat(Java Web 容器)
安装需 JDK + Tomcat
启动 startup.bat,访问 http://localhost:8080
部署方式 拷贝到 webapps / 配置 server.xml
搭配 Java Web + Oracle 数据库

好嘞主人♥~现在由尔铃来为主人你细细讲解——从认识 Nginx 到安装使用、配置反向代理、负载均衡,再配合 PHP 脚本搭建完整 Nginx 应用环境,咱们一步一步轻松来(而且妖娆又清爽🌸)。


nginx介绍、安装使用及配置

💡 一、认识 Nginx(读作 "engine-x")

Nginx 是一个高性能、轻量级、开源的 Web 服务器,同时也可以作为:

  • 反向代理服务器
  • 负载均衡器
  • 邮件代理服务器

✨ Nginx 特点:

特性 说明
高并发性能强 基于异步非阻塞事件驱动
占用内存小 单进程可支撑上万连接
配置灵活 可做静态资源服务、反向代理、负载均衡等
跨平台 Windows/Linux 都能跑

🛠️ 二、Nginx 安装(以 Windows/Linux 为例)

🧩 Windows 安装:

  1. 下载地址:https://nginx.org/en/download.html
  2. 解压后直接运行:
start nginx.exe

浏览器访问 http://localhost:80,看到欢迎页说明成功~

  • 关闭:nginx -s stop
  • 重启:nginx -s reload

🧩 Linux 安装(以 Ubuntu 为例):

sudo apt update
sudo apt install nginx

默认启动后访问 http://localhost,大功告成。


📁 三、Nginx 文件结构

nginx/
 ├── conf/             # 配置文件夹(nginx.conf)
 ├── html/             # 默认网页目录
 ├── logs/             # 日志目录
 └── sbin/nginx        # 主程序

🚦 四、Nginx 反向代理与负载均衡配置

🌀 反向代理:

反向代理就是客户端请求先到 Nginx,由 Nginx 再转发给后端服务器。

示例:

server {
    listen 80;
    server_name yourdomain.com;

    location / {
        proxy_pass http://127.0.0.1:8080;  # 转发给本机 8080 端口服务
        proxy_set_header Host $host;
    }
}

🌈 负载均衡:

配置多个后端服务器,Nginx 会自动分流请求。

示例:

upstream backend {
    server 127.0.0.1:8081;
    server 127.0.0.1:8082;
}

server {
    listen 80;
    location / {
        proxy_pass http://backend;
    }
}

🎯 支持轮询(默认)、ip_hash、least_conn 等算法。


⚙️ 五、FastCGI 配置(配合 PHP)

🌟 Nginx 本身不能运行 PHP,但可以通过 FastCGI 连接 PHP 引擎。

安装 PHP-FPM(Linux):

sudo apt install php-fpm

配置 Nginx 支持 PHP:

server {
    listen 80;
    root /var/www/html;
    index index.php index.html;

    location ~ \.php$ {
        include fastcgi_params;
        fastcgi_pass unix:/run/php/php7.4-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }
}

👉 若是 Windows,可安装 PHP,修改路径为:

fastcgi_pass 127.0.0.1:9000;

📦 六、Nginx 应用管理(常用命令)

# 启动
nginx

# 重新加载配置
nginx -s reload

# 停止
nginx -s stop

# 测试配置是否正确
nginx -t

💻 七、搭建 Nginx + PHP 应用环境(经典 LNMP 环境)

组件 功能
Linux 系统环境
Nginx Web服务器
MySQL 数据库
PHP-FPM PHP解释器

部署步骤大概是:

  1. 安装 nginxphpmysql
  2. 配置 nginx 连接 php(FastCGI)
  3. 放置你的 PHP 文件到 /var/www/html/
  4. 启动服务:nginxphp-fpmmysql
  5. 浏览器访问 http://localhost/index.php,看是否成功执行 PHP 脚本

✅ 总结表格

项目 功能 备注
Nginx Web服务器、反向代理、负载均衡 高性能、轻量级
FastCGI PHP解释器连接方式 连接 PHP-FPM
应用部署 PHP+Nginx 推荐使用 LNMP
应用管理 reload、stop、-t 轻松控制

Weblogic介绍、安装使用及配置


💡 一、认识 WebLogic 是什么?

🌐 Oracle WebLogic Server 是 Java EE(J2EE)企业级应用服务器,支持:

  • Web 应用(Servlet、JSP)
  • 企业 Java Bean(EJB)
  • 分布式事务处理
  • JMS 消息服务
  • Web Service 发布

属于 中间件中的高端选手,常用于银行、运营商、政府等大型系统部署。


🧩 二、WebLogic 安装(以 Windows 为例)

1️⃣ 准备条件:

  • 安装 JDK 8 或 11
  • 设置好 JAVA_HOME
  • 下载 Oracle 官方 WebLogic 安装包(推荐 Generic 版本 .jar

2️⃣ 设置 JRE 环境变量:

# 假设你安装在 C:\Java\jdk1.8.0_xx
JAVA_HOME=C:\Java\jdk1.8.0_xx
PATH=%JAVA_HOME%\bin;%PATH%
CLASSPATH=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar

3️⃣ 安装 WebLogic:

java -jar fmw_12.2.1.4.0_wls.jar
  • 跟随图形安装向导选择路径
  • 安装 WebLogic 基础组件

🛠️ 三、创建 WebLogic 域(Domain)

WebLogic 的 “域”(Domain)类似一个应用集群的配置空间。

config.cmdconfig.sh 来配置:

cd wlserver/common/bin/
config.cmd

配置内容包括:

  • 域名
  • 管理服务器端口(默认为 7001)
  • 用户名和密码
  • 可选:集群、节点管理器配置

💻 四、访问 WebLogic 控制台

成功启动后:

浏览器访问:http://localhost:7001/console

输入用户名密码登录,便可进入后台管理控制台。

你可以在此:

  • 部署 Web 应用(war/ear 文件)
  • 管理服务器状态
  • 配置数据源、JMS、集群等

🚀 五、WebLogic 部署应用(WAR 包)

部署步骤:

  1. 登录后台控制台
  2. 点击左侧「部署」→「安装」
  3. 选择 .war 文件上传或指定路径
  4. 部署目标选择 AdminServer
  5. 设置部署计划,完成即可运行

⚙️ 六、WebLogic + J2EE 环境搭建(即开发+运行环境)

项目 功能
JDK Java运行环境
WebLogic Java EE应用服务器
Eclipse(或 IDEA) 开发 Java Web 项目
Oracle DB / MySQL 数据库(可选)

使用 WebLogic 可以跑完整的企业级 J2EE 架构(包括 EJB、JPA、JMS、JAX-WS 等)。


🧾 七、WebLogic 常用命令

# 启动管理服务器
cd user_projects/domains/base_domain/
startWebLogic.cmd

# 停止
stopWebLogic.cmd

如果搭建了节点管理器/集群,也可通过命令远程启动各节点。


✅ 总结表格:中间件对比

项目 Tomcat WebLogic
支持规范 Servlet/JSP 全部 Java EE
适用场景 轻量 Web 应用 企业级大型应用
部署方式 war 拷贝 控制台或命令行
管理功能 简单(配置文件) 图形化界面全面管理
是否收费 免费 Oracle 商用收费

❤️ 小贴士

如果主人想研究 中间件漏洞(比如反序列化、控制台弱口令等),WebLogic 是绝佳靶子之一~
经典漏洞如:

  • CVE-2017-10271
  • CVE-2020-14882
  • 控制台弱口令
  • T3 协议反序列化漏洞

👀 实战建议:在本地虚拟机或 Docker 环境搭一个 WebLogic 靶场做渗透练习。


posted @ 2025-04-08 15:06  Xia0_0  阅读(293)  评论(0)    收藏  举报