Modern SSL nginx

We can use the helpful tool from Mozilla to generate a secure web server configuration. For my purposes, I chose nginx as the webserver and modern profile, this severely limits the legacy clients that can connect, but the definition of "legacy" in this case, is users who haven't…

Self-hosting Ghost

Previously I was using Ghost (Pro) to host my blog, however, the tiny amount of traffic did not justify the annual cost. I decided to move the site over to my own host and use Cloudflare as a CDN to provide caching. I also setup SNI Proxy to allow for…

Using SNI Proxy to serve multiple hostnames from a single IP

SNI Proxy NOTE: THERE'S A HARD CODED DNS SERVER IN THIS CONFIG Prerequisites sudo apt update &&\ sudo apt install -y autotools-dev cdbs debhelper \ dh-autoreconf dpkg-dev gettext libev-dev libpcre3-dev \ libudns-dev pkg-config fakeroot devscripts Clone latest version git clone https://github.com/dlundquist/sniproxy sniproxy Build the package cd sniproxy…

Replacing Google Drive with Nextcloud

In an effort to increase privacy and move away from externally hosted solutions, I decided to move all my files from Google Drive to Nextcloud. I checked out various alternatives, including owncloud and seafile, but Nextcloud seemed the simplest from an end user interface perspective. Also, clients for mobile devices…

Using Let's Encrypt with Cloudflare DNS challenges

How to setup automatic SSL using Cloudflare DNS challenge Install Certbot sudo apt update && \ sudo apt install software-properties-common && \ sudo add-apt-repository ppa:certbot/certbot && \ sudo apt update && \ sudo apt install -y certbot Install pip for python3 and plugin for Cloudflare sudo apt install…