ed1thub/HostGuard
GitHub: ed1thub/HostGuard
HostGuard 是一个基于 Python 的轻量级安全审计项目,用于检查 Linux 主机的基线配置并生成结构化报告。
Stars: 1 | Forks: 0
# HostGuard
HostGuard 是一个由学生构建的 Python 项目,用于审核基本的 Linux 安全设置,并以清晰、结构化的方式呈现结果。它作为一个网络安全作品集项目创建,旨在展示在系统加固、配置审查和 Python 自动化方面的实际工作。
## 作品集说明
本仓库有意保持轻量级和教育性。它旨在演示如何组织、测试和报告一个小型的审核工具,而不是为了取代完整的企业级安全扫描器或合规框架。
## 功能概述
HostGuard 检查 Linux 主机的常见基线问题,并生成人类可读和机器可读的报告。
它目前检查以下内容:
- SSH root 登录状态
- 主机防火墙可用性
- 密码老化策略
- 遗留的不安全服务
- `/etc` 下的全局可写文件
## 功能特性
- 基于模块化检查的架构
- 控制台输出以便快速审查
- JSON 报告生成
- HTML 报告生成
- 用于结果的简单 dataclass 模型
- 基本的自动化测试
## 当前检查项
| 检查 ID | 检查名称 | 描述 |
|---|---|---|
| SSH-001 | SSH Root 登录已禁用 | 验证 `PermitRootLogin` 是否已禁用 |
| FW-001 | 防火墙已启用 | 检测 UFW、firewalld 或 nftables 是否处于活动状态 |
| PWD-001 | 密码老化策略 | 审查 `PASS_MAX_DAYS`、`PASS_MIN_DAYS` 和 `PASS_WARN_AGE` |
| SVC-001 | 遗留不安全服务已禁用 | 检测不安全的遗留服务,如 telnet |
| PERM-001 | `/etc` 下无全局可写文件 | 标记 `/etc` 下存在风险的文件权限 |
## 示例输出
提供了示例报告,以便查看者无需在本地运行即可查看该工具的输出:
- [sample_report.json](sample_reports/sample_report.json)
- [sample_report.html](sample_reports/sample_report.html)
## 本地运行
该项目需要 Python 3.11 或更高版本。
```
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
python -m hostguard.main --json-out reports/report.json --html-out reports/report.html
```
## 项目结构
```
HostGuard/
├── hostguard/
│ ├── main.py
│ ├── models.py
│ ├── checks/
│ └── reporting/
├── reports/
├── sample_reports/
├── screenshots/
├── tests/
├── README.md
├── requirements.txt
└── pyproject.toml
```
## 许可证
HostGuard 采用 MIT 许可证发布。完整文本请参阅 [LICENSE](LICENSE)。
## 截图

标签:AMSI绕过, DevSecOps, DNS解析, HTML报告, JSON报告, PB级数据处理, Python, SSH配置, 上游代理, 关系图谱, 口令策略, 基线检查, 威胁检测, 安全运维, 开源项目, 无后门, 权限管理, 模型越狱, 系统加固, 网络安全, 网络调试, 自动化, 逆向工具, 配置审查, 防御性安全, 防火墙检测, 隐私保护