vault backup: 2026-06-07 18:53:41

This commit is contained in:
2026-06-07 18:53:41 -04:00
parent 34ffae64b1
commit 4696dfcc81
+123
View File
@@ -0,0 +1,123 @@
---
id: 2026-06-07T17:40:12-0400
title: 2026-06-07 17:40:12
tags: []
daily: "[[2026-06-07]]"
---
# 2026-06-07 17:40:12
It is trivial to get home media server apps running and LAN accessible,
and not so much harder to get them accessible from outside either
if you have no reservations about using IP directly
(i.e. `http://81.168.249.237:8096`),
but mobile receiver apps don't usually play nice
without certified HTTPS anyway.
### Setting Up DNS
#### Buy a Domain
This step is one of the easiest
and, at the risk of [[drinking-ones-own-kool-aid]],
I recommend most people do it soon
even if they don't have plans for a home network yet.
For the time being,
if you have a reasonably unique name
a domain is one of the cheapest things
you could spend money on.
> `nick-decarlo.com` for example: \$10.46 per _year_
For that same price
I get to send emails from `gmail@zanemeyers.com`
and confuse the hell out of people.
#### Add DNS Records
For each service
create a Type A record with the name of the service
pointing at your _public_ IP,
which you can find with
`curl ifconfig.me`
or at [WhatIsMyIp.com](https://www.whatismyip.com/).
#### Configure Encryption Mode
Without this step redirection will not work with Cloudflare's proxy.
```
SSL/TLS > Overview > Configure
```
Set to "Full (Strict)" and Save.
At this point the domain is configured
and it shouldn't need to be touched again.
### Setting Up the Reverse Proxy Server
I decided to use a decade-and-change-old laptop
for a reverse proxy server
> It is probably possible to forgo the server entirely
> and just run Caddy on [WSL](https://en.wikipedia.org/wiki/Windows_Subsystem_for_Linux)
I'm assuming we've already booted [Ubuntu Server](https://ubuntu.com/download/server)
and done the initial setup,
if for no other reason
than because I did that years ago
so I can't remember all that entailed.
#### Set Up a Reverse Proxy
A reverse proxy will let us map requests for `<service>.zanemeyers.com`
to internal IP's and ports.
There are a few options,
but I used [Caddy](https://caddyserver.com/)
because it automatically issues and renews SSL certificates.
##### Install Caddy
```bash
sudo apt update
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
sudo apt update
sudo apt install caddy
```
##### Configure Caddy
open Caddy's configuration with your favorite text editor
```bash
sudo vim /etc/caddy/Caddyfile
```
and create entries for each app.
For example using [Jellyfin](https://jellyfin.org/):
```caddy
jellyfin.zanemeyers.com {
# <desktop local ip>:<app port>
reverse_proxy 192.168.1.20:8096
}
```
After saving the new config,
reload the service to apply the changes.
```bash
sudo systemctl reload caddy
```
### Setting Up
In your router settings.
forward TCP 80 (HTTP) and 443 (HTTPS)
to your reverse proxy server.
That was the last step.
I don't know how to end this note.