个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗Status: stable (v1.1.67, November 2026)
A modern multi-node BBS for the classic FidoNet world. Web, telnet, SSH,
rlogin, FTP, and PETSCII (C64/128) front-ends; FidoNet binkp + DOVE-Net
QWK echomail; inter-BBS instant messaging via MSP (RFC 1312); a built-in
collaborative wiki and RSS reader; door-game support including stock
Synchronet .js doors (LORD ships pre-installed and plays out of the box).
All four paths land on the same BBS; pick whichever fits your box.
| Your setup | Use |
|---|---|
Linux, and sudo is fine | Quick install (Linux) below — the full install.sh wizard |
| Linux, but no root/sudo access | docs/01b-no-root-install.md — everything (web, telnet, SSH) using only your own account |
| Docker (any OS) | Quick install (Docker) below |
| Windows | docs/INSTALL-WINDOWS.md — WSL2 or Docker Desktop, both confirmed working |
You'll want a domain pointed at this box if you want the web admin and
public web pages working with HTTPS — modern browsers refuse plain-HTTP
logins, so the wizard's production mode pulls a Let's Encrypt cert.
Telnet, SSH, rlogin, BinkP, MRC, and MSP work fine without a domain;
pick test mode at the prompt if you're behind NAT or just kicking
the tires (web admin runs on http://localhost:8080).
tar xzf ANetBBS-v1.1.67.tar.gz
cd ANetBBS-v1.1.67
sudo bash install.sh
The wizard asks for BBS name, sysop, ports, services, and SSL/nginx
preferences, then sets up the venv, systemd units, ufw rules, and (if
enabled) a Let's Encrypt cert. A random admin password is generated and
written to data/admin_password.txt — log in to the web admin and
change it on first use.
For details on individual services and post-install configuration see
docs/INSTALL.md.
To upgrade an existing install in place, download the new release tarball
and run update.sh from inside it (backs up .env/database/systemd units
first, then syncs files and restarts services):
tar xzf ANetBBS-v1.1.67.tar.gz
cd ANetBBS-v1.1.67
sudo bash update.sh
install.sh itself also takes a few flags:
sudo bash install.sh --uninstall # Stops/disables services, then (after one
# y/N confirmation) deletes the ENTIRE
# install directory -- including data/ (DB,
# uploads, echomail) -- with no separate
# prompt or backup for that. Back up
# data/ first if you want to keep it.
sudo bash install.sh --defaults # Non-interactive install, all defaults
sudo bash install.sh --force # Re-run install, overwriting an existing
# .env and database (normally preserved)
Prefer containers? Two options — a single-container quick start, or a
proper multi-container docker-compose deployment (recommended for
anything beyond kicking the tires). Pre-built multi-arch images
(amd64 + arm64, works on a Raspberry Pi) are published to GHCR on
every release — no local build needed:
cp .env.docker.example .env # fill in SECRET_KEY, BBS_NAME, etc.
cp docker/compose/mrc-bridge-config.json.example mrc-bridge-config.json
docker compose -f docker/compose/docker-compose.yml up -d
.env already points at ghcr.io/anetonline/anetbbs:latest by
default — pin a specific version instead with ANETBBS_IMAGE_TAG=v1.1.67
(or whatever release you want). Testing a local change instead of a
published image? docker build -f docker/Dockerfile -t anetbbs:local .,
then set ANETBBS_IMAGE=anetbbs / ANETBBS_IMAGE_TAG=local in .env.
New to Docker? docs/22-containers.md has a
full hand-held walkthrough (including the single-container option,
what each command actually does, and troubleshooting).
1200:1/1) or QWK/FTP (hub ID:
ANET). Hub: bbs.a-net.fyi. Apply for a node number.
Public nodelist at /admin/echomail/hub/nodelist.sbbsimsg.lst directory mirrored daily and a SYSTAT
(UDP/11) Active-User responder.mps) and Mystic Python (.mpy) doors.js doors — runs via real jsexec when found at
$SBBSEXEC/jsexec or /sbbs/exec/jsexec; otherwise falls back to a
Node.js + compatibility shim that the alpha 2 work expanded enough to
fully run LORD (Legend of the Red Dragon — Synchronet's JS port,
pre-installed, no Synchronet required)door_rlogin) — connects out to a remote
BBS's own door server (Synchronet xtrn, DoorParty, etc.) instead of
running a local subprocess. A-Net Online's game server ships
pre-installed and active by default, same as LORD./wiki/ with markdown bodies, [[Page]]
cross-links, per-page revision history, unified-diff compare,
revert, full-text search, recent changes, wanted/orphan pages/rss/ (river or per-feed), terminal main-menu Rx-bit.org) seeded by defaultusers / sysop / none upload permissionsFILE_ID.DIZ, README.md/README.txt,
DESCRIPT.ION inside zip / tar.{gz,bz2,xz} / 7z / rar / lha archives/gallery/ — paginated thumbnail grid, full-screen
modal viewer, lazy-loaded thumbnails. Browser-native rendering for
full image quality (no terminal-art middleman)./admin/galleries/ — add / remove / edit collections
(label, slug, filesystem path, sort order, active flag) and per-gallery
file management with drag-and-drop multi-file upload, individual file
delete, pagination.gallery-config.json at the BBS
install root (auto-seeded on first run). Files live wherever you point
the path; the same path can be served by any other tool too.$INSTALL_DIR/anet-gallery.sh (default
/opt/anetbbs/anet-gallery.sh) — bash script
using chafa (Unicode blocks, works in any terminal) or img2sixel
(sixel-capable terminals like SyncTERM, foot, mlterm). Standalone —
not wired into the games menu./mrc/ (browser tab)/identify /msg /me /join /list /who /chatters /motd /banners /topic /lastseen /afk /back /status /roomconfig /termsize /trust /broadcast /raw …).
Tab-completes usernames seen in chat or via /who. ←/→ arrow keys
for outgoing text color, masked password input on bare /identify,
@mention highlighting with bell, 140-char outgoing cap with
word-boundary auto-split, HH:MM timestamps on every line, ANSI-aware
word-wrap with continuation indentFileArea as a top-level
directory. Anonymous read access to public areas; authenticated users
upload subject to per-area upload_permission. Optional FTPS via the
same Let's Encrypt cert nginx uses. Earns the FTN nodelist IFC flag.*** You have new: 3 PMs, 1 InterBBS IM). Synchronet @CODE@ and Mystic |XX
display codes in welcome / goodbye / menu ANSI screens./admin/petscii-menus/. See docs/25-petscii.md./watch, off by default) — a public, no-login
page showing real-time who's-online activity, styled as a retro
terminal display, meant to be shared or embedded off-site. See
docs/29-watch-live.md./postcards) — any logged-in user composes retro
CP437 art with the same grid editor as the admin ANSI Editor, then
gets a public share link and a downloadable PNG for sharing off
platform. See docs/30-postcards.md.anetbbs/features/achievements.py/admin/pulse/, installable to a phone's home screen (Android +
iOS). Live callers, service health, disk/uptime, 24-hour activity —
no service-control actions, no shell, nothing writable./admin/social/, off by default) —
a new #1 leaderboard score or a round-number BBS milestone queues a
draft Bluesky/Mastodon post (rendered image + editable caption) for
a sysop to review, plus a manual compose option for anything else
(a version bump, a new feature); nothing posts automatically, and
queuing a draft notifies every admin. See
docs/31-social-posting.md.+TAG/-TAG AreaFix-to-hub formwho's online queriesanetbbs-cfg — standalone full-screen terminal admin tool (SCFG /
mystic -cfg style), run directly on the server console, near-full
parity with the web admin: boards & message areas, echomail networks/
areas/hub (AreaFix log, poll log, QWK node requests), file areas &
bulletins, users & security (access levels, password reset, IP bans,
word filters, login auto-ban, registration log), games (door games,
categories, active sessions), image galleries, BBS/PETSCII menu
editors, scheduled events, graffiti wall moderation, login modules,
last-callers log, backup browsing, translations, and .env system
settings — no browser required. python -m anetbbs.cfg from a
checkout, or
anetbbs-cfg once installed.anetbbs-monitor — a console-only sysop dashboard (uMonitor /
nodespy style): a live, auto-refreshing node list (who's connected,
on what protocol, from where, doing what, with a kick action), a
Today/Total activity stats panel, a scrollable bbs.log viewer,
one-key access to anetbbs-cfg, a light/dark theme toggle, and
mouse support — no browser required. python -m anetbbs.monitor.app
from a checkout, or anetbbs-monitor once installed.docs/00-overview.md — architecture + table of contentsdocs/INSTALL.md — full installdocs/INSTALL-PI.md — Raspberry Pi install guide (hardware, DDNS, SSD, troubleshooting)docs/INSTALL-WINDOWS.md — Windows install guide (WSL2, Docker Desktop)docs/PORTS.md — every port the BBS usesdocs/SECURITY.md — security defaults + production hardeningdocs/CHANGELOG.md — version historydocs/MSP_LOOPBACK_TEST.md — verify MSP worksdocs/06-echomail.md — echomail configdocs/07-file-areas.md — file area configdocs/13-image-galleries.md — image galleriesdocs/25-petscii.md — PETSCII (C64/128) terminal supportSee LICENSE. ANetBBS bundles some third-party components (fonts, a Synchronet JS compatibility layer used to run Synchronet door games, and the LORD door game) under their own separate terms — see NOTICE for the full breakdown.
Known rough edges:
docs/INSTALL.md for setcap / systemd /
iptables-redirect options..js doors: LORD is verified end-to-end under the
Node shim. Other Synchronet doors mostly work but each one tends to
exercise a different corner of the API — file an issue if a door
dies with a ReferenceError and the missing stub will get added.Issues and patches welcome. Chat/discussion: IRC at irc.a-net.online
(port 6667 plain, 6697 SSL), room #ANetBBS.
docs/26-synchronet-json-rpc-doors.md — 17 confirmed-working Synchronet door games (download/setup)docs/28-anetbbs-cfg.md — anetbbs-cfg, the SSH/console terminal config tooldocs/32-node-monitor.md — anetbbs-monitor, the console-only sysop dashboard (nodes, stats, logs, theme)docs/34-jam-export.md — JAM message base export for classic door gamesdocs/35-mods-directory.md — customizing art/scripts/login logic so changes survive updatesdocs/36-ansi-editor.md — web ANSI editor's file browser, extra export formats, TheDraw font picker