Installing PsyBNC
Installation
First, install basic dependencies:
# pkg_add libcares gcc # ln -s /usr/local/bin/egcc /usr/local/bin/gcc
Set up a new user to privsep.
# useradd -m -g=uid -c "psybnc" -d /home/psybnc -s /bin/ksh psybnc # su psybnc
Note: If your server has an unreliable connection, you may need to apply this patch to increase its tolerance to delay:
--- src/p_server.c.old Mon Oct 21 18:31:19 2024 +++ src/p_server.c Mon Oct 21 18:03:30 2024 @@ -1680,7 +1680,7 @@ } #ifndef STONETIME -#define STONETIME 240 +#define STONETIME 2400 #endif #ifndef STONECHECKDELAY
Install c-ares then build psybnc:
$ cd $ ftp http://psybnc.org/download/psyBNC-2.4.3.tar.gz $ tar zxf psyBNC-2.4.3.tar.gz $ rm psyBNC-2.4.3.tar.gz $ cd psybnc $ make
Inside psybnc.conf
:
PSYBNC.SYSTEM.PORT1=6667 PSYBNC.SYSTEM.HOST1=* PSYBNC.SYSTEM.PORT2=6697 PSYBNC.SYSTEM.HOST2=S=* PSYBNC.HOSTALLOWS.ENTRY0=*;*
Running
$ ./psybnc
See rcd? to add psybnc to system startup.
Usage
When interacting with psybnc
NICK nickname USER nickname nickname bnc.example.com :nickname
all fields must be filled in -- it checks ident for login
To change nicks on a different network: /nick #ircnow~jrmu
I could not figure out how to send a raw command to a specific network, so I just made ircnow the main network
to send a privmsg to a specific network
/query #network~nickname hello, world! /query #ircnow~Nickserv identify password
To add a network:
/quote addnetwork network
For no SSL:
/quote addserver network~irc.example.com :6667
For SSL:
/quote addserver network~S=irc.example.com :6697
Be careful, if it defaults to IPv4 and you attempt to connect IPv6, psybnc crashes each and every time you load it
Note
As of OpenBSD 7.7, make for psybnc 2.4.3 cannot detect libcares. It used to work on OpenBSD 7.5. psyBNC-2.3.2-7.tar.gz works without any special configuration.