|Manuals

Firewall Configuration

Configuration

A network Firewall positioned upstream of Thinfinity® Workspace must maintain secure end-to-end connectivity for prolonged HTTPS and WSS (WebSocket Secure) sessions while implementing strict segmentation across the three architectural tiers: Edge, Orchestration and Control, and Workload Layers.

Objectives:

  • Facilitate uninterrupted transmission of TLS 1.2 and TLS 1.3 protocols, as well as WSS traffic, throughout the entire communication pathway.
  • Reduce the attack surface by enforcing the principle of least privilege through granular OSI Layer 3 (Network) and Layer 4 (Transport) access controls, complemented by micro-segmentation strategies.
  • Ensure compatibility with WebSocket upgrade requests and authentication procedures, preventing disruptions to WebSocket handshake processes or session authentication workflows.

Base Transport Policy

  • Permit TCP 443 only on internet-facing listeners; block all plain HTTP.
  • No TLS/SSL interception for Thinfinity Workspace data paths.
  • Validate current certificates and preferred ciphers (TLS 1.2/1.3). If your firewall supports FQDN (Fully Qualified Domain Names) objects, restrict ingress to your Thinfinity Workspace FQDNs.

WebSocket Handling

Allow the HTTP/1.1 upgrade process involving headers (Connection: upgrade, Upgrade: websocket) and respond with a 101 Switching Protocols status code. Post-upgrade, disable deep payload inspection for encrypted WebSocket frames and instead implement enforcement of rate limiting and concurrent connection constraints. Maintain persistent state entries to manage long-duration connections in accordance with the specifications outlined in the Timeouts section.

Segmented Rule Sets (Reference)

Edge → Orchestration and Control

  • LB/WAF → Gateways: Allow TCP 443 (TLS re-encryption) and health checks to the Gateway pool.

Orchestration and Control Layer

  • Gateways ↔ Brokers: Allow required control APIs over HTTPS (TCP 443) within the layer.
  • Brokers → Identity: Allow LDAPS (636) or LDAP (389), Kerberos (88/464), Global Catalog (3268/3269), DNS (53), and NTP (123) to your AD/DNS/NTP servers.
  • Brokers → Database: Permit your chosen engine only (e.g., MySQL 3306 or SQL Server 1433).

Thinfinity → Workloads

  • Gateways → VDI/Apps: Allow RDP (3389) for Windows VDI/Server, SSH (22) for Linux, and HTTPS/HTTP to internal web apps as required — scoped per host pool/segment.
  • Session Hosts → Profile/File Services: Permit SMB (445) to profile/file shares (e.g., FSLogix) from session hosts only; do not expose SMB broadly.

Egress (as needed)

  • CRL/OCSP (80/443) for certificate validation, package repos for patching (scoped), and NTP (123) to trusted time sources.

Inspection & Access Controls

Implement bypass for application-level control and Intrusion Prevention System (IPS) functionalities specifically for WebSocket tunnel endpoints, while maintaining inspection capabilities for standard HTTP(S) control interfaces.

Authenticate and verify the Origin and Referrer headers at the WAF/LB. Ensure that network-layer (L3/L4) allowlists are enforced consistent with the FQDNs of the front-end services.

General Considerations for Traffic Inspection

Category Address/Pattern Function Notes
Main Domain https://<domain> Primary HTTPS 443 access Base entry point for all Thinfinity requests.
Logs & Monitoring /__elogs__/ Telemetry and logs Required for event collection.
Logs & Monitoring /__cloud__/ Internal resources Used for integration with cloud services.
Logs & Monitoring /__web__/ Internal web resources Loads portal components.
Logs & Monitoring /__base__/ Interface resources Loads core libraries and UI base.
Logs & Monitoring /__notifications__/ Notifications Used for alerts and internal messages.
Logs & Monitoring /__themes__/* UI themes and styling Personalization and rendering of the interface.
Brokers & VDI /VDI:* VDI session connections Thinfinity Virtual Desktop sessions.
Brokers & VDI /BRK:* Thinfinity Brokers Communication between broker nodes.
Brokers & VDI /WEB:* Web application sessions Publication and access to web applications.
Health-Checks /VDI:<gateway>/__health__/ Monitoring Availability check for each VDI gateway node.
Health-Checks /BRK:<broker>/__health__/ Monitoring Availability check for each broker node.
Authentication /?signin Login Initial authentication flow.
APIs & Resources /RDPSession/getList?kind=logins&ps=10&pn=1 RDP session API Provides login session listings.
Static Files /favicon.ico Icon UI graphic resource.
Static Files /flsenv.min.js JavaScript Main Thinfinity script.
Static Files /common/* Shared resources Common JavaScript libraries and utilities.
Static Files /css/* Stylesheets CSS files for UI.
Static Files /font/* Fonts Typography resources.
Static Files /rdp/* RDP resources Scripts and binaries for RDP sessions.
Static Files /workspace/* Workspace UI Core elements of the Thinfinity Workspace interface.
Static Files /HP-* Specific resources Internal components.
Static Files /[32-character alphanumeric]/* Session identifiers Unique session identification.
Static Files /machinename@ipaddress/* RDP sessions Associates machine name and IP address with RDP sessions.

Allowed HTTP Methods

For Thinfinity Workspace to operate correctly, the firewall and the WAF must allow specific HTTP methods that are essential for authentication flows, API calls, resource loading, and WebSocket upgrades.

Method Description
GET Retrieves static resources such as UI components, scripts, and images.
POST Required for login, API operations, and session initiation.
PUT Used in certain update operations within Thinfinity services.
DELETE Supports controlled removal of session-related or temporary resources.
OPTIONS Necessary for CORS (Cross-Origin Resource Sharing) preflight requests handled by browsers.
PROPFIND Required for WebDAV integration and file-related operations.