Table of Contents

Introduction

Setting up a web development or production environment on Windows has traditionally been a fragmented experience. You need Apache or NGINX for reverse proxying, OpenSSL for certificates, Docker for containers, PostgreSQL for databases, and a collection of security tools to harden your stack. Each tool has its own installer, configuration format, and update mechanism.

ProxyStack eliminates this complexity by packaging everything into a single portable ZIP file. Extract it to any folder, run ProxyStackGUI.exe, and you have a fully functional web stack with a modern dark-themed GUI. No installation, no registry changes, no admin privileges required.

With the release of v14.2.0 (Phase 17 Complete), ProxyStack has evolved from a simple reverse proxy manager into a comprehensive security, compliance, and multi-server management platform with full Nginx support. This article takes an in-depth look at every major feature, the design decisions behind them, and how they work together to provide enterprise-grade infrastructure from a portable application.

21
GUI Views
29
Security Checks
28
Compliance Controls
12
WAF Rules
4
Frameworks

The Problem We Solved

Windows developers and system administrators face a unique set of challenges that Linux users don't encounter. The ecosystem is fragmented: IIS handles some things, Apache handles others, and getting them to coexist requires careful port management. SSL certificate management on Windows is notoriously painful. Docker Desktop works but adds significant overhead. And security tooling? Most of it is built for Linux first, Windows second.

We identified several pain points that ProxyStack addresses:

Architecture & Design

ProxyStack is built on .NET 8 with Windows Forms for the GUI. The choice of .NET 8 provides excellent performance, native Windows integration, and access to the full Windows API surface including DPAPI for encryption and certificate stores.

Design Principles

Technology Stack

Runtime:        .NET 8 (Windows Forms)
Web Server:     Apache 2.4 (bundled)
SSL:            OpenSSL (bundled), win-acme (bundled)
Database:       PostgreSQL 14 (portable, optional)
Encryption:     Windows DPAPI (CurrentUser scope)
Certificates:   X509Certificate2 (.NET), OpenSSL CLI
Config Format:  JSON (proxystack.json, zero-trust.json, secrets.json)
Build:          dotnet publish -c Release -r win-x64

Core Infrastructure

Apache Reverse Proxy

At its core, ProxyStack manages a bundled Apache 2.4 instance. The GUI generates httpd.conf and vhosts.conf from your proxystack.json configuration. Each site can be a reverse proxy, a static file server, or a hybrid with per-path routing.

Key capabilities include TLS 1.2/1.3 with SNI for multi-domain support, WebSocket proxying via mod_proxy_wstunnel, SPA fallback for single-page applications, and automatic certificate path detection. When you add a site with SSL enabled but no cert paths, ProxyStack scans the certs/ folder for matching files based on domain name patterns.

App Runner

The Apps view manages backend processes with health checks and auto-restart. A unique feature is sub-processes: you can define multiple commands per app (e.g., npx supabase start as a sub-process alongside npm run dev). Sub-processes start before the main command and are killed together when the app stops. All commands auto-accept prompts via echo y | piping and npm_config_yes=true.

Docker & PostgreSQL

The Docker view provides full container lifecycle management: start, stop, restart, remove, logs, inspect, and exec. Docker Compose up/down is supported for multi-service deployments. One-click container templates cover 12 common services (NGINX, PostgreSQL, Redis, Node.js, etc.).

For PostgreSQL, ProxyStack offers a portable installation that doesn't require Docker. Click "Start PostgreSQL" and if it's not installed, a ~300 MB download begins with a progress bar. PostgreSQL runs from the postgres/ folder with data in postgres/data/. A built-in Database Console allows direct SQL queries from the GUI.

The Security Suite

Phase 11 transformed ProxyStack from a web stack manager into a comprehensive security platform. Six new sidebar views were added, each addressing a different aspect of application security:

Compliance (OWASP Top 10 2025)

10 automated checks against the OWASP Top 10 2025 standard. Security score 0–100 with color-coded category cards. Export as CSV or TXT.

WAF (Web Application Firewall)

12 built-in rules covering SQLi, XSS, path traversal, command injection, SSRF, XXE, and more. 3 operating modes. Custom rule editor. ModSecurity export. Real-time threat dashboard.

Scanner (Security Scanner)

Quick Scan (11 checks) and Full Scan (18 checks) covering TLS, headers, permissions, secrets, ports, containers, and databases. Severity-weighted scoring with remediation guidance.

Secrets Vault (DPAPI-Encrypted Store)

8 categories, 5-second auto-hide reveal, 30-second clipboard clear, one-click rotation with 32-char cryptographic random, .env export.

Reports (Compliance Reporting)

SOC2 Type II (9 controls), GDPR (6 articles), PCI-DSS v4.0 (8 requirements), HIPAA (5 safeguards) = 28 total checks. Evidence-based with CSV/TXT export.

Zero Trust (mTLS & Network Segmentation)

Mutual TLS with CA/server cert generation, certificate-based auth policies (CN/OU/Issuer/Fingerprint/SAN), network segmentation zones, trust score 0–100, Apache .conf export.

OWASP Compliance in Depth

The OWASP Top 10 is the most widely recognized standard for web application security. ProxyStack's Compliance view maps each of the 10 categories to specific, measurable checks against your live configuration.

For example, A02: Cryptographic Failures checks whether TLS is enabled on all configured sites and whether certificate paths are valid. A03: Injection verifies that WAF rules for SQL injection, XSS, and command injection are active. A09: Logging Failures confirms that Apache access and error logging are enabled.

Each check produces a Pass or Fail result with a specific reason. The overall security score is calculated as a weighted average, giving more weight to critical categories like injection and access control. Results can be exported as CSV (for spreadsheets) or TXT (for documentation).

Why OWASP 2025? The OWASP Top 10 is updated periodically to reflect the current threat landscape. ProxyStack targets the 2025 edition, which emphasizes server-side request forgery (SSRF) and software supply chain integrity alongside traditional threats like injection and broken access control.

WAF: Request-Level Protection

The Web Application Firewall operates at the request level, inspecting incoming HTTP requests against a set of pattern-matching rules before they reach your backend applications.

The 12 Built-in Rules

Each rule targets a specific attack vector with carefully crafted regex patterns:

Three Operating Modes

Detect Only is ideal for initial deployment: it logs all matches without blocking any requests, letting you tune rules and identify false positives. Block & Log is the recommended production mode: malicious requests are blocked and logged for review. Block Silent blocks without logging, useful for high-traffic environments where logging overhead is a concern.

ModSecurity Export

The WAF configuration can be exported as a ModSecurity-compatible .conf file. This means you can develop and test your WAF rules in ProxyStack's GUI, then deploy them to any Apache or NGINX server running ModSecurity in production.

Zero Trust: Beyond Perimeter Security

Traditional security models trust everything inside the network perimeter. Zero Trust assumes no implicit trust — every request must be authenticated and authorized, regardless of where it originates.

ProxyStack implements Zero Trust through three mechanisms:

1. Mutual TLS (mTLS)

Standard TLS only authenticates the server to the client. mTLS adds client authentication: the client must also present a valid certificate signed by a trusted CA. ProxyStack can generate the entire certificate chain:

The generated certificates use the .NET X509Certificate2 class for creation and validation, ensuring compatibility with the Windows certificate store.

2. Certificate Authentication Policies

Beyond just requiring a valid client certificate, you can define fine-grained policies that match specific certificate attributes. For example, you might allow only certificates with OU=Engineering to access your API, or restrict access to a specific client by SHA256 fingerprint. Five match types are supported: CN, OU, Issuer, Fingerprint, and SAN.

3. Network Segmentation

Define network zones with CIDR ranges, allowed ports, and traffic direction. This creates IP-based access control that segments your network into trusted zones. When exported to Apache configuration, these become <Location> blocks with Require ip directives.

Trust Score

The Trust Score (0–100) provides a quick visual indicator of your Zero Trust posture. It's calculated from six factors: mTLS enabled (+30), CA cert configured (+15), server cert configured (+15), client verification set to "require" (+15), auth policies defined (+15), and segmentation zones defined (+10). A score of 100 means you have a fully configured Zero Trust environment.

Secrets Management Done Right

Storing secrets securely is one of the most common challenges in application development. ProxyStack's Secrets Vault uses Windows DPAPI (Data Protection API) with the CurrentUser scope, which means:

This is the same encryption mechanism used by Chrome to store passwords and by Windows Credential Manager. It's battle-tested and requires no additional infrastructure.

Security-First UX

The vault is designed with security-conscious UX patterns:

Eight categories help organize secrets: General, Database, API Key, OAuth, SSL/TLS, Cloud, Service, and Internal. The vault is backward compatible with the legacy secrets format from earlier ProxyStack versions.

Enterprise Compliance Reporting

Meeting compliance requirements is often the most time-consuming part of security work. ProxyStack automates the evidence-gathering process for four major frameworks:

SOC2 Type II (9 Controls)

Covers security, availability, and processing integrity. Checks include: access control policies, encryption at rest and in transit, logging and monitoring, incident response procedures, change management, and backup verification.

GDPR (6 Articles)

Focuses on data protection requirements from the EU General Data Protection Regulation. Checks include: data encryption (Article 32), access control (Article 25), audit logging (Article 30), data minimization, breach notification readiness, and right to erasure support.

PCI-DSS v4.0 (8 Requirements)

Addresses payment card industry security standards. Checks include: firewall configuration, default password changes, encryption of cardholder data, access restriction, unique ID assignment, physical security, regular testing, and security policy documentation.

HIPAA (5 Safeguards)

Covers health data protection requirements. Checks include: access controls (Administrative Safeguard), audit controls (Technical Safeguard), integrity controls, transmission security, and facility access controls (Physical Safeguard).

Each check evaluates your real configuration — it reads proxystack.json, checks file permissions, verifies TLS settings, and examines logging configuration. The evidence text shows exactly what was found, making reports useful for auditors.

Automated Security Scanning

The Security Scanner performs automated assessments that go beyond configuration checks. It actively probes your environment for vulnerabilities.

Quick Scan (11 checks) covers the essentials: TLS protocol versions, security header presence, directory permissions on sensitive files, secrets exposure in configuration, and basic network security. It completes in seconds and is designed for frequent use.

Full Scan (18 checks) adds deeper analysis: open network ports, Docker container security (privileged mode, exposed socket), database security (default passwords, remote access), and advanced configuration review. It takes longer but provides comprehensive coverage.

Each finding includes a severity level (Critical, High, Medium, Low), a description of the issue, and remediation guidance. Results are persisted to logs/security-scan.json for historical tracking and can be exported for reporting.

Auto-Update & Integrity

ProxyStack includes a built-in update system that ensures you're always running the latest version while preserving all your data.

The update process is designed for reliability:

  1. The Dashboard fetches the update manifest from https://proxystack.iamvcholdings.com/api/updates/latest
  2. Version comparison determines if an update is available
  3. The update ZIP is downloaded with a progress bar
  4. SHA256 hash verification ensures the download wasn't tampered with
  5. ProxyStackUpdater.exe launches, waits for the GUI to exit, backs up current binaries, extracts new files, and restarts
  6. If anything fails, automatic rollback restores from _update_backup/

User data is never overwritten: configuration files, certificates, logs, backups, database data, secrets, and site files are all preserved. The update checker also handles network edge cases: it accepts self-signed SSL certificates and falls back to HTTP if HTTPS fails, ensuring connectivity behind corporate proxies.

VirusTotal Verified

Transparency matters, especially for security software. Every ProxyStack release is submitted to VirusTotal for scanning by 70+ antivirus engines.

0/71
ProxyStackGUI.exe
1/68
ProxyStackGUI.dll

The v14.2.0 release scanned completely clean on the EXE (0 detections out of 71 engines). The DLL received a single detection from VirIT's generic heuristic scanner (Trojan.Win64.MSIL_Heur.A), which is a well-known false positive that flags most .NET assemblies. All other 67 engines report clean.

Full VirusTotal reports are linked on the download page for independent verification.

The Modern GUI

ProxyStack's GUI is a native Windows Forms application with a custom dark theme. The modern UI (default) uses a sidebar navigation pattern with 21 views, while the classic UI (via --classic flag) provides a traditional tabbed interface.

The sidebar views are organized by function:

Every view includes a console panel at the bottom that shows real-time log output, making it easy to monitor operations without switching to a separate log viewer.

Performance & Portability

ProxyStack is designed to be lightweight despite its feature set:

The .psxt template system (v1.1) makes it easy to share complete stack configurations between team members. Templates bundle the configuration JSON along with base64-encoded SSL certificates, so a teammate can import a template and have an identical environment running in seconds.

What's Next

Phase 11 marks a major milestone for ProxyStack, but development continues. Phase 12 (Enterprise Scale & Operations) is planned to include:

Ready to Try ProxyStack?

Download the portable ZIP, extract, and run. No installation required. All 21 views are ready to use immediately.

Download ProxyStack v14.2.0

Resources