14.0 Telnet / RLogin / SSH (Terminal Server)
The Terminal Server is the classic BBS UI over dial-up and Internet console protocols.
Features (wiki summary)
- Terminals: ANSI (color/mono), PETSCII, RIP, dumb
- Charsets: US-ASCII, CP437, UTF-8, PETSCII
- Protocols: Telnet, RLogin, SSH, raw TCP
- Optional PETSCII listeners (40- and 80-column ports as configured)
Configure
SCFG → Servers → Terminal Server (also sbbs.ini / Control Panel):
- Enable flag and log level
- Serving Nodes range (must agree with node setup — see 3.x)
- SSH / Telnet / RLogin / PETSCII port options
- DOS program support toggle
- Max concurrent connections
- Inactivity timeouts (dumb login, user login, new user, general user)
- Output buffer drain timeout and related I/O knobs documented on the wiki
Recycle the Terminal Server after port or node-range changes. Expose SSH publicly when possible; Telnet remains for legacy clients but is cleartext.
Wiki: https://wiki.synchro.net/server:terminal
15.0 Services
Services are modules or external executables loaded by the Services Server, similar in spirit to inetd — one listener configuration dispatches many small protocol daemons (finger, news helpers, custom TCP/UDP services, etc.).
Configure
SCFG → Servers → Services Server, or Control Panel Services → Configure, or [Services] in sbbs.ini:
- Enabled / log level
- Network interfaces
- Client hostname lookup
- Configuration file (typically
services.ini) - Login requirements / login info save
- Connection rate limits
- JavaScript settings and failed-login policy shared patterns
Edits apply after the Services Server is recycled. Per-service definitions live in services.ini (and related docs linked from the services index). Disable unused services to shrink attack surface.
Wiki: https://wiki.synchro.net/service:index
18.0 Internet Servers
The servers index links FTP, Web, Mail, and related daemons that make Synchronet an Internet host beyond terminal dial-in. Enable only what you will maintain (especially SMTP).
Wiki: https://wiki.synchro.net/server:index
18.1 FTP Server
Synchronet’s FTP server exposes file libraries (and configurable paths/aliases) to FTP clients using BBS user authentication and access rules.
Configure via SCFG / sbbs.ini FTP section and ftpalias.cfg as needed. Topics on the wiki cover:
- Listener and TLS options
- Mapping of BBS directories to FTP paths
- Alias configuration
- Security overlap with general login-attempt throttles
NAT and firewall must allow the chosen FTP mode (careful with active vs passive port ranges). Prefer TLS-capable clients when offering accounts over the Internet.
Wiki: https://wiki.synchro.net/server:ftp · https://wiki.synchro.net/config:cfg_files
18.2 Web Server
The HTTP/HTTPS server hosts stock and custom web UIs (web/, webv4/, etc.), SSJS pages, and optional PHP. Configuration spans SCFG, sbbs.ini, and webctrl.ini, plus JavaScript request/reply objects documented on the web server page.
Recycle the web thread after root or auth changes. Keep sysop-only paths behind ARS / auth checks.
Wiki: https://wiki.synchro.net/server:web
18.2.1 PHP with Synchronet
PHP can be wired as an external handler for selected extensions/paths. The howto covers installing PHP and pointing Synchronet’s web server at it. Prefer SSJS for deep BBS integration; use PHP when you need existing PHP apps beside the BBS.
Wiki: https://wiki.synchro.net/howto:php
18.2.2 xjs templates
Gap: The wiki topic custom:xjs_template does not exist yet. Closest parents:
- https://wiki.synchro.net/custom:index
- https://wiki.synchro.net/custom:ssjs_template
- https://wiki.synchro.net/server:web
Do not invent xjs behavior — check those pages and Git history if you encounter .xjs files in the wild.
18.2.3 SSJS templates
The SSJS Template System documents scheme, theme support, special codes, template library, and message-related web configuration. Use it when customizing stock SSJS web layouts rather than editing random HTML copies.
Wiki: https://wiki.synchro.net/custom:ssjs_template · https://wiki.synchro.net/server:web
18.3 Mail Server (SMTP)
The Synchronet Mail Server handles SMTP (and related mail services per your build/config): inbound acceptance, SendMail outbound, coupling to the BBS mail base, anti-spam hooks, and FTN netmail gating features described alongside SBBSecho.
Configure under SCFG → Servers → Mail Server and the large server:mail reference (many INI keys). Before opening port 25/465/587 to the world:
- Set hostname / domains correctly (
domains.cfgas applicable) - Decide open-relay protections (defaults should deny relay abuse)
- Enable DNSBL / external processors as appropriate
- Monitor logs for backscatter and auth abuse
Wiki: https://wiki.synchro.net/server:mail
18.3.1 SpamAssassin
Synchronet SMTP can consult SpamAssassin (spamd) via the JS spamc client as an External Mail Processor in ctrl/mailproc.ini:
[SPAMC]
Command=spamc.js
AccessRequirements=user equal 0 or guest
ProcessSpam=false
ProcessDNSBL=false
Disabled=false
Install/enable spamd on the OS (Linux preferred; Windows possible but less common). Keep sa-update on a daily cron. Tune whether Synchronet tags vs rejects based on scores using the howto’s additional keys and mail server options.
Wiki: https://wiki.synchro.net/howto:spamd
18.3.2 DNS Blacklist
DNS-based blacklists (DNSBL) can tag or reject mail by connecting IP. The howto page is currently short / FIXME but points at:
- https://wiki.synchro.net/config:dns_blacklist.cfg
- https://wiki.synchro.net/config:dnsbl_exempt.cfg
- https://wiki.synchro.net/config:spamblock.cfg
Populate zones carefully — aggressive lists cause false positives. Exempt your own MTAs and known hubs.
Wiki: https://wiki.synchro.net/howto:dnsbl · https://wiki.synchro.net/config:cfg_files
18.4 Internet Security
Automated scanners constantly try Telnet/SSH/FTP/SMTP with common username/password lists. On a BBS they usually fail harmlessly but can exhaust nodes and fill hack logs.
Mitigations documented in the block-hackers howto and related config:
- Synchronet login-attempt delay, throttle, temp ban, auto-filter (
sbbs.ini) - Host filter files
- OS firewall / Fail2Ban (see 19.2.3)
- Disabling unused servers and protocols
- Strong sysop passwords; no shared guest with door access to shells
Read the full howto before opening multiple cleartext services on a residential IP.
Wiki: https://wiki.synchro.net/howto:block-hackers · https://wiki.synchro.net/config:sbbs.ini · https://wiki.synchro.net/howto:fail2ban
Server bring-up order (suggested)
- Terminal Server alone; confirm SSH/Telnet logins
- Services only as needed (finger, etc.)
- FTP if you want classic transfers beside the node UI
- Web after terminal branding exists
- Mail last, with DNSBL/SpamAssassin/filters ready
Wiki: https://wiki.synchro.net/server:terminal · https://wiki.synchro.net/service:index · https://wiki.synchro.net/server:index · https://wiki.synchro.net/server:ftp · https://wiki.synchro.net/server:web · https://wiki.synchro.net/server:mail