← Registry OS

System Requirements

Provision a server that meets these requirements before installing. The bundled preflight.sh verifies them automatically.

Deployment model

Registry OS is deployed as a single sovereign instance dedicated to your organization. All registry data resides on your server and is never transmitted to BorgLayer. One server runs one TLD namespace (or a small group of related TLDs).

Operating system

  • Ubuntu Server 24.04 LTS (recommended) or 22.04 LTS
  • x86-64 (amd64) or ARM64
  • Root or sudo access for installation

Hardware sizing

TierDomainsvCPURAMDisk (SSD)
Small ccTLDup to 50,00048 GB100 GB
Medium50k – 500k816 GB250 GB
Large500k – 2M+16+32 GB+500 GB+ NVMe

SSD/NVMe is strongly recommended because PostgreSQL and PowerDNS are I/O sensitive. Provision offsite backup storage of at least twice your database size.

Software dependencies

ComponentVersionNotes
PHP8.4 (8.3 min)CLI + FPM; sodium extension mandatory
PostgreSQL16 (14+ min)primary registry database
PowerDNS Authoritative4.8+PostgreSQL backend
Node.js20 LTSweb console build
Nginx + Certbotcurrentreverse proxy + TLS

Required PHP extensions: sodium (mandatory for license validation), pdo_pgsql, pgsql, mbstring, openssl, curl, bcmath, gmp, intl, xml, zip, fileinfo.

Network & ports

PortPurposeExposure
53 (TCP/UDP)DNS (PowerDNS)Public
443 (TCP)Console, portal, RDAP over HTTPSPublic
80 (TCP)ACME / redirectPublic
700 (TCP)EPP (registrars)Restricted
43 (TCP)WHOIS (optional)Public
5432 (TCP)PostgreSQLlocalhost only

A static public IPv4 is required; IPv6 is strongly recommended. Reverse DNS (PTR) for the server IP should be configured.

DNS, TLS & DNSSEC prerequisites

  • The parent authority must delegate your TLD to this server’s nameservers.
  • Prepare at least two nameserver hostnames, ideally on separate networks.
  • A domain for the console and RDAP endpoint, ready for ACME issuance.
  • Plan KSK/ZSK management and DS submission to the parent for DNSSEC.

Verify before installing

The installer bundle includes a preflight script that reports PASS/FAIL for every requirement and exits non-zero if anything is missing:

sudo ./preflight.sh

Ready to deploy Registry OS?

Request a license