content: create demo vault with splash art and feature showcase pages

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.
This commit is contained in:
2026-03-01 11:58:01 +01:00
parent f3d787a2b7
commit 4464774c7a
9 changed files with 641 additions and 0 deletions
+79
View File
@@ -0,0 +1,79 @@
---
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
```bash
# 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:
```toml
vault_path = "/home/bbsguest/vault"
theme = "default"
```
### 3. Test the Connection
```bash
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 `q` key is **disabled** in login shell mode
- Only double `Ctrl+C` can exit (returns to SSH disconnect)
- Path traversal is guarded — `../../etc/passwd` won't resolve
- Only `.md` files 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 `rsync` to 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:
```bash
# 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/
```
---
Back to [[index|home]] or see the [[Features]].