RemotePulse

RemotePulse

Zero-Trust Remote Execution & Fleet Management

System Architecture & Roles

Zero-Trust Protocol

RemotePulse enables secure, end-to-end authenticated remote command dispatch across your machines. The architecture separates identity, relay, and execution into three strictly bounded components:

📱

RemotePulse App

Mobile Dispatch Client

Runs as a progressive web app (PWA) on your phone. Generates and stores your ECDSA NIST P-256 private key inside the hardware-backed browser SubtleCrypto vault. Cryptographically signs every PowerShell command before sending. The private key never leaves your device.

Open App Console (/app) →
🌐

RemotePulse Hub

Untrusted Secure Relay

Stateless high-performance ASP.NET Core server backed by PostgreSQL. Operates under zero-trust: holds encrypted command envelopes and queues long-polls between clients and workers. The Hub cannot forge commands, cannot inspect private keys, and cannot tamper with execution privileges.

RemotePulse Worker

Execution Daemon

Runs as a local background daemon (Windows Service or Linux systemd). Uses outbound-only HTTPS polling (zero open inbound ports, NAT/firewall friendly). Validates caller ECDSA signatures, nonces, timestamps, and privilege envelopes before executing PowerShell scripts.

Security & Integrity Principles

🔐 End-to-End Cryptographic Signatures (NIST P-256 ECDSA)

Commands are signed client-side with hardware-isolated browser keys. The Hub serves only as an untrusted message broker; only workers holding your registered public key can verify and execute commands.

🔒 Cryptographically Bound Privilege Envelopes

Execution parameters (privilege level CurrentUser vs System, timeout duration, command script) are cryptographically bound directly into the signed payload envelope. Rogue relays cannot elevate privileges.

🛡️ Zero Inbound Open Ports (Outbound Polling Only)

The Worker maintains an outbound-only HTTPS long-poll connection through firewalls and NATs. It never opens listening ports, making direct external network penetration impossible.

⏱️ Replay Defense & Strict Expiration Windows

Every command contains a unique cryptographic nonce and strict ±5-minute timestamp window. Replayed commands or intercepted stale requests are automatically discarded.

🏠 Loopback-Only Pairing Isolation

Initial pairing QR codes and tokens are served strictly on 127.0.0.1:7923 (loopback interface only). An operator must be physically present at the machine to authorize a new phone.

Worker Setup & Installation Instructions

Windows & Linux

Deploy the Worker on your target machine in seconds. Follow these steps to register your machine and pair it with your mobile device:

📦 Standalone Release Package (.zip)

For offline or air-gapped environments, download the complete standalone zip:

⬇️ Download RemotePulse-Worker-windows-x64.zip
  1. Extract the downloaded archive to a temporary folder.
  2. Right-click Installer.ps1 and choose Run with PowerShell (PowerShell 7).
  3. The service will start and open http://localhost:7923/ for instant pairing.
🐧 Linux Worker Deployment (systemd)

Deploy on Debian 12+, Ubuntu 22.04+, Fedora 38+, or Arch using PowerShell Core:

pwsh ./Deploy-Worker.ps1

Installs binaries to /opt/remotepulse/worker and registers the remotepulse-worker systemd unit.