RizwanMemar/SecureVault-Pro-File-Security-DevOps-Project
GitHub: RizwanMemar/SecureVault-Pro-File-Security-DevOps-Project
一个基于 Flask 的文件安全分析 Web 应用,集成哈希计算、恶意软件检测、OCR 和完整 DevOps 流水线。
Stars: 0 | Forks: 0
# 🔐 SecureVault Pro – 文件安全与 DevOps 项目





## 🚀 项目概述
SecureVault Pro 是一个基于 Flask 的网络安全 Web 应用程序,用于分析上传的文件:
- MD5, SHA1, SHA256 哈希计算
- 文件类型检测
- 风险评分引擎
- 基础恶意软件检测(基于哈希)
- 图像转 PDF
- OCR(图像转文本模拟 / 可选的真实 OCR 支持)
它作为一个集成 DevOps 的项目构建,演示了从开发到部署的完整工作流。
## 🧰 功能
- 🔐 文件哈希生成 (MD5, SHA1, SHA256)
- ⚠️ 风险分析引擎
- 🛡 恶意软件检测(基于签名)
- 🖼 图像 → PDF 转换器
- 🔍 图像 → 文本 (OCR)
- 🧰 工具仪表板(多页面 UI)
- 💻 黑客风格终端动画 UI
- 🌐 Flask Web 界面
## ⚙️ 使用的技术
- Python (Flask)
- HTML / CSS / JavaScript
- Docker
- Git & GitHub
- GitHub Actions (CI 流水线)
- Terraform (基础设施模拟)
- ReportLab (PDF 生成)
## 🧱 架构图
```
┌────────────────────┐
│ User Browser │
└─────────┬──────────┘
│
▼
┌──────────────────────────┐
│ Flask Web Application │
│ (SecureVault Pro) │
└─────────┬────────────────┘
│
┌─────────────────┼──────────────────┐
▼ ▼ ▼
┌──────────────┐ ┌────────────────┐ ┌──────────────────┐
│ File Upload │ │ Security Engine│ │ Tools Module │
│ │ │ │ │ │
│ - Upload │ │ - MD5 / SHA │ │ - Image → PDF │
│ - Store File │ │ - Risk Score │ │ - OCR (Text) │
│ │ │ - Malware Check│ │ - TXT → PDF │
└──────────────┘ └───────┬────────┘ └─────────┬────────┘
│ │
▼ ▼
┌────────────────────────────────────┐
│ Processing Layer │
│ │
│ - Hash Generator │
│ - SHA256 / SHA1 / MD5 │
│ - Risk Analysis Engine │
│ - File Intelligence Scanner │
└──────────────────┬────────────────┘
│
▼
┌────────────────────────┐
│ Docker Container │
│ (Portable Deployment) │
└─────────┬──────────────┘
│
▼
┌────────────────────────┐
│ GitHub Actions (CI/CD) │
│ │
│ - Build & Test │
│ - Docker Validation │
│ - Automated Workflow │
└─────────┬──────────────┘
│
▼
┌────────────────────────┐
│ Terraform (IaC Layer) │
│ │
│ - Infrastructure Setup │
│ - Local Simulation │
└────────────────────────┘
```
## ▶️ 完整本地设置指南
### 1️⃣ 克隆仓库
```
git clone https://github.com/YOUR_USERNAME/YOUR_REPOSITORY.git
```
```
cd "SecureVault Pro – File Security & DevOps Project"
```
### 2️⃣ 创建虚拟环境
```
python -m venv venv
```
### 3️⃣ 激活虚拟环境
### Windows (PowerShell)
```
venv\Scripts\Activate.ps1
```
### Windows (CMD)
```
venv\Scripts\activate
```
### Linux / macOS
```
source venv/bin/activate
```
### 4️⃣ 安装项目依赖
```
pip install -r requirements.txt
```
### 5️⃣ 安装 OCR 引擎 (Tesseract)
### Windows
1. 下载 Tesseract OCR
2. 安装它
3. 将 Tesseract 添加到 PATH
默认路径:
```
C:\Program Files\Tesseract-OCR\tesseract.exe
```
在 `app.py` 中的可选配置:
```
pytesseract.pytesseract.tesseract_cmd = r"C:\Program Files\Tesseract-OCR\tesseract.exe"
```
### 6️⃣ 运行 Flask 应用程序
```
python app.py
```
应用程序 URL:
```
http://127.0.0.1:5000
```
## 🐳 Docker 设置
### 构建 Docker 镜像
```
docker build -t securevault-pro .
```
### 运行 Docker 容器
```
docker run -p 5000:5000 securevault-pro
```
## ⚙️ Terraform 设置
### 打开 Terraform 文件夹
```
cd terraform
```
### 初始化 Terraform
```
terraform init
```
### 应用基础设施
```
terraform apply
```
当出现提示时输入:
```
yes
```
## 🔄 GitHub Actions CI/CD
该项目包含一个 CI 工作流,可自动执行以下操作:
- 检出代码
- 安装依赖
- 测试 Flask 应用程序
- 构建 Docker 镜像
工作流文件:
```
.github/workflows/ci.yml
```
## 👨💻 作者
**Qaisar Rizwan Memar**
阿富汗美国大学 (AUAF) 学生
标签:DNS 反向解析, DNS枚举, Docker, EC2, ECS, Flask, GitHub Actions, IaC, MD5, NIDS, OCR, Python, SHA1, SHA256, Terraform, 光学字符识别, 前端界面, 后端开发, 哈希分析, 图像转PDF, 安全分析引擎, 安全防御评估, 容器化, 开发者评论分析, 文件分析, 文件安全, 无后门, 特权提升, 签名检测, 网络信息收集, 网络安全, 网络安全工具, 自动化部署, 自动笔记, 自定义DNS解析器, 请求拦截, 逆向工具, 隐私保护, 风险评分