Setting up shroudBNC

shroudBNC is the modern one of the classic bouncers: C++, still maintained, TCL scripting, multi-user, and a real configuration system rather than a text file you edit with a candle. If psyBNC feels like a museum piece and ZNC feels like a framework, this is the one in between.

Build it

ss-build-sbnc

It fetches version 1.3.10, configures, compiles and installs into ~/sbnc. This one is C++ and takes about two minutes, peaking at 110 MB — which means it needs a plan with at least that much memory. On Newbie or Basic the compile will be stopped by the kernel partway through; ask staff rather than fighting it.

OpenSSL and TCL are picked up from the system; ltdl and c-ares come bundled with the source. Nothing else is needed.

First run

Request a port from the Ports page first, then:

~/sbnc/bin/sbnc

The first run walks through setup: which port to listen on, an admin username, a password. Enter the port the panel assigned you. Any other port will bind successfully and be unreachable from the internet, because the firewall only opens ports the system has handed out.

Everything it writes lives in ~/.sbnc — configuration, logs and the pid file. Point it somewhere else with --config if you would rather keep it with the binary.

Keep it running

screen -dmS sbnc ~/sbnc/bin/sbnc --foreground
screen -r sbnc     # to look at it later

--foreground matters: without it sbnc daemonises, and a screen session wrapped around a process that immediately forks away exits on the spot. With it, screen holds the process and you can reattach.

That is two background processes against your plan — the screen server and sbnc itself. usage shows the count.

Connect

Server
shell.shadowsquad.org
Port
your assigned port
Password
username:password — the admin user you created
/connect shell.shadowsquad.org 20001 yourname:yourpassword

Once in, /sbnc help lists the commands. Adding a network, setting a nick, attaching a channel list — all from the client, no editing files.

TLS

shroudBNC can listen with SSL, using a certificate it generates itself. Self-signed certificates are refused by clients that verify, which is most of them now; ss-tls-trust takes care of it in one command. See self-signed certificates in irssi.

TCL

The build enables TCL, so shroudBNC's scripting works out of the box. Scripts go in ~/.sbnc/scripts and load with /sbnc tcl commands. It is the same language eggdrop uses, so a surprising amount of thirty-year-old IRC scripting transfers.

Surviving a reboot

@reboot sleep 30 && /usr/bin/screen -dmS sbnc $HOME/sbnc/bin/sbnc --foreground

Add it with crontab -e.

« All guides