This guide is written for Debian Jessie but should work with other distro’s as well, for older distro’s still using SysV init you should check out virtualmin documentation for varnish.
Varnish is an HTTP accelerator designed for content-heavy dynamic web sites as well as heavily consumed APIs. Unfortunately varnish doesn’t support SSL directly, but there’s a sound reasoning behind this. Fortunately there are several remedies; like hitch, nginx and even apache. Since apache is standard with virtualmin and we don’t want to complicate our neat little server more than necessary we’re going to configure apache ssl termination.