ADDED Requirements
Requirement: Nginx is installed as a fallback web server for Trojan
The landing server SHALL have nginx installed and configured to serve a static fallback page on trojan_fallback_port.
Scenario: Nginx is installed
- WHEN the trojan role runs on a landing server
- THEN the nginx package is installed and available
Requirement: Nginx serves a camouflage page on the fallback port
Nginx SHALL be configured with a server block listening on trojan_fallback_port that returns a static HTML page, mimicking a generic website for HTTPS camouflage.
Scenario: Fallback page is accessible
- WHEN an HTTP request is made to
localhost:trojan_fallback_port
- THEN nginx returns a 200 response with static HTML content
Requirement: Fallback port is allowed through UFW
The trojan_fallback_port SHALL be added to the allowed_ports list in group_vars/landing.yml so the base role opens it through the firewall.
Scenario: Firewall allows fallback port
- WHEN the base role configures UFW
- THEN traffic on
trojan_fallback_port is allowed