psyBNC HOWTO
Contents |
Introduction
psyBNC is an easy-to-use, multi-user, permanent IRC-Bouncer with many features. Some of its features include symmetric ciphering of talk and connections (Blowfish and IDEA). It compiles on Linux, FreeBSD, SunOs and Solaris.
Installing
First, download psybnc source code onto your box/shell.
Step One:
wget http://psybnc.at/download/beta/psyBNC-2.3.2-9.tar.gz
Then, extract it using:
tar zxvf psyBNC-2.3.2-9.tar.gz
Step Two :
cd psybnc
make
Now, you ready to edit your psybnc port/etc:
nano psybnc.conf
Make sure you edit the ‘Port’. Its not advised to use the default port.
PSYBNC.SYSTEM.PORT1=21332
Once your satisfied with the port number you choose, save it, Ctrl+X.
Step Three:
Now to start your psybnc.
./psybnc
Example:
<bash-$-> ./psybnc .-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-. ,—-.,—-.,-. ,-.,—.,–. ,-.,—-. | O || ,-’ \ \/ / | o || \| || ,–’ | _/ _\ \ \ / | o< | |\ || |__ |_| |____/ |__| |___||_| \_| \___| Version 2.3.2-9 (c) 1999-2003 the most psychoid and the cool lam3rz Group IRCnet `-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=tCl=-’ Configuration File: psybnc.conf Language File: psyBNC Language File – English No logfile specified, logging to log/psybnc.log Listening on: 0.0.0.0 port 6661 Listening on: * port 6661 psyBNC2.3.2-9-ITdDE started (PID 4236) All done!
Usage
After connecting (check the conf file for the password if you didn't set it already) type this line to get list of commands available for use
/BHELP
The bouncer supports multiple networks so commands to connect to new network without making a new bouncer user can also be listed.
System Settings
PSYBNC.SYSTEM.PORT1= The port your bnc is going to listen on. use a PORTx variable if you want multiple ports. PSYBNC.SYSTEM.ME= The name of your bouncer. PSYBNC.SYSTEM.HOST1= The IP your bnc is going to listen on. Use HOSTx for multiple hosts. If you want an SSL port, Put an 'S=' before the IP. PSYBNC.SYSTEM.DCCHOST= The IP that will be used for DCC sessions. PSYBNC.HOSTALLOWS.ENTRY0= The first IP that will be allowed to connect to your bouncer. Use *;* for everyone. This can include masks. The first * indicates the IP, not sure what the * after the ; denotes... can't find anything anywhere about it.
User Settings
(note that USERx can be substituted for USER1 where x is an integer) USER1.USER.LOGIN= The login name for the user (ident) USER1.USER.NICK= The nick the user will use on irc. USER1.USER.USER= The 'real name' of the user (what appears in the whois) USER1.USER.PASS= The password of the user (this will be shown in encrypted form; if you change the password in psybnc, then restart it, the password will become encrypted.) USER1.USER.RIGHTS= 0-not an admin; 1-an admin USER1.USER.ACOLLIDE= 0-disable anti-collide; 1-enable anti-collide USER1.USER.SYSMSG= 0-Do not show system messages to the user; 1-Show them USER1.USER.VHOST= The user's vhost USER1.USER.AWAYNICK= The user's away nick USER1.USER.AWAY= The user's away msg USER3.USER.LEAVEMSG= The message shown when you disconnect from the bnc USER1.USER.VLINK= (0/1) Not sure what this does (default =0) USER1.USER.PPORT= (0/1) Not sure what this does (default =0) USER1.USER.PARENT= (0/1) Not sure what this does (default =0) USER1.USER.QUITTED= 0-User is connected to irc; 1-User is quitted USER1.USER.DCCENABLED= 0-dcc is diabled; 1-dcc is enabled. USER1.USER.AIDLE= 0-anti-idle is disabled; 1-it's enabled. USER1.USER.LEAVEQUIT= 0-when the user disconnects from the bnc, they stay on all their channels; l-when they quit, they leave all the channels, but still stay connected to irc. USER1.USER.AUTOREJOIN= 0-if you get kicked when not on the bnc, psy will not rejoin the channel; 1-psy sill rejoin the channel for you if you get kicked. USER1.USER.LASTLOG= (0/1) Not sure what this does (default =0) USER1.SERVERS.SERVER1= The first server of the user. USER1.SERVERS.PORT1= The port for server number 1. USER1.CHANNELS.ENTRY0= The first channel the user wants to sit on. USER1.CHANNELS.KEY0= The key for the first channel. (This is encrypted as of version 2.3.0) USER1.INTCHANS.ENTRY0= An internal channel the user wants to sit on. USER1.AOP.ENTRY1=Entry for someone to get ops from your client in the form of hostmask;password.
Linkage
LINKS.LINK1.PORT= Port for link 1 LINKS.LINK1.NAME= name of the other bnc LINKS.LINK1.IAM= name of the other bnc (redundant?) LINKS.LINK1.HOST= IP of the link LINKS.LINK1.PASS= Password for the link (used only by the bncs) LINKS.LINK1.ALLOWRELAY= 0-Do not share vhosts; 1-Allow the sharing of vhosts LINKS.LINK1.CRKEY= Key set by negotiation between the bncs LINKS.LINK1.TYPE= 0-Your bouncer links to theirs; 1-Their bouncer links to yours.
Crontab
The basic form for a crontab entry is (to the best of my knowledge): <minute> <hour> <day> <week> <month> <process to run>
So, if you like to check every 10min, it would be:
0,10,20,30,40,50 * * * * /path/to/my/process
Included with psybnc is psybncchk. Open this file and change the line that reads PSYBNCPATH=/set/path/here. Set it to your psybnc directory of course. Make sure this file has execute perms; in your shell, type:
chmod 700 psybncchk
Then add the following to your crontab (use crontab -e to edit your crontab): (this example is for a check every 10 minutes:
0,10,20,30,40,50 * * * * /l33t/shell/psybnc/psybncchk >/dev/null 2>&1
The >/dev/null 2>&1 part tells crontab not to send you an e-mail whenever it restarts psybnc. Omit that part if you like e-mail.
Resources
Credits & Support
Article written by Trix1m