servnest/README.md
2023-10-29 14:12:28 +01:00

3.8 KiB

ServNest

ServNest (formerly Niver) is software allowing users to manage 3 independent services:

  • Public suffix registry
  • Domain name server
  • Static HTTP site hosting

Status

ServNest is alpha software.

Proper versioning, changelog and upgrade/migration instructions are still missing.

https://niver.niv.re/ is an installation administrated by the main developer.

Detailed services features

Public suffix registry (reg)

  • Register a subdomain of the registry
  • Set domain's nameservers
  • Set a DS record to enable DNSSEC
  • Set Glue records
  • Display records
  • Transfer domain to another account
  • Partial CSYNC and CDS support to synchronize from child zone

Name server (ns)

  • Host a zone on the server
  • Plain zone file edition
  • Dedicated forms to set/unset A, AAAA, NS, TXT, CAA, SRV, MX, SRV, SSHFP, TLSA, CNAME, DNAME and LOC records
  • Display records or the full zone file
  • Keep records in sync with another domain (CNAME alternative for apex domains)

Static HTTP site hosting (ht)

Upload site's files to the server using SFTP. The way the site is accessed can then be choosed:

  • Dedicated domain name and Let's Encrypt certificate
  • Dedicated onion service (through Tor)
  • Subdomain of a shared root domain
  • HTTP subpath of a shared domain

Some Apache configuration directives are available through .htaccess.

Software used

PHP
main language
SQLite
accounts data storage
Knot DNS
DNS server for both registry and DNS hosting
sudo 1.9.10+
execute actions that match a regex as privileged or specific users
SFTPGo
upload sites files using SFTP
Apache HTTP Server
static HTTP server, with content negotiation and .htaccess dynamic configuration
nginx
HTTP reverse proxy for Apache; terminates TLS and enforces security headers
Tor
Onion services
Certbot
get Let's Encrypt certificates for TLS
Cronie (or another cron daemon)
periodically run script to sync registry records with child zones and pseudo-CNAMEs at apex
GNU Core Utilities or BusyBox
manipulate the filesystem through sudo

Installation

Manual installation instructions can be found in DOCS/installation.md.

servnest-mkosi can automatically build a system image for ServNest and has configuration files and scripts.

Resources

Matrix room (#servnest:matrix.antopie.org)
english/french
discuss, get help and organise contribution
Issue tracker
english
keep track of bugs et wanted features
Git repository
english
code, administration documentation

Direct contact details

Find them on [https://miraty.antopie.org/](my site).

License

ServNest is ethical libre software: you can use, redistribute or modify it under the terms of the CNPL-NAv7+ as found in LICENSE.md or at https://git.pixie.town/thufie/npl-builder.

Somehow similar projects

DNSManager:
domain registry powering netlib.re
EU.org
domain registry
DNS Witch
user-friendly domain hosting based on EU.org
Codeberg Pages
static website hosting published through Git
Njalla
anonymous domain registrar