Domain registry, domain hosting and static HTTP hosting
Find a file
2023-06-05 00:18:10 +02:00
css ht/dns-add: display recommended CAA record 2023-05-05 19:41:55 +02:00
db reg: Delay at unregistration; Display domain history 2023-03-25 16:26:05 +01:00
DOCS Rename config.ini to config.template.ini 2023-05-19 00:54:04 +02:00
fn Display string rules, reg: allow "-" for subdomains 2023-06-05 00:18:10 +02:00
locales Display string rules, reg: allow "-" for subdomains 2023-06-05 00:18:10 +02:00
pg-act Display string rules, reg: allow "-" for subdomains 2023-06-05 00:18:10 +02:00
pg-view Display string rules, reg: allow "-" for subdomains 2023-06-05 00:18:10 +02:00
.gitignore Rename config.ini to config.template.ini 2023-05-19 00:54:04 +02:00
check.php Don't require visiting /ht/ to enable SFTP access 2023-06-02 23:12:59 +02:00
config.template.ini Rename config.ini to config.template.ini 2023-05-19 00:54:04 +02:00
LICENSE.md Set CNPLv7+ as license 2022-08-29 19:19:13 +02:00
pages.php Rate-limit most form processings 2023-05-02 18:02:08 +02:00
README.md Add installation instructions 2023-05-02 17:34:40 +02:00
router.php Don't require visiting /ht/ to enable SFTP access 2023-06-02 23:12:59 +02:00
sftpgo-auth.php Add debug message when denying SFTP login 2023-06-03 18:44:48 +02:00
view.php Warn testing accounts users on every page 2023-06-02 22:45:27 +02:00

ServNest

ServNest (formerly Niver) is software providing a web interface allowing users to manage 3 independent services:

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

Status

I plan to create and maintain a public stable instance of ServNest, but I haven't done so yet. Thus it is not yet tested with real world and long-term usages, and is alpha software.

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

Name server (ns)

  • Host a zone on the server
  • Zone file edition through <textarea>
  • 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

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
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.

Contribute

Direct contact details

See https://miraty.antopie.org/.

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.

Similar projects