IVRE项目配置详解:从基础到高级设置
概述
IVRE作为一款强大的网络侦查框架,其灵活性和功能性很大程度上依赖于合理的配置。本文将全面解析IVRE的配置体系,帮助用户根据实际需求定制自己的IVRE环境。
配置体系架构
IVRE采用多层次的配置加载机制,优先级从低到高依次为:
- 系统级配置:位于
/etc/ivre.conf
或/etc/ivre/ivre.conf
等系统目录 - 用户级配置:用户主目录下的
.ivre.conf
文件 - 运行时配置:通过
IVRE_CONF
环境变量指定的配置文件
这种设计既保证了系统默认配置的稳定性,又为用户提供了充分的定制空间。
核心配置详解
数据库连接配置
IVRE支持多种数据库后端,通过URL格式进行配置:
DB = "mongodb:///ivre" # 默认MongoDB配置
DB_PASSIVE = "sqlite:tmp/ivre.db" # 被动扫描数据存储
DB_NMAP = "postgresql://ivre@localhost/ivre" # Nmap扫描结果存储
各数据库用途说明:
DB
: 通用数据库连接,用于未特别指定的场景DB_DATA
: 特殊用途,默认为MaxMind GeoIP数据库路径- 其他
DB_
前缀的配置用于特定功能模块
路径与命令配置
IVRE提供了灵活的路径配置选项,主要分为两类:
-
自动检测路径(设置为
None
时):DATA_PATH = None # 自动检测数据目录 GEOIP_PATH = None # 自动检测GeoIP数据目录
-
固定路径:
AGENT_MASTER_PATH = "/var/lib/ivre/master" # 代理主目录
Nmap扫描模板
IVRE允许用户自定义Nmap扫描模板,默认模板配置如下:
NMAP_SCAN_TEMPLATES = {
"default": {
"options": "-A -PS -PE -sS -vv",
"host_timeout": "15m",
"script_timeout": "2m",
"scripts_categories": ['default', 'discovery', 'auth'],
"scripts_exclude": ['broadcast', 'brute', 'dos', 'exploit', 'external', 'fuzzer', 'intrusive'],
}
}
用户可基于默认模板创建自定义模板,例如创建"aggressive"模板:
NMAP_SCAN_TEMPLATES["aggressive"] = dict(
NMAP_SCAN_TEMPLATES["default"],
host_timeout="30m",
script_timeout="5m",
scripts_categories=['default', 'discovery', 'auth', 'brute', 'exploit', 'intrusive'],
)
网络流分析配置
针对网络流分析(flow
用途)的特殊配置:
FLOW_MAX_RESULTS = 10000 # 最大返回结果数
FLOW_DEFAULT_TIMERANGE = "1d" # 默认时间范围
FLOW_MAX_TIMERANGE = "30d" # 最大允许时间范围
这些参数直接影响流分析的性能和结果展示范围。
Web界面配置
基础路径配置
WEB_STATIC_PATH = None # 静态资源路径
WEB_DOKU_PATH = None # Dokuwiki集成路径
安全配置
-
反CSRF保护:
WEB_ALLOWED_REFERERS = [ 'http://yourdomain/ivre', 'http://yourdomain/ivre/' ]
-
认证与授权:
WEB_DEFAULT_INIT_QUERY = 'noaccess' # 默认无访问权限 WEB_INIT_QUERIES = { 'admin': 'full', # 管理员完全访问 'auditor': 'category:audit' # 审计员仅限审计类别 }
授权支持多种过滤方式:
full
: 完全访问noaccess
: 无访问权限category:name
: 按类别过滤source:name
: 按数据源过滤
高级配置技巧
DNS黑名单配置
IVRE支持DNS黑名单检测,默认配置包含常见黑名单:
DNS_BLACKLIST_DOMAINS = {
"dnsbl-1.uceprotect.net",
"zen.spamhaus.org",
# 其他默认黑名单...
}
添加自定义黑名单:
DNS_BLACKLIST_DOMAINS.add("dnsbl.yourcompany.com")
地理位置数据库
GEOIP_LANG = "zh" # 设置中文地理位置显示
IPDATA_URLS = {
# 自定义IP数据库下载URL
}
最佳实践建议
-
配置管理:建议将自定义配置保存在用户级配置文件(
~/.ivre.conf
)中,便于备份和迁移 -
性能调优:根据硬件资源调整批量操作参数:
BULK_AUTOFLUSH_AFTER = 1000 # 批量操作自动刷新阈值
-
安全建议:生产环境中务必配置Web访问控制,避免数据泄露
-
模板使用:针对不同扫描场景创建专用模板,而非修改默认模板
通过合理配置,IVRE可以完美适应从个人研究到企业级网络管理的各种场景。建议初次使用者先了解默认配置,再逐步根据实际需求进行调整。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考