Florida Refugee BBS
I set up a real bulletin board system running on a Raspberry Pi 4B in my house. You can telnet into it right now:
telnet floridarefugee.xyz 2323
What is a BBS?
Before the internet went mainstream, bulletin board systems were how people connected online. You would dial a phone number with your modem, connect to someone’s computer running BBS software, and from there you could post messages, download files, play door games, and chat with other users. They peaked in the late 80s and early 90s before AOL and the web killed them off.
They never fully died though. There is still an active community running BBSs over telnet instead of dial-up modems. The culture, the ANSI art, the message bases – all still alive.
The Setup
The BBS runs on Mystic BBS v1.12 on a Raspberry Pi 4B sitting on my desk. To make it accessible from the internet without exposing my home IP, I set up a reverse SSH tunnel from the Pi to a VPS. Anyone who connects to floridarefugee.xyz:2323 gets forwarded through the VPS and into the Pi.
The stack:
- Raspberry Pi 4B running Raspberry Pi OS
- Mystic BBS v1.12 A48 (ARM64 build)
- autossh for a persistent reverse tunnel to the VPS
- GreenCloud VPS at
173.249.194.237as the public endpoint - Custom Fallout-themed ANSI art on the login screen
The Tunnel
The tricky part was keeping the Pi’s Mystic process alive under systemd. Mystic requires a real TTY or it exits immediately. The fix was a small Python wrapper using pty.spawn() that gives it a pseudo-terminal:
import pty, os
os.chdir("/mystic")
pty.spawn(["/mystic/mis", "SERVER"])
The reverse SSH tunnel runs as a systemd service using autossh so it reconnects automatically if it drops:
autossh -M 0 -N -R 0.0.0.0:2323:192.168.0.131:23 bbstunnel@173.249.194.237
Come Check It Out
The BBS is live. Telnet in, make an account, leave a message:
telnet floridarefugee.xyz 2323
Pick ANSI color mode when it asks.