SysopHQ BBS Documentation

Everything you need to know — whether you're a new user connecting for the first time or a sysop managing your own BBS instance. Use the sidebar to jump to any section.

What is SysopHQ BBS?

A BBS (Bulletin Board System) is an online community you connect to via SSH — a secure terminal protocol built into every modern operating system. Think of it as a private, text-based internet from the early days of online culture, rebuilt on modern infrastructure.

SysopHQ BBS gives you message boards, private mail, live chat, classic door games, a file library, and more — all accessible from any terminal. No web browser required.

Who is this for? Anyone who wants a focused, distraction-free online community. Retro computing fans, hackers, makers, writers, or anyone tired of algorithm-driven social media.

Connecting to the BBS

SysopHQ BBS runs over SSH on port 2222. No special software is needed — SSH is built into Windows 10+, macOS, and every Linux distribution.

Quick Connect

Terminal $ ssh -p 2222 guest@sysophq.io

Step by Step

  1. Open your terminal application. Windows: search for "Terminal" or "PowerShell". Mac: open "Terminal" from Applications → Utilities. Linux: any terminal emulator.
  2. Type the connect command and press Enter. Replace guest with your own handle once you have an account.
  3. The BBS welcome screen appears — choose L to login or N to register.
Tip — Save the connection as an alias Add alias bbs='ssh -p 2222 YourHandle@sysophq.io' to your ~/.bashrc or ~/.zshrc so you can connect by just typing bbs.

Terminal Size

The BBS auto-detects your terminal width and height. For the best experience use a terminal window at least 80 columns × 24 rows. Most UIs are designed for 80×24 but will adapt to wider terminals automatically.


Registration

Creating an account takes about 60 seconds. Your handle (screen name) is permanent and visible to other users — choose carefully.

Steps

  1. At the welcome screen press N for New User.
  2. Choose your handle. 2–32 characters. Letters, numbers, hyphens and underscores only. This is what everyone sees.
  3. Set a password. Minimum 8 characters. Your password is stored securely — even the sysop cannot read it. Choose something strong.
  4. Confirm your password. Type it again exactly.
  5. Personal info — real name, location, and email address. Real name and location are optional. An email address is required so the sysop can reach you if needed. It is never shown publicly.
  6. Your account is created. You'll receive a welcome message in your Private Mail inbox.
Registration may be closed Some BBS instances run invite-only. If registration is closed you'll see a notice and contact information for the sysop.

Logging In

At the welcome screen press L for Login.

FieldNotes
HandleYour screen name, case-insensitive.
PasswordHidden as you type. Too many failed attempts will close the connection.

After a successful login you'll see the main menu. If you have unread private mail a notice appears at the top of the screen.

Account lockout Too many failed login attempts will trigger a temporary lockout. Wait a few minutes before trying again.


Message Boards [1] from main menu

Message boards are threaded discussion areas organized by topic. Each board has a name and description set by the sysop.

Browsing Boards

Select 1 from the main menu to see the board list. Each board shows the name, number of threads, and last post date. Enter a board number to open it.

Reading Threads

Inside a board you'll see a list of threads with the subject, author, reply count, and date. Enter a thread number to read it. Posts are displayed oldest-first.

Posting a Reply

  1. Open a thread you want to reply to.
  2. Press R to reply.
  3. Type your message. Press Enter on a blank line to finish, or follow the on-screen prompt.
  4. Confirm to post.

Starting a New Thread

  1. From the board listing press N for New Thread.
  2. Enter a subject line.
  3. Type your post body and confirm.
Moderation Staff can edit or remove posts that violate the rules. Your post history is retained (soft delete) — content is hidden, not destroyed.

File Library [2] from main menu

A shared file library where users can browse, download, and upload files. All uploads go through a sysop approval queue before becoming public.

Browsing & Downloading

Files are listed with name, size, uploader, and a short description. Enter a file number to see details. Press D to download.

Uploading a File

  1. Press U from the file library menu.
  2. Enter a filename and description.
  3. Follow the transfer prompt to send the file.
  4. Your upload enters the approval queue. The sysop will review and approve it before it appears publicly.
Upload rules Only upload files you have the right to share. The sysop may reject uploads without notice.

Private Mail [3] from main menu

Send and receive private messages with any registered user on the BBS. Unread mail is flagged with a notification on the main menu every time you log in.

Reading Mail

Select 3 from the main menu to open your inbox. Messages are listed by date with sender and subject. Enter a message number to read it.

Sending a Message

  1. Press C to compose a new message.
  2. Enter the recipient's exact handle (case-insensitive).
  3. Enter a subject.
  4. Type your message body and confirm to send.

Replying

While reading a message press R to reply. The recipient and subject are pre-filled.

New user welcome mail Every new account automatically receives a welcome message from the Sysop in their inbox.
Inbox & message limits Each inbox holds a set number of messages before it is considered full — senders will be notified if your inbox can't accept new mail. Messages also have a maximum length, so keep things reasonably concise. Delete old messages regularly to keep your inbox open.

Door Games [4] from main menu

A classic-style RPG built directly into the BBS — no downloads or extra software needed.

Dungeons of Doom

A multi-floor RPG dungeon crawler with persistent character saves and full equipment progression. Your character, gear, gold, and dungeon progress are saved to your account — pick up exactly where you left off.

Town Menu Controls

KeyAction
EEnter the dungeon and begin exploring rooms
SOpen the Shop — buy weapons, armor, gloves, boots, capes, rings, or potions
NRead the Dungeon News — recent level-ups, kills, and clears from all players
LView the Hall of Fame leaderboard
QSave and quit — returns you to the main menu

Inside the Dungeon

Each floor has a series of rooms. You navigate room by room and may encounter a monster, find treasure, or move on.

KeyAction
EnterAdvance to the next room
QRetreat to town (saves your progress)

Combat Controls

When a monster appears, choose your action each round:

KeyAction
AAttack — strike the monster for full damage
DDefend — brace for the hit; reduces incoming damage this round
RRun — attempt to flee; not always successful
PPotion — drink a healing potion to restore ~40% of your max HP (max 10 carried)

Character Classes

Choose your class when creating a character. Each has different starting stats and a unique passive perk.

ClassStylePerk
WarriorHigh HP & DEF, durable frontlinerMost fights per day (12), best survivability
MageExtreme ATK, very low HPHighest raw damage output
ThiefBalanced stats, fastEarns 50% more gold from all sources
PaladinGreat DEF & HP, holy guardianReplenishes 4 free potions every day
RangerGood ATK, light build25% bonus EXP and most fights per day (13)
BerserkerMassive ATK, near-zero DEFHigh attack and 50% more gold, glass cannon

Equipment Slots

Your character has six gear slots. Each can hold one item — buy from the Shop or find gear as Treasure in dungeon rooms. Equipped items show in green; empty slots show in red in your status display.

SlotShop KeyStatNotes
WeaponWATK bonus20 tiers, up to +25 ATK
GlovesGATK bonus10 tiers, up to +20 ATK
ArmorADEF bonus16 tiers, up to +20 DEF
BootsODEF bonus10 tiers, up to +20 DEF
RingRATK + DEF11 tiers, dual-stat accessory
CapeCATK + DEF10 tiers, dual-stat, up to +8 ATK / +10 DEF

Shop — Change Column

Item lists in the shop include a Chg column showing how each item compares to your currently equipped piece:

Color / LabelMeaning
+N (green)Upgrade — this item is stronger than what you have equipped
-N (red)Downgrade — weaker than your current gear
= (yellow)Same stat as your current item
EQ (green)This is your currently equipped item

Treasure

Rooms may contain treasure chests with gold, potions, or equipment drops. When you find gear, you'll see its stats compared to what you're wearing and can choose to equip it on the spot. Treasure items follow floor tier — deeper floors drop stronger gear.

Floors & The Boss

There are three dungeon floors. Each floor has progressively harder monsters. The final room of Floor 3 is home to The Dungeon Lord — a powerful boss. Defeating it counts as a full dungeon clear and is recorded on the leaderboard. Clears stack, so veterans become significantly stronger versions of that boss.

Daily Fight Limit & Reset

Each character has a limited number of fights per day (varies by class — 9 to 13). When you run out, you must wait until the next day when fights and HP are fully restored. The reset timer is based on real time, not login sessions.

Death

If a monster kills you, your character survives but wakes up at the dungeon entrance with 25% of your gold lost. HP is also spent — you may need to rest or use potions before re-entering. Deaths are tracked in your stats.

Tip Use the Shop's Chg column to spend gold efficiently — look for the highest green upgrade at a price you can afford. Thieves and Berserkers earn extra gold, making them excellent early shoppers.

Who's Online [5] from main menu

See every user currently connected to the BBS, which node they're on, what they're doing, and how long they've been active.

This is a live snapshot updated each time you view it. If no one else is online you'll see only your own session.


Account Settings [6] from main menu

Manage your personal profile and security settings.

SettingDescription
Real NameYour display name. Optional — leave blank for privacy.
LocationCity, state, country, or anything you like. Optional.
Email AddressUsed for sysop contact only. Never shown publicly.
Change PasswordEnter your current password, then set a new one. Must meet the minimum length set by the sysop.
Staff accounts Sysop, Co-Sysop, and custom staff role holders also see a [V] View My Permissions option, which shows exactly what their role grants them access to.
Password changes take effect immediately After changing your password you'll need to use the new one on your next login.

Help Center [7] from main menu

Built-in help text is available from within the BBS at any time.

Press 7 from the main menu to open the help center. You can also type /help in most areas of the BBS to get context-sensitive assistance for that section.


Teleconference [8] from main menu

Real-time live chat between every user currently connected to the BBS. All messages are visible to everyone in the conference — like a classic BBS CB channel.

How It Works

  1. Select 8 from the main menu to enter the teleconference.
  2. Type your message and press Enter to send it to all connected users.
  3. Messages from other users appear as they send them.
  4. Type /quit or press Ctrl+C to leave the conference and return to the main menu.

Private Rooms

Users can create private chat rooms with a password. When someone invites you to a private room you'll receive a pop-up notice. Ask the person who invited you for the password directly — it is never included in the invitation for privacy reasons.

Only active nodes see messages Teleconference is live only — messages are not logged or stored. If a user isn't connected they won't see what was said. Use Private Mail for persistent communication.

Last Callers [9] from main menu

A log of the most recent users who connected to the BBS, shown in reverse chronological order. Displays handle, node number, and login time.

The number of entries shown is configured by the sysop (default: 15 most recent callers).


Admin Console [A] — Sysop / Co-Sysop

The full Admin Console is accessible to Sysop and Co-Sysop accounts. It provides complete management of users, content, and BBS settings from within the terminal. Users with a custom staff role see a limited Staff Panel — see the Staff Roles & Permissions section for details.

User Management

  • List users — browse all registered accounts with last-login dates
  • View profile — see full details for any user including connection history
  • Set Role — assign any built-in or custom role to a user from a single numbered picker
  • Ban user — immediately lock an account and optionally block the IP
  • Delete user — remove an account (content is soft-deleted, not destroyed)

Role Manager [R] from Admin Console

The Role Manager lets the Sysop create custom role labels with a chosen access level and individual permissions. Custom roles appear in place of the built-in role name everywhere in the BBS — menus, who's online, and user lists.

  • Create role — choose a display name, an access level, an optional description, and which permissions to grant
  • Edit permissions — update what an existing role can do without deleting and recreating it; changes apply immediately to all online users with that role
  • Delete role — removes the role; users assigned to it revert to standard member access

Individual permissions available on any custom role:

FlagWhat it grants
Moderate BoardsEdit and delete posts on any message board
Approve File UploadsAccess to the file approval queue — approve or reject pending uploads without full file management
Kick Connected UsersDisconnect active sessions from the Who's Online screen; Sysop accounts cannot be kicked
Broadcast MessagesSend a message to every connected node simultaneously
View Audit LogRead the system audit log of logins, admin actions, and security events
View Server StatisticsView live server stats — online count, total users, posts, threads, banned count
Manage Message BoardsCreate, edit, and delete boards — full board management without other admin access
Manage File AreasCreate, edit, and delete file areas — full file area management without other admin access

Content Moderation

  • Edit / remove posts — moderate any message board post or thread
  • File approval — review and approve or reject pending file uploads

Audit Log

Every admin action, login, and security event is recorded in the audit log with timestamp and session details. Access it from the Admin Console to review system activity.

Broadcast & Moderation Tools

  • Broadcast message — push a live message to every connected session at once
  • Kick user — immediately disconnect a specific session from the Who's Online screen; Sysop accounts are protected and cannot be kicked by anyone
Sysop accounts are protected Sysop accounts cannot be banned or kicked by any other account, regardless of role.

Module Settings & Access Levels [2] from Admin Console

Each BBS module has two independent controls: an on/off toggle and a minimum access level. The access level determines which role a user must hold before the module appears on their main menu and allows entry.

Access LevelWho can enter
guestAnyone, including unregistered visitors
userRegistered members only
co_sysopStaff and Sysop only

Locked modules appear greyed out on the main menu and are fully restricted regardless of how a user navigates. Changes take effect immediately for all connected users — no restart required.

Account Settings caution Raising the access level for Account Settings locks regular users out of their own profile and password change screen. Leave it at user unless you have a specific reason.

BBS Settings

Common settings can be changed live from the Admin Console without restarting the server. Changes take effect immediately for all new connections.

Sysop actions are logged All admin actions — including your own — are written to the audit log.

Staff Roles & Permissions

Custom roles can be given individual permissions that unlock specific tools without granting full Sysop or Co-Sysop access. A user holding a custom staff role sees a Staff Panel instead of the full Admin Console — a limited menu showing only the tools their role permits.

How the Staff Panel Works

When a user with a custom permission role presses A on the main menu they reach the Staff Panel — a separate, restricted console showing only the tools their role permits. Full admin tools — user management, banning, deleting accounts, role manager, and BBS settings — remain Sysop and Co-Sysop only regardless of what a custom role grants.

Access level affects which console staff members see When creating a staff role, set the access level to Standard Member to get the limited Staff Panel. Setting it to Administrator gives that user full Co-Sysop access and the full Admin Console instead — use that only if you intend to grant full admin rights under a custom label.

Assigning a Staff Role

  1. In the Admin Console open the Role Manager and create or edit a custom role.
  2. Enable the permissions you want that role to have.
  3. From User Management open the target user and select [L] Set Role.
  4. Choose the custom role from the list. The user's display label and permissions update immediately.

Viewing Effective Permissions

Sysops, Co-Sysops, and custom staff role holders can check their own permissions via [V] View My Permissions in Account Settings. Sysops can also check any user's permissions via [P] View Permissions in the manage-user screen. Both views show each permission and whether it is currently granted for that role.

Permission changes take effect immediately Updating a role's permissions in the Role Manager applies to all users currently online with that role — no reconnect required.
Permissions do not override the role's access level A staff role set to guest access still cannot enter areas restricted to registered members, regardless of which permissions are enabled. The access level and individual permissions are separate settings.

Configuration File Reference

All BBS settings live in the configuration file provided with your installation. Most changes take effect on the next connection — no restart required for display settings. Server and database settings require a restart.

BBS Settings

KeyDefaultDescription
name"SysopHQ BBS!"BBS name shown on the welcome screen and main menu
sysopyour handleSysop's handle — also the account that receives new-user welcome replies
location"The Internet"Location shown on the welcome screen
max_nodesVairesMaximum simultaneous connections allowed. This is decided by your node purchase.
last_callers_count15(Default)How many recent logins to show in Last Callers

SSH Settings

KeyDefaultDescription
hostconfiguredNetwork interface to listen on. Managed by SysopHQ for hosted plans.
port2222SSH port your users connect to.
host_keyconfiguredPath to the SSH host key. Auto-generated on first run, managed automatically on hosted plans.

Database Settings

KeyDefaultDescription
driverconfiguredDatabase backend — set automatically for your plan. Contact support to change.
db_pathconfiguredPath to the local database file. Set automatically for your plan.
db_urlFull connection URL for cloud database plans. Provided in your welcome email.

Security Settings

Security thresholds are managed by SysopHQ and are not published. Sysop Pro subscribers may request custom threshold adjustments via support.

Registration Settings

KeyDefaultDescription
openconfiguredControls whether public registration is enabled or invite-only mode is active
tagline"A Modern Internet BBS"Tagline shown on the welcome screen
welcome_message"Welcome!"Message shown to new users and sent in welcome mail
motd""Message of the Day — shown to users on login when set
motd_urgentfalseIf true, MOTD shows on every login. If false, only until the user has seen it.
goodbye_message""Message shown when a user disconnects

ANSI Art Theming

You can replace the default BBS screens with custom ANSI art by dropping files into the ansi/ folder. No code changes or restarts required.

FilenameReplaces
ansi/main_menu.ansThe header block shown at the top of the main menu

ANSI art files should use standard CP437 encoding with ANSI escape sequences. Tools like PabloDraw, Moebius, or REXPaint can create compatible files.

Tip If the art file is missing or unreadable the BBS falls back to the default rendered header automatically. You can always delete the .ans file to revert to default.

Security Settings

SysopHQ BBS is designed with security concerns from the beginning. Here's what's built in and what sysops can tune.

Password Security

All passwords are protected using an industry-standard hashing algorithm — the current gold standard for password security. Even if the database were ever compromised, passwords cannot be recovered in plaintext.

Rate Limiting

Multiple layers of automated throttling protect against repeated failed logins and connection floods. Thresholds are adjustable by the Sysop from the admin settings.

Session Timeout

Unauthenticated connections that linger without completing login are automatically disconnected. Idle authenticated sessions are also timed out after inactivity. Both durations are configurable.

Audit Logging

Every login (successful or failed), admin action, ban, and security event is written to the audit log with a timestamp and relevant session details. Accessible from the Admin Console.


SSH Client Setup

Any SSH client will work. Here are the recommended options by platform.

Windows

  • Windows Terminal (recommended) — built-in SSH, excellent ANSI color support. Search "Terminal" in the Start menu.
  • PowerShell — type ssh directly. Works fine, slightly limited color support.
  • MobaXtermNot compatible. MobaXterm's terminal handling is incompatible with SysopHQ BBS and will result in display issues. Use Windows Terminal or PowerShell instead.
  • PuTTY — classic Windows SSH client. Works but requires UTF-8 setup for best display.

macOS

  • Terminal.app — built-in. Works well out of the box.
  • iTerm2 (recommended) — best color support and font rendering on Mac.

Linux

  • Any terminal emulator with ssh installed. GNOME Terminal, Konsole, Alacritty, Kitty all work great.
Font recommendation For the best ANSI art rendering use a monospace font with good CP437 coverage: "Cascadia Code", "Fira Code", "Hack", or the classic "Courier New".

Tips & Tricks

Navigation

  • At any prompt, pressing Enter on a blank line usually goes back or cancels.
  • Type /help in most areas for context-sensitive help.

Staying Connected

  • Add ServerAliveInterval 60 to your SSH config (~/.ssh/config) to prevent idle disconnects from your router or ISP.
  • Use tmux or screen locally if you want to detach and reconnect without losing your session place.

Getting the Most Out of the BBS

  • Check Private Mail on every login — the unread badge only appears if you have new messages.
  • Introduce yourself on the Message Boards when you first join.
  • Keep an eye on the Last Callers list to see who's been active recently.
  • Try the Teleconference during peak hours when more users are likely to be online simultaneously.