Skip to main content

Get started for Haven admins

This guide is intended for server administrators - people who manage Haven Web servers.

Individual users may create and administer channels, but user-side administration is covered in User Guide.

This documentation is based on Haven v0.3.4.

Self-hosted vs. 3rd party Web server

Haven is open source, but unlike with centralized deployments there's no significant distinction here:

  • Self-hosted Web server is presumably more trustworthy (if your skills don't suck) and private (as far as knowing client's IP address is concerned)
  • Haven codename (identity) is global and portable across any endpoint on xx Network
  • All data is client-side encrypted and stored replicated in databases of xx Network cMix gateway servers

This means you can participate in the same conversations by using own Haven Web server one day, friend's server the next, and xx Foundation-operated Haven on weekends.

High level overview of admin tasks

For administrators, one of the best things about Haven is that it's extremely easy to manage.

Common Haven server administrator tasks (excluding system or container platform administration) include:

  • Deploy and maintain Haven Node.js app or Haven container
  • Deploy and manage HTTPS reverse proxy
    • TLS certificate for Haven
    • HTTPS proxy administration
  • Deploy and maintain the Haven container or Web application
  • Generally, prevent tampering with OS, TLS certificate and application code

Before we do this, we need to understand the security, privacy, cost, usability and other requirements of our users.

What does Haven admin not manage

Haven Web server or container does not contain:

  • Data (user or admin accounts, passwords, messages)
  • Settings (application settings, chat channel definitions)

There is no "application server admin" interface.

This is why it is convenient to run Haven: it is a stateless app that won't leak data, won't grow its data footprint, and requires almost zero maintenance.