# ServNest backend documentation * [Source code architecture](architecture) * [`config.ini` configuration reference](configuration) * [Installation](installation) * [Translation](translation) ## Service naming convention ServNest identifies its services using the following short names: `common` : not specific to a service `auth` : account management `reg` : domain name registry `ns` : zone hosting `dns` : both `reg` and `ns` `ht` : HTTP hosting ## Software used by ServNest [PHP](https://www.php.net/) : main language [SQLite](https://www.sqlite.org/index.html) (as a PHP extension) : store relation between an account and the resources it created [gettext](https://www.gnu.org/software/gettext/) (as a PHP extension) : translation [libsodium](https://doc.libsodium.org/) (as a PHP extension) : hash/encrypt usernames ### For `dns` only [Knot DNS](https://www.knot-dns.cz/) : DNS server for both registry and DNS hosting Cronie (or another cron daemon) : periodically run script to sync registry records with child zones and pseudo-CNAMEs at apex ### For `ht` only [sudo](https://www.sudo.ws/) 1.9.10+ : execute actions that match a regex as privileged or specific users [SFTPGo](https://github.com/drakkan/sftpgo) : upload sites files using SFTP [Apache HTTP Server](https://httpd.apache.org/) : static HTTP server, with content negotiation and `.htaccess` dynamic configuration [nginx](https://nginx.org/) : HTTP reverse proxy for Apache; terminates TLS and enforces security headers Tor : [Onion services](https://community.torproject.org/onion-services/) [Certbot](https://certbot.eff.org/) : get [Let's Encrypt](https://letsencrypt.org/) certificates for TLS [GNU Core Utilities](https://www.gnu.org/software/coreutils/) or [BusyBox](https://www.busybox.net/) : manipulate the filesystem through sudo