4464774c7a
8 files: index.md with wiki-links, features overview, navigation guide, markdown showcase (all constructs), about page, changelog, and two guides (sysop handbook, writing content) in a subdirectory. Includes ANSI art splash.txt for the index page header.
1.7 KiB
1.7 KiB
description
| description |
|---|
| Running BBS-MD as a public SSH service |
SysOp Handbook
So you want to run a BBS. Welcome to the club.
Setting Up SSH Access
The classic BBS experience: users connect via SSH and land directly in BBS-MD.
1. Create a BBS User
# Create user with bbs-md as their login shell
sudo useradd -m -s /usr/local/bin/bbs-md bbsguest
# Set up their vault
sudo mkdir -p /home/bbsguest/vault
sudo cp -r /path/to/your/vault/* /home/bbsguest/vault/
# Set a password (or use SSH keys)
sudo passwd bbsguest
2. Configure bbs.toml
Place bbs.toml next to the binary or in the user's home directory:
vault_path = "/home/bbsguest/vault"
theme = "default"
3. Test the Connection
ssh bbsguest@your-server.com
The user lands directly on the index page. No shell prompt, no confusion. Just content.
Security Considerations
- BBS-MD runs as a login shell — there is no escape to bash
- The
qkey is disabled in login shell mode - Only double
Ctrl+Ccan exit (returns to SSH disconnect) - Path traversal is guarded —
../../etc/passwdwon't resolve - Only
.mdfiles inside the vault are accessible
Content Management
Your vault is just a directory of markdown files. You can:
- Edit files over SFTP or SCP
- Use
rsyncto sync from a local copy - Mount a Git repository and pull updates
- Write a cron job to generate content
BBS-MD watches for changes. Your updates appear live.
The best BBS is the one that's always fresh.
Monitoring
Watch the process with standard Unix tools:
# Check if bbs-md is running for connected users
ps aux | grep bbs-md
# Watch vault changes in real time
inotifywait -m /home/bbsguest/vault/