If you know nothing about bncs, a bnc is short for a
'bouncer.' A
bnc acts
as a proxy for irc, allowing you to hide your real IP address and
use a vhost
(vanity host - something like 'this.is.a.l33t.vhost.com'). What are
the advantages
of this? Well, mainly there's just one important one: It'll stop
stupid packet
kiddies from trying to knock you off the network. Everyone hates
getting disconnected,
and with a bnc on a decent shell, you should be pretty immune.
Remember though:
the kiddies can still nuke you, but it is assumed that the shell
provider
has a high-bandwidth line that allows it to withstand the numerous
packets.
If your shell is on a 56.6, you'll still be screwed.
So... why psybnc? There are a variety of other open
source bnc's
available
for you to download, most notably EZBounce and plain-ol BNC. Both of
these
do the exact same basic thing as psybnc: hide your real
host. But that's
about where the similarity ends. I've been using psy for a long time
now, and I love with all the features that it offers. To name a few:
· You'll always be connected to irc. Even when you close your
irc client, psy
will maintain your connection. When you connect later, you'll
instantly
be back on the channels you left. This also lets you hold your nick
(if you
need that feature), or hold ops on a channel.
· psy hides your IP even in DCC sessions. In other bncs, a
direct
client-client session is opened, thus revealing your IP. In psy, the
connection
is bounced through the shell, and your IP remains your dirty little
secret ;)
· You can link multiple psy's together. This allows you to
share vhosts,
and also create a small ircd, termed the 'internal' network on the
bncs.
· psyBNC now supports SSL. woohoo :)))
There are tons more features, but you can just download the source
and view the README.
Now... for the first part of this tutorial, the Basic
section, I
assume you
have little or no experience with shells/irc. For the Intermediate
section,
though, I assume you can hold your own. For most users, the Basic is
as far
as they need to go, but all the fun stuff is a bit more complicated.
Hopefully you have already downloaded the source. If not, you can
find it
here: http://www.psychoid.lam3rz.de.
After you have downloaded that, fire up your favorite ftp client and
upload
it to the root directory of your shell. You could also get the
source by using lynx or wget.
Example wget command:
The next step is to decompress this
file (.tar.gz is kinda like a .zip file for all you windoze ppl out
there).
To do this, type:
tar zxvf psyBNC2.3.1.tar.gz
Notice that it's case-sensitive. Everything in unix is
case-sensitive. Keep that in mind
for everything in the future.
If you typed the correctly, you should have a psybnc
directory
on your shell. Change to it and see what you have!
cd psybnc
ls -al
Now, this next part is where it gets a bit
harder. psyBNC includes a GUI for configuring the bnc. However, this
requires
ncurses to be installed on your shell, something a bunch of shells
do not
have. In my experience, most flavors of linux have it
installed,
but some others don't. So, give it a whirl. Type:
make menuconfig
If you get a GUI, congrats: the configuring process is
much easier. If not, well, welcome to my world ;) With menuconfig,
the GUI
is very easy to follow: obviously an [X] denotes that the option is
selected,
while [ ] indicates it's not.
For all those stuck doing it by hand, after each option I explain
how to
set it. For all the compiling options, everything is placed in the
file
config.h, which is found in the psybnc directory. Just open that
file with
your favorite editor on the shell (I use and recommend pico - You
can edit the file by typing:
pico config.h
In this file, if you want something added, it has to be
defined. Example: #define INTNET adds support for the internal
network.
The key for the section below is as follows:
Option NameThe #define line for config.h
A description of the option
Compiling options
Support Encryption#define CRYPT
This encrypts all your passwords, and enables support
for channel
encryption,
relay encryption, etc... I highly recommend you leave this
enabled.
Encryption Type#define BLOWFISH or #define IDEA
(default = Blowfish) Cryptographically speaking,
these ciphers are
about equally secure. However,
Blowfish is much faster. You can read more about Blowfish here
Also, IDEA is patent-protected - you should get permission before
using it!
Support Translation#define TRANSLATE
This lets you
type in english (or whatever your language is) and have the text in
the channel
appear in a different language. You'll have to see the README for more
information:
I don't use this feature.
Support Internal Network#define INTNET
This lets
you use the internal ircd that psy has. Think of it as a big partyline
where
you can set modes/bans/topic/etc... I like it, and I recommend you
leave it
enabled.
Support Traffic Logging#define TRAFFICLOG
This enables
support for logging channels when you're not around. It can be handy,
but
it can also eat up your shell disk space VERY fast. So be careful if
you enable
this. (note: you can leave support for it enabled here, then disable
it after
it is compiled by simply turning it off)
Support Linkage#define LINKAGE
If you want your bnc
to link to others (or others to link to yours), enable this. I use it.
Support DCC Files / DCC Chat#define DCCFILES and #define
DCCCHAT
Standard DCC features over IRC. Most people use
these features,
so leave em be.
User Mode#define MULTIUSER or #define
SINGLEUSER
Multiuser or Singleuser.
If you're going to share your bnc, set it to multi. If it's just you,
set
it to Single.
Maxium users#define MAXUSER n
Pretty self-explanatory. However note that each
network you add
(if you use multiple networks) adds a
virtual user. Be sure to keep this in mind when setting a
max! (And really a max is pointless unless
you are running an anonymous bnc) (n = # of users)
Maximum connections#define MAXCONN n
This is the number
that each user can have. They need at least 2
(incoming/outgoing) and
more for dcc's, multiple networks, etc. I suggest leaving it at 25. (n
= # of connections per user)
Support Scripting#define SCRIPTING
psyBNC allows user-specific
scripts. I will not discuss that in this tutorial, but it doesn't hurt
to
leave support for it enabled.
Support oIdentd#define OIDENTD
If your shell supports
it, this allows users to define their own ident. Most don't support
it. I
don't use it. (for more info on oIdentd: http://ojnk.sourceforge.net/)
Use asynchroneous resolving#define ???? definition unknown
EXPERIMENTAL!!Tells psy to use asynchronous
(as opposed
to synchronous) DNS lookups. This
is not a tutorial on DNS so I will not get into it. Note this works
only if
your system supports it!
Support Multiple IRC Networks#define NETWORK
This
allows users to connect to >1 network with the same client. Hence,
in one
mirc session, the user could be on efnet, dalnet and ircnet. I love
this feature
and recommend you leave it enabled (even if you don't plan to use it
now).
Support proxy usage#define PROXYS
If you want to
further anonymize your connection by bouncing
mirc-->bnc-->proxy-->irc,
enable this. But since most irc servers check for open proxies, this
won't
work in many cases.
Anonymous Bouncer Usage#define ANONYMOUS
Want the whole world to use your bnc? Then enable
this! (not
recommended)
No Permanent IRC-Connections#define DYNAMIC
If this
is enabled, psy will disconnect you from irc when you disconnect rom
the bnc.
Otheriwse, you'll always stay connected to irc unless you force it to
quit.
Loglevel#define LOGLEVEL n
3 different options here,
choose your poison. I prefer to leave them all enabled since I like to
know
everything going on with my bnc. (define where n is: 0 =
Errors, Warnings and Info; 1 = Errors and Warnings;
2 = Errors only)
Use the 2.1.1 compatible partyline#define PARTYCHANNEL
If you're going to be linking to old psy's, this
might be good to
enable.
But if you're the only bnc, or if they're all > 2.2, no need to
enable this
option.
Version reply#define CTCPVERSION
"reply"
Set the reply psybnc
will send when someone sends you a CTCP VERSION query. (note: when you
are
connected to the bnc, psy will be transparent, all ctcp's will be
answered
by mirc. When you're not connected, psy will only answer to the
version ctcp
as set by this option.) (psy defaults to: "psyBNC
2.3.1 by the most psychoid")
SSL-Path#define SSLPATH
"/path/to/ssl"
(default: wherever your openssl
installation has been detected) - If you wish the use SSL on your bnc,
the
default here should be fine. However, if you have multiple openssl
installations
for some reason, then define the path to the one you want to use. If
you do
not want SSL compiled into psyBNC, then specify something like
/dev/null here.
Note that you can compile SSL support into your bnc and simply not use
it.
SSL-SecLevel#define SSLSEC n
(default: Check Certs
and Keys (NOT IMPLEMENTED)) - Sets the security level of your SSL
setup. This
can be one of the following: None, Check Certs, or the default.
These different
options correspond to values 0, 1 and 2 respectively for use in
config.h.
As with async DNS, this is not an SSL tutorial. Note however that
setting
'None' does NOT disable SSL; it simply does not check client
certificates.
If you're using SSL for encryption only, then you can safely set
this option
to None. Furthermore, psyBNC has not yet implemented
client-checking functions.
Once you have all these options set, you have two choices: If you're
using
menuconfig, skip to the next step. If you're doing it manually, this
is where
you actually want to compile your bnc. It's very easy to do. In the
psybnc directory, simply type:
make
It won't take long to compile. If you have compiled with SSL
enabled, you'll have to create a
self-signed certificate at the end of the compilation process.
Simply follow the prompts that you are
given. The most common error is to specify a wrong Common
Name. According to
certificate standards, the common name must be a FQHN: Fully
Qualified HostName, i.e: psybnc.mydomain.com.
Since the certifcate is simply being used a an encryption seed and
not as a validation of identity, this is
not really important - the cert is not being signed a real CA
anyway!
Configuring options
If you're using the GUI, all these options are accessable under the
Bouncer-Config
part of the menu. If you're not using the GUI, all these options are
in psybnc.conf,
which is created in the psybnc directory after it is compiled. To
edit these
options manually, just edit this file. The Appendix has the proper syntax for
each option. The rest of this section will cover the GUI method.
Before going through these options, do the following: know the IP of
your shell.
for example, if you connect to l33t.shell.com open up a
console (or command prompt in Win) and ping
the hostname. You should see something like this:
-bash-2.05b$ ping www.efnet.org PING www.efnet.org (193.45.36.242): 56 data
bytes
64 bytes from 193.45.36.242: icmp_seq=0 ttl=49 time=132.975
ms
So if your shell was www.efnet.org (which I can guarantee it is
not!), the corresponding IP would be
193.45.36.242.
Also, choose a port for the bnc. Check the Terms of Use of your shell
- some companies require you to use a certain port range.
And if you're on a *nix shell, the port will have to be higher than
1024 (unless you run the bnc as root, which is certainly
not recommended!).
Ok, on to the options, same basic format as the compiling options.
Listening ports
You have to tell the
bnc where to listen. You can have it listen on more than one port on
the same
IP, on multiple IPs with the same port, etc. For most people,
listening on
just one port on one IP is adequate. (the psy default is 31337, and
you can
leave it at that with no problems, but it is always a good security
practice to change the port).
If you wish to create an SSL listening port, precede the
HOSTentry with "S=" i.e.:
PSYBNC.SYSTEM.HOST1=S=123.123.123.123
This will make the specified port(s) on 123.123.123.123 an SSL port.
PSYBNC.SYSTEM.PORT1=xxxxx should never have an "S=" in it.
Links
Don't worry about this now.
Bouncer Name
Name your bnc. Something
like mypsy1 will work just fine.
Host Allows
Want to restrict access to certain
IPs or certian IP masks? This is the place to put those permissions.
psy will
disallow access to anyone not listed here. To allow anyone (provided
they
have the correct username and password) set this to *.
Users
At this point, you want to just
add yourself. Adding other users will be discussed in more detail
later. In
menuconfig, just select this, select New then follow the
directions.
Remember that to connect to psybnc, your ident in mirc must be set to
your
psybnc username. For all those manual people, jump down to the Appendix, which
is where you should be anyway.
DCC Host
The IP to use for all your
DCC sessions (if you defined DCC support). I recommend
setting it to
the same
IP that your bnc is listening on for simplicity.
Congrats, your setup is complete. If you haven't done so already,
it's time
to compile your bnc by typing "make" at the shell prompt
in your psybnc
directory. Then type "./psybnc" to start the bouncer.
Hopefully everything
went smoothly and you're ready to jump into the next section.
The first thing you need to do is connect to your bnc. In your irc
client, open up the
connect dialogue box and add in another server. Name it My
BNC or
something like that, enter the IP and port, and enter the password
that you
chose (either through menuconfig or in the conf file). Now make sure
that your
ident is set to your username. It's also a good idea to set your
e-mail address
to username@whatever.com. If psy can't get an ident
response from
you, it checks your e-mail addy as verification of the username. If
everything
goes well, you'll see this when you connect:
-Welcome- psyBNC2.3.1
Now you need to get connected to irc: first, you need to select your
vhost.
To see what vhosts are available, at your shell prompt type:
vhosts
This command is only available if your shell provider has created
such a function, but in
my experience 99% have.
For security reasons (?), there is no way to view the vhosts in psy.
After your
vhost is selected, you'll need to add in some irc servers, and set a
few other
options. the commands follow below. All commands appear like this
/mycommand,
everything else after it is an explanation. All brackets are for my
purposes,
don't use brackets in any command!
/bvhost [vhost] -- (this command used
to be /vhost) -- [vhost] is your vhost
in alpha form (ie, this.is.a.cool.vhost.com and not
127.0.0.1) /addserver [server] :[port] -- server can
be in
alpha or numeric form...
Once you add in the server, psy will auto-connect to it in a short
while. You
can add in more servers so that if one goes down, psy can reconnect
to a different
one. Just use the command above again. For server managment:
/listservers -- lists all the servers you
have added /delserver [n] -- deletes the server with
#[n] (as shown by the listservers command) /jump -- disconnects you from your current
server and attempts to connect to the next server in your list /bquit -- disconnects you from the server
until you force it to connect /bconnect -- connects you to irc
Now, remember that psy will keep you connected to irc even when
you're not
connected to the bnc. So, these commands are helpful:
/setaway [message] -- psy will display this
message
to all channels you're on when you quit the bnc. It will NOT repeat
this message
(since that's gay). To remove the message, just type /setaway /setawaynick [nick] -- when you quit the
bnc, psy
will auto-change your nick to the nick you set here. When you
reconnect, it'll
auto change it back to what's shown in the mirc nick.
OK, now for some more commands that ppl find useful. Remember
that ALL commands are in the README file that came with psybnc. I'm
not going
to repeat all of them.
/playprivatelog -- plays the log of all
messages
sent to you when you were disconnected from the bnc. The log will be
opened
in a window called -psyBNC. /eraseprivatelog -- erases the
aforementioned log.
psy has a damn cool feature in that it allows encryption. You can
encrypt text
sent to a channel or a person. Each person needs to have the same
key to view
the text. This is helpful if you're paranoid, or if you want to have
a private
conversation in a public channel. (Why you wouldn't just pm is
beyond me ;)
It also makes you look l33t lol.
/encrypt [password] :[channel/person] --
make
sure everyone you want to speak with has the same key. And they need
to be using
psybnc as well. duh. /listencrypt -- lists your current
encryptions /delencrypt [n] -- deletes encryption #[n]
as shown by the listencryption command.
Obviously, if you have your bnc compiled as singleuser, this section
is pointless
for you. But for everyone else, I'm sure you want to add in other
users, delete
them, etc... Here's the commands to do it:
/adduser [user] :[real name] -- the [user]
is
what the person will have to set their ident to. The [real name] part
is what
ppl will see when doing a /whois. for example:
/adduser jestrix :me love you long time
will show this in the first line of a whois:
jestrix is ident@vhost * me love
you long time.
/deluser [user] -- deletes the user. /password [new pass] -- changes your
password. If you're an admin,
you can change other ppl's passwords:/password
[user] :[pass] /madmin [user] -- makes a user into an
admin (choose your admins carefully!) /unadmin [user] -- removes admin rights
from a user. /bwho --- see who is added to your bouncer.
Also
shows if they're connected, what server they're connected to, and
what their IP is.
I recommend you secure your bnc even more by restricting what IPs can
connect to it:
/addallow [IP or mask] --- lets whatever IP
or
mask you specify connect to the bnc. IPs can be definite, ie.
12.12.12.34 or
masked, 12.12.12.*. You can also use hostnames and masks such as
*.myisp.com. /listallow --- lists the allowed
connections. /delallow [n] --- deletes allow #n as shown
by listallow.
This section assumes that you compiled your bnc with DCCFILE and
DCCCHAT. If
you did not, then you can do all your dcc stuff as you normally
would
in your irc client, but remember that your real IP will be
revealed by doing this.
Like I stated before, the benefit of psyBNC is that it hides your IP
during DCC
sessions, but in order to do this, your life gets a bit harder.
First, let's
go over the basic DCC commands:
/dccchat [user] --- opens a dcc chat
session with the user you specify. /dccsend [file] :[user] --- sends a file to
the
person you specify. The file MUST be in ~/psybnc/downloads/USERx
(where USERx
is your user #. Not sure what your user # is? do a /bwho /dccanswer [user] --- if someone sends you
a dcc
chat request, psy will inform you through a notice. You must then
type this
to accept the request. /dccget [file] :[user] --- gets a file that
was
dcc'd to you by someone. This file will be stored in the
~/psybnc/downloads/USERx
directory. /dccsendme [file] --- tells psy to send you
the
file you specify. Use this after you get a file from another user and
then want
to get it from your shell. This is the only way people without shell
access
can get their files. /listdcc --- lists all dcc's /dcccancel [n] --- cancels dcc # n as shown
by /listdcc
If you wish to use SSL encrypted DCC sessions, precede the value of
the command
with "S=" ie: /dccchat
S=l33th4x0r - Note that the other person must
have an SSL capable client.
Now for the cool stuff :) my favorite feature of psy is its ability
to stay
permanently connected to a bot through a DCC, and to ask this bot for
ops. As
anyone who has experience with running a botnet knows, one of the
easiest ways
for a channel to be taken over is to have some idiot /msg [bot] OP
[password],
when the bot's nick was taken by someone else. With psy, however, the
askop
request can be done two ways: through the partyline when a DCC is
initiated,
or through a msg that first checks the mask of the person being sent
the request.
Sweet, eh? So, the commands to do it:
/adddcc [botname] [username] [password]
:[host]:[port]
--- The botname is obviously the name of the bot, The username and
password
are your personal l/p that you use to gain access to the bot's
partyline. The
host is the host of the bot. It can be either the alpha-form, or the
actual
IP address. I prefer the actual IP address, since it's possible DNS
can be down.
And finally, the port is the port that the bot listens on for
user connections.
Some bots listen for other bots on one port and for users on another,
so make
sure you get the right one :) /listdcc --- lists all dcc's /deldcc [n] --- deletes dcc # n as shown by
/listdcc
Now, for the askops part: This part assumes you added in a DCC to the
bot as
shown above. If you don't have partyline access, you can still add an
askop,
but I'll get to that later.
/addask [#chan] [password] :-[botname] ---
The
chan is the channel you want to get ops on, the password is your
password, and
the bot's nick, preceded with a :-, is the bot which you have a dcc
enabled
to. /listask --- lists all the askops you
have /delask [n] --- deletes askop # n as shown
by /listask
Now, if you don't have partyline access, you can add the askop in this
way:
/addask [#chan] [password] :[bothost] ---
where
chan is the channel you want to be opped on, your password is your
password
(duh), and the bothost is the bot's hostmask. A hostmask, for the
uninformed,
is formed like this: username!ident@host. Since a bot is set to use a
different
nick if someone takes their default, set the host for something like:
*!mybot@damn.cool.vhost.com.
One of my other favorite things about psyBNC :) Do you have a bunch
of channels
you hang in on efnet, but also one or two channels on dalnet that
you like to
go to? If you're like me, you do...but you alo hate having multiple
mirc sessions
open. Fret no more! psyBNC can solve your problems by allowing you
to connect
to more than one network with the same mirc client. For this section
I'll assume
that you're familiar with most of the commands in psy. If not, get
familiar
with them before you try to do this. Ok, let's get into the
commands.
The first thing you need to do is add in another network:
/addnetwork [name] --- adds in a network
with the
name you specify. Keep in mind that network names are case-sensitive.
Furthermore,
you'll be typing the name a lot, so if you're adding in dalnet, use
the name
dal or dn or something similar.
Once you have the network added, you need to choose your vhost for
that network.
If you don't choose one, it'll default to the IP the bnc is on,
usually something
gay like "my-shell-company.com". So:
/bvhost [network]~[vhost] --- sets your
vhost on the network you specify.
See this command? This is the format for all commands used
on multiple
networks. Simply prefix the syntax of the command with [network].
So, to give
some other examples: /addserver dn~irc.dal.net:6667 --- adds
in the server irc.dal.net with port
6667 to the dn network. /join dn~#fxp --- joins #fxp on network
dn. (btw, I hear that some freaky ppl
hang in this particular channel ;) /msg dn~joeschmoe beeyatch --- sends the
message "beeyatch" to the user
with the nick joeschmoe on network dn.
Now, some weird things about multiple networks:
· Your nick in the nicklists for channels on other networks
will show the nick
you're using on your primary network. So, even if you do: /nick
dn~TwatMuffin,
even though other ppl will now see you as TwatMuffin in their list,
you'll see
yourself as jestrix, or whatever nick you use.
· If you get opped/voiced in a channel, you won't see it in
the nicklist. You'll
just appear to be a regular schmoe.
· Let's say JoeSmith is in #chat on efnet, your primary
network. You head over
to dalnet, and he's there in #fxp. Everyone else in #fxp will look
like dn~BobJones,
but JoeSmith will be just JoeSmith. If you try to msg him by
dbl-clicking on
his nick int he dalnet channel, you'll really be sending a msg to
him on efnet.
You have to use dn~JoeSmith to talk with him on dalnet.
Some final things. Maybe you don't always want to be on more than
one network.
I prefer to always be on efnet, and then head to my other networks
when I want
to talk with ppl there.
/bconnect [network]~ --- connects you to
the network
you specify (assuming you have servers added for that network) /bquit [network]~ --- quits you from that
network.
You'll still be connected to your primary network. Note, if you do
/bquit, you'll
be quitted from all your networks. /switchnet [new network] :[current network]
--- This command will let you switch
your primary network. By doing this, you won't have to prefix all
your commands with the ~net syntax.
For example, let's say that you are on EFNet and DalNet. Efnet is
your primary network (you dont need to prefix
anything with the ~ format) and DalNet is added as ~dn. If you
currently did /msg jestrix,
you would be messaging jestrix on efnet.
If you do /switchnet dn :ef your current
network will be assigned to dn - DalNet. Now
if you /msg jestrix you will get jestrix
on DalNet. To msg him on EFNet, you would
have to do /msg ef~jestrix - since
ef was the prefix you assigned in the
switchnet command. To switch back to your original config, you'd do:
/switchnet ef :dn
OK, multiple networks also includes the psy internal network. Think
of it as an ircd inside your bnc. By using the network name
int
you can create private channels that only ppl connected to your bnc
can access.
For example, /join int~#partyline will
have you
join the internal channel #partyline. You can set modes/ops/topic in
the internal
channels just like you would on a normal channel. do a whois on
someone in an
internal channel, it looks neat ;)
You can also privately msg other people connected
to your bnc: /msg $[nick]. Prefix it with
a $ and
psy will send it directly to the person on the bnc; it will not pass
through
the irc server. (So if you both are on SSL-enabled clients/bncs -
the message is perfectly secure in transit!)
A cool aspect of psy is the ability form a psy-net through the
linkage of multiple
psybncs. The benefit of this is to create a private internal network
secure
from snooping, and secure from takeovers! Furthermore, you can let
ppl on other
bouncers use your machine's vhosts if you wish. As you should have
realized
by now, preceding an IP with S= creates an SSL port.
So, to create a link to another bouncer: /linkto [name of other bnc] :[IP]:[port]
The other bouncer would have to do the following: /linkfrom [name of other bnc]
:[IP]:[port]
To view all your links: /listlinks
I love to have everything encrypted, including my links. To create
an encrypted link: /setlinkkey [link #] :[password]
After doing this on both psy's, do: /relink [link #] on either bouncer to
reset
To enable the sharing of vhosts: /relaylink [name of other bnc] :n ---
where n=0
to disable vhost sharing; 1 to enable it.
Final note: If you use hostmasks to restrict connections to your
bnc, you must
add the other bnc's IP as an allowed host!!
For one reason or another, you might want to edit your psybnc.conf
(especially
if menuconfig doesn't work for you). So, here are the applicable
lines and what
they mean. I'm sure I've missed a few lines, so if you find anything
and know
what it does, please email me at jestrix(at)jestrix(dot)net. Note
that all the variables in psybnc.conf are CAPITALIZED and
that there are no
spaces on either side of the equal sign.
Variables are shown in this style.
###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; 1-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. (not covered in this
tutorial)
###LINKAGE STUFF### LINKS.LINK1.PORT= Port for link 1 LINKS.LINK1.NAME= name of the otehr
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.
###DCC AND ASKOP STUFF###
(note: I don't recommend editing any of these variables through
psybnc.onf ->
use the commands in mirc. USER1.DCC.ENTRY0= Stuff pertaining to DCC
#0 USER1.ASK.ENTRY0= Stuff pertaining to
AskOp #0
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: