Skip to content

Network Security Guide

This guide describes recommended network controls for deploying Enprivacy 3.0 in a secure, network-isolated environment.

Enprivacy 3.0 is designed to operate in a network-restricted environment. At runtime, the only required outbound internet connection is to auth.enprivacy.com for user authentication and entitlement.

On first use, the Web, Job, and LLM services download models from the Hugging Face Hub. These downloads can be avoided entirely by pre-loading models into durable storage as a one-off action, allowing fully air-gapped operation — see Air-Gapped Deployments.

DestinationPortPurposeRequired
auth.enprivacy.com443 (HTTPS)User authentication and entitlementAlways
huggingface.co, cdn-lfs.huggingface.co, cdn-lfs-us-1.hf.co, cdn-lfs-eu-1.hf.co, cdn-lfs.hf.co, cas-bridge.xethub.hf.co443 (HTTPS)Model downloads (Web, Job, LLM services) on first useOnly if models are not pre-loaded

Once models are pre-loaded, all outbound connectivity except auth.enprivacy.com:443 can be blocked at the network layer.

If you use an external/hosted LLM provider (e.g. AWS Bedrock, Azure OpenAI, Google Vertex) instead of the bundled LLM service, allow-list that provider’s endpoints in place of the Hugging Face Hub URLs.

Services communicate over the following default ports. Only the Web service needs to be exposed for administrative and end-user access; all other services should be reachable only from within the deployment’s private network.

FromToPortProtocol
InternetWeb8080HTTP
WebDatabase5432TCP
JobDatabase5432TCP
WebLLM8000HTTP
JobLLM8000HTTP
WebOCR5001HTTP
JobOCR5001HTTP

Interservice traffic uses plain HTTP/TCP by default and is intended to run within a trusted private network or segment. Where in-transit encryption between services is required, apply it at the network layer or via a service mesh (e.g. mTLS / WireGuard) — the application does not enforce TLS on these internal ports.

  • Only the Web service is exposed publicly. Terminate HTTPS at your load balancer or ingress controller using a certificate for your selected domain(s).
  • Bring your own certificate from a trusted CA, or configure Enprivacy 3.0 to provision certificates via Let’s Encrypt. Enprivacy can help you select and implement an appropriate approach.
  • Internal service-to-service traffic uses the ports listed under Interservice Communications and is not TLS-encrypted by default; isolate it within a private network or apply network-layer encryption.

Enprivacy 3.0 can run without general outbound internet access:

  1. Pre-load the required models into each service’s durable model cache (~/.cache) as a one-off action, so the Web, Job, and LLM services do not need to reach the Hugging Face Hub.
  2. Use a self-hosted PostgreSQL database (with the required extensions) and an S3-compatible object store within your network.
  3. Allow only auth.enprivacy.com:443 outbound, for user authentication and entitlement.