Add SERVER_HEADER environment variable to customize the HTTP Server
response header, defaulting to Apache/2.2.22 (Ubuntu). This allows the
honeypot to masquerade as different web servers to attract attackers.
- Add server_header field to Config dataclass
- Override version_string() in Handler to return configured header
- Update documentation and all deployment configs
Implement a centralized logging singleton using Python's built-in
logging module with RotatingFileHandler. Replaces all print()
statements with structured logging.
- Create LoggerManager singleton in src/logger.py
- Add two loggers: app (krawl.log) and access (access.log)
- Configure 1MB file rotation with 5 backups
- Output to both files and stdout for container compatibility
- Update handler.py, server.py, wordlists.py to use new loggers
Benefits over print():
- Persistent logs survive restarts for forensic analysis
- Automatic rotation prevents unbounded disk growth
- Separate access/app logs for easier analysis and SIEM integration
- Consistent timestamps and log levels across all messages
- Configurable verbosity without code changes