Server Installation on Linux Domentation

For years I have been self hosting Manager on a Windows Server using NSSM, IIS, Application Request Routing and URL Rewrite module and I always used my own domain Certificates.

I am moving all my services away from Windows to Linux. I have installed Manager no problem on Debian and am able to connect to it (without installing nginx, apache or anything) from my browser, but only using http, not https. So it works without https encryption, so that is good starting point.

I found an old document explaining how to get Manager to use SSL Certificates here - https://www2.manager.io/server/installation/ubuntu/

I just wanted to confirm that the procedure outlined in this document is still valid for today as Manager has changed a lot over the years and I don’t know how old that document is.

Essentially the guide is saying:

  1. Download and untar the Manager install file into whatever folder you want to run Manager from
  2. Install Manager as a systemd service (which I will do later)
  3. Install Caddy in similar fashion to Manager and then configure Caddy which domain you want to reverse proxy for Manager, so that you effectively connect to Caddy with SSL Certificate and then Caddy passes onto backend Manager using whatever port you have Manager running on
  4. I need to find the Caddy Documentation on how to configure it to use my own Certificate as I don’t want a Letsencrypt function for this system.

So, I don’t need apache or nginx or NSSM or anything like IIS for manager to work right?

I used to - on the old system connect to Manager using a port number different to port 8080. I don’t think I need to change the port number anymore because I am not using the other program that was using port 8080. But fundamentally, I never needed to redirect from one port to another. The only and sole reason for using IIS in the past was for SSL Certificates so that communication was encrypted.

Anyone familiar with Debian especially, would be appreciated. I am not familiar with Caddy at all as never used it.

One important point: Manager does not officially list Debian as a supported Linux distribution. The stated Linux requirement is Ubuntu 20.04 64-bit / Fedora 38 64-bit or newer.

So Debian should be treated as “works in practice if the required dependencies are present,” not “officially supported by Manager.”

That said, if Manager Server is already running on Debian and you can reach it over HTTP, then the Manager part is working. The remaining issue is only HTTPS.

Manager itself does not need Apache, Nginx, IIS, NSSM, or Caddy. Caddy would only replace what IIS/ARR/URL Rewrite was previously doing: accepting HTTPS traffic and reverse-proxying it locally to Manager on port 8080.

I would not follow the old Ubuntu guide literally. The general architecture is still valid:

Browser → HTTPS to Caddy on port 443 → local HTTP to Manager on 127.0.0.1:8080

But the old Caddy installation method is outdated. On Debian, use the official Caddy Debian package instead of manually downloading the old Caddy binary and creating your own caddy.service.

For a private/custom certificate, the Caddyfile would be roughly:

manager.example.com {
    tls /etc/caddy/certs/fullchain.pem /etc/caddy/certs/privatekey.pem
    reverse_proxy 127.0.0.1:8080
}

Also, Manager Server is usually not updated through apt as a manager-server package. It is normally updated by downloading the latest Manager Server Linux .tar.gz, extracting it over the existing Manager Server program folder, and restarting the manager-server systemd service. For a practical Debian setup, keep Manager on port 8080 and put Caddy in front for HTTPS.