Environment Variables
OSINT Hub uses environment variables for configuration management. Copy.env.example to .env and customize the values:
Required Variables
Django secret key for cryptographic signing. Must be unique and kept secret.Generate a secure secret key:
Enable or disable debug mode. Set to
False in production.Comma-separated list of allowed hostnames for the application.Django will reject requests with a
Host header that doesn’t match these values.Comma-separated list of trusted origins for CSRF protection. Required for production.
Include the full URL scheme (http:// or https://). Multiple origins are supported.
Database connection string in URL format.The format is:
protocol://user:password@host:port/databaseOptional Variables
Directory path for storing username search results (Sherlock output).The directory will be created automatically if it doesn’t exist.
Example Configuration
Development Environment
.env (Development)
Production Environment
.env (Production)
Django Settings Overview
Key Django settings are configured inosint_hub/settings.py:
Static Files
Static files are served using WhiteNoise in production:settings.py
python manage.py collectstatic before deploying to production.
Media Files
Uploaded files (images, videos, PDFs for EXIF analysis) are stored in:settings.py
Maximum upload size is 50 MB. Files are temporarily stored during metadata extraction and can be deleted after processing.
Celery Configuration
Celery is configured to use Redis as the message broker:settings.py
ExifTool Path
The application automatically detects ExifTool at common locations:settings.py
Security Settings (Production)
WhenDEBUG=False, the following security settings are automatically enabled:
settings.py
Content Security Policy (CSP)
OSINT Hub includes strict CSP headers to prevent XSS attacks:settings.py
CSP is enforced by default (
CSP_REPORT_ONLY = False). If you experience issues with external resources, check the browser console for CSP violations.Installed Applications
The following Django apps are included:email_holehe- Email search using HoleheExifTool- EXIF metadata extractionPhoneSearch- Phone number investigationUsernameSearch- Username search using SherlockHashTool- Hash generation and verificationIPLookup- IP address geolocation
Internationalization
Default language and timezone:settings.py
Proxy Configuration
If deploying behind a reverse proxy (Nginx, Apache), ensure these settings are enabled:settings.py
Verification
Verify your configuration:--deploy flag performs additional security checks for production deployments.
Next Steps
Installation
Complete the installation steps
Production Deployment
Deploy to production with Gunicorn
