Add a sign-in gate to a DigitalOcean droplet or VPS
Put an email sign-in and an HTTPS private link in front of a server you already run on DigitalOcean, Hetzner or any VPS.
When this fits
The app already runs on a server you manage, and it should not be open to everyone. You want people to sign in before they reach it, without changing the app.
Steps
01
02
03
04
Good to know
- Stedhold forwards requests to your server. The server does not sleep; it is yours and stays on.
- Your app receives the signed-in person's email in a signed X-Stedhold-User-Email header.
- Requests over 50 MB are refused, and upstream calls time out.
Other ways to do this
If you already use Cloudflare and are comfortable with DNS and tunnels, Cloudflare Access can put a sign-in in front of a server too. Stedhold is simpler if you would rather not move your DNS or configure an identity provider, or if you also want to host apps without a server.