OpenSource-Hub
E

ENiGMA½ BBS

642 stars·系统调优·已提供 SHA-256 校验码,下载后可自行核对文件完整性

一款兼具复古情怀与现代功能的BBS服务端软件

智能下载

前往项目主页

该项目暂未提供安装包,请直接访问源代码仓库

用 Node.js 搭建的现代复古 BBS 服务器

核心功能

  • 跨平台:在 Linux、FreeBSD、macOS、Windows 上运行
  • 多用户支持:无限节点,支持 Telnet/SSH/WebSocket 连接
  • 高度可定制:HJSON 配置、主题、JavaScript 模块扩展
  • 内置文件传输:支持 ZModem、XModem、YModem,含全文搜索和标签
  • 消息网络:支持 FidoNet、FTN、BSO 导入导出,以及 Multi-Relay Chat(MRC)

避坑指南

  • 配置较为复杂,建议先阅读官方文档(特别是 HJSON 配置和菜单系统)
  • DOS 门仿真依赖 v86 项目,大内存占用且并非所有 DOS 程序完全兼容
  • 活动Pub 功能仍为实验性,可能不稳定或缺少完善文档

适用场景

  • 搭建个人或社区 BBS,重现 90 年代拨号式公告板体验
  • 托管经典 DOS 门游戏(如 LORD、TradeWars)供多人实时连线
  • 作为 FidoNet 节点加入全球消息网络,收发邮件和回声邮件

详细介绍

ENiGMA½ 是一个运行在 Node.js 上的现代 BBS(电子公告栏系统)服务端,支持多平台(Linux、FreeBSD、macOS、Windows)。它提供了 Telnet/SSH/WebSocket 接入、文件传输、FidoNet 消息网络、内置 BinkP 邮件收发、活动Pub 实验性支持,以及原生 DOS 门仿真(无需额外虚拟机)。通过 HJSON 配置和 JavaScript 模块实现高度自定义,并内置 SQLite 数据库、双因素认证等特性。适合搭建复古风格的在线社区、游戏门站或文件分享系统。

常见问题与排障 (2)

操作指南
如何在 Enigma BBS 中将 SSH 主机密钥密码存储在单独的文件中,而不是以明文形式写入 config.hjson?

在您的config.hjson中使用解析器语法@file:/path/to/file作为密码值。例如:password: @file:/run/secrets/ssh_key_pass。这将从指定文件中读取密码。或者,您可以使用环境变量。此功能在PR #694中添加。

来源 Issue #692
故障排除
在终端列表视图中滚动时如何修复文本重影伪影?

VerticalMenuView.prototype.redraw 中,将旧项目擦除循环从 this.oldDimens.height - 2 改为 this.oldDimens.height - 1,以清除底部行。绘制项目后,添加一个循环以用空格填充最后一个项目下方的区域:
for (let i = startBlankRelativeRow; i < totalHeight; i++) {
const row = this.position.row + i;
this.client.term.write(ansi.goto(row, this.position.col) + this.getSGR() + ' '.repeat(this.dimens.width));
}
完整上下文见 core/vertical_menu_view.js(issue #630)。

来源 Issue #630

标签

BBSNode.js复古计算通信软件自托管

快速上手

1

下载安装包

点击上方按钮下载对应系统的安装包

2

安装软件

双击下载的安装程序,按提示完成安装

3

在 Linux/macOS 终端中执行 curl -o- https://raw.githubusercontent.com/NuSkooler/enigma-bbs/master/misc/install.sh | bash 自动安装

4

根据安装提示完成 Node.js 依赖和默认配置

5

启动服务后,通过 Telnet 客户端(如 SyncTERM)连接到 localhost:23 即可使用

安装指引
  1. 在 Linux/macOS 终端中执行 curl -o- https://raw.githubusercontent.com/NuSkooler/enigma-bbs/master/misc/install.sh | bash 自动安装
  2. 根据安装提示完成 Node.js 依赖和默认配置
  3. 启动服务后,通过 Telnet 客户端(如 SyncTERM)连接到 localhost:23 即可使用
文件完整性

暂未获取到校验码

该项目暂未在 GitHub Release 页面提供 SHA-256 校验码

SHA256 校验码

暂无校验码

建议从 GitHub Releases 页面直接下载,并自行核对文件完整性

本平台所有 SHA-256 校验码均提取自项目在 GitHub 官方 Release 页面发布的文件,未做任何修改。你可以通过 GitHub Releases 页面自行验证。

运维指引

卸载说明

删除安装目录(默认 ~/.enigma-bbs 或 /opt/enigma-bbs),移除用户数据和数据库。注意:手动删除前请备份配置文件和个人文件。

无额外依赖

下载后即可直接使用,无需安装其他运行环境

项目信息
开源协议BSD-2-Clause
最后更新2026-06-26 03:00:15
GitHub 仓库官方网站

遇到问题?查看下方 FAQ

2 FAQs

相似推荐