• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

COPYINGH A D31-Dec-200017.6 KiB340281

ChangelogH A D07-Feb-20057.6 KiB178161

MakefileH A D07-Feb-200544 54

Makefile.inH A D03-May-2022938 3328

Makefile.outH A D31-Dec-200044 54

READMEH A D06-Feb-200512 KiB359229

bnc.cH A D06-Feb-20054.9 KiB262225

bncchkH A D31-Dec-2000544 3522

bncsetupH A D03-May-20228.7 KiB416339

cmds.cH A D07-Feb-200529.7 KiB1,2691,082

conf.cH A D06-Feb-200512.3 KiB738658

config.h.inH A D10-Nov-20041.2 KiB4531

configureH A D10-Nov-2004151.9 KiB5,3534,565

configure.inH A D10-Nov-20041.5 KiB5947

ctcp.cH A D26-Jan-20055.7 KiB358278

ctcp.hH A D05-Aug-2002289 2017

example.confH A D07-Feb-20051.1 KiB349

mkpasswd.cH A D31-Dec-20001.4 KiB7464

motdH A D06-Feb-2005461 1311

sbuf.cH A D11-Nov-20044.7 KiB248205

sbuf.hH A D18-Sep-20041,021 3927

send.cH A D26-Jan-20057.3 KiB440392

send.hH A D11-Jul-2002124 32

server.cH A D07-Feb-200531.5 KiB1,8201,560

struct.hH A D07-Feb-20052.9 KiB180139

README

1 __________    ______  ____     _________
2/ \  ____  \  / \     \\   \   / \   ____\
3\  \ \___\  \ \  \  \\  \   \  \  \  \___/
4 \  \  ____ <  \  \  \ \     \  \  \  \
5  \  \ \___\  \ \  \  \  \    \  \  \  \_____
6   \  \_______/  \  \__\\  \ __\  \  \_______\
7    \/_______/    \/__/   \/__/    \/_______/   IRC PROXY
8
9BNC 2.9.4 (c) 1998-2005 by James Seter AKA Pharos on efnet
10Site:
11  http://gotbnc.com
12
13Table of Contents
14
15   1.  INTRODUCTION ...............................................    2
16      1.1  Features ...............................................    2
17      1.2  Failures ...............................................    2
18      1.3  To Do ..................................................    2
19   2.  COMPILATION ................................................    3
20      2.1  Installation ...........................................    3
21   3.  CONFIGURATION ..............................................    4
22      3.1 ON-THE-FLY configuration commands .......................    5
23   4.  SETTING UP CRONTAB .........................................    6
24   5.  CREDITS ....................................................    6
25   6.  THE GNU WAY ................................................    6
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58James Seter                                                     [PAGE 1]
59
60BNC                             IRC Proxy Daemon              April 1998
61
62
631.  INTRODUCTION
64
65   IRC in general over the years has progressed into a very complex host
66   for multitudes of different types of people.  BNC which is a acro for
67   BouNCe is a daemon designed to allow some people who do not have
68   access to the net in general, but who do have access to another pc
69   that can reach the net, the ability to BouNCe though this pc to IRC.
70
71   BNC also satisfies as a host to allow users to Bounce through shells
72   to IRC thus allowing for many features such as an interresting
73   internet address commonly used for show or for benifits such as mild
74   protection from commonly used attacks such as DoS by covering a users
75   real IP with that IP of a machine more capable of handling these
76   attacks.
77
781.1 Features
79
80   BNC sports many important advances, including the following:
81
82   RFC 1459 compatible.
83   Vhost support.
84   Vhost lists in configuration file, to be displayed on call.
85   Password option for securety.
86   ./bncsetup dialog based script for automatically makeing .conf files.
87   Additional password for ADMIN mode.
88   NON-spawning code with crontab script to keep daemon alive.
89   Daemon commands for ON-THE-FLY single-user reconfiguration of Vhosts
90     and connecting to a server.
91   Ability to include the bounce address in the password; for quick,
92     efficient connection to an irc host.
93   Optional Logging of connects, failures, and other important data.
94   Identwd dynamic ident support for on-the-fly per-user ident changing.
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109James Seter                                                     [PAGE 2]
110
111BNC                             IRC Proxy Daemon              April 1998
112
113
1141.3 To Do
115
116   Things I hope to accomplish in later versions:
117
118   Ban lists. (skip that, allow lists work just fine)
119   More Admin commands.
120   DCC automatic redirection through Proxy.
121   Improve the IRC Docking
122
123
1242.  COMPILATION
125
126   To compile you must extract that compressed tar to some directory
127   such as a subdirectory of a normal users.
128   NOTE BNC IS NOT DESIGNED TO BE RAN AS ROOT OR SUID. DOING SO CAN
129   POTENTIALLY COMPROMISE THE SECURETY OF THE MACHINE.
130
131   With that in mind, log into the shell as a normal user.  After
132   uncompressing the archive (considering your reading this, i hope you
133   already figured this out) into your shell, Change to that directory.
134
135   Compiling BNC requires that you run the GNU autoconf created script
136   ./configure which will calculate system-dependent values and option
137   needed by BNC to properly operate on a wider range of OS's.  After
138   configure is done doing its job, BNC is made by running 'make' which
139   is included with most GNU C compilers.  After make completes, unless
140   an unexpected error has occured, the executable binary 'bnc' should
141   be located in that directory.
142
1432.1 Installation
144
145   The best method for installation is to move the executable to a
146   different subdirectory of your home directory on the shell along with
147   the script bncchk and the configuration file (normally bnc.conf) that
148   you make yourself using the provided example file 'example.conf'.
149   An example is as follows (sizes and directory names depends on you):
150
151   bnc@XNation:/home/bnc/phbnc$ ls -lF
152
153   -rwx______   1 bnc      users         544 Aug  7 11:13 bncchk*
154   -rwx______   1 bnc      users        6794 Aug  7 09:57 bncsetup*
155   -rw-------   1 bnc      saints        747 Apr 14 20:08 bnc.conf
156   -rw-------   1 bnc      saints          4 Apr 13 19:14 pid.bnc
157
158
159
160
161James Seter                                                     [PAGE 3]
162
163BNC                             IRC Proxy Daemon              April 1998
164
165
1663.  CONFIGURATION
167
168   Most of the configuration is contained within a configuration file
169   bnc.conf which it looks for in its current directory.  BNC will not
170   run if this file is not present, or if the file fails to satisfy the
171   required information to properly load.  An option configuration file
172   can be specified on the command line of BNC.
173
174   The configuration file is line based, each line is a seperate option.
175   What option is set is determined by the Directive in this format:
176
177   Directive_Name:Argument:Argument....
178
179   Required directives are D (Daemon Configuration) and S (Supervisor
180   Password).
181
182   Format is as follows:
183
184   D:Listening port number:Maxusers limit number:Password
185
186   Listening port:  Port number on the host to attach to.
187   Maxusers limit number: Number of users that can be connected to BNC
188     at the same time, 0 means unlimited.
189   Password:  An optional password required for an user to be able to
190     use the proxy daemon.
191
192   S:Password
193
194   Password:  A required Password for a normal user to become an admin
195     through use to the pre-connect command /quote MAIN (pass).
196     it is best to make the Supervisor pass and the listening pass be
197     two seperate passes.
198
199
200   All the other directives can be best represented within the
201   example.conf file included with current versions of BNC, and are
202   beyond the scope of this document.  Please take time to read the
203   config file and all included documentation before requesting new
204   features.
205
206   Also note that after you compile bnc you can use ./bncsetup to create
207   .conf files for you
208
209
210
211
212
213
214
215
216
217
218
219
220James Seter                                                     [PAGE 4]
221
222BNC                             IRC Proxy Daemon              April 1998
223
224
2253.1 ON-THE-FLY configuration commands
226
227   BNC includes raw level commands for control during the connection
228   phase.  After the connection password argument has been suceeded and
229   the RFC required NICK and USER (should be provided by the client) are
230   all satisfied, the proxy is in a Limbo stage where as certain
231   configuration commands can be issued to change various options.
232
233   If the client cannot handle the command as just /COMMAND then issue the
234   command as /QUOTE COMMAND or /RAW COMMAND or as the documentation of the
235   client specifies to send directly to a server.
236
237   Syntax is in argument form as <REQUIRED> [optional]
238
239   Commands are as follows:
240
241   Normal users commands
242   ---------------------
243   PASS PASSWORD[:SERVER:PORT:SERVERPASS]
244     Some clients such as Mirc allows you to type /server blah password
245     pass is a feature that allows you to autoconnect to a real server
246     without using CONN inside the pass command.
247     /server irc.blah   password:irc.irc.com:6668
248   CONN <server address> [port] [pass]
249     This will initialize a connection to the real irc server and begin
250     the two-way communication between you and the real irc server,
251     ending the bnc command session.
252   DOCK <password>
253     This will dock the current session to the background, closing your
254     client if keepalive is off.
255   RESUME <session> <password>
256     This will resume a docked session.  If the server closes on a docked
257     session, it will no longer be resumable.
258   KEEPALIVE
259     turns on the keepalive function, instead of killing your connection
260     when irc dies it resumes to BNC server mode.
261   VIP [new virtual host]
262     Issuing VIP alone will list all the V lines included in the
263     configuration file.  These lines are not required to use an address
264     and are only there for reference.  VIP with an argument will change
265     the address that BNC will attempt to connect to irc with.
266   VDF
267     Issuing this command will restore the vhost to the address specified
268     on the X line of the connfiguration file, or if that line is absent,
269     restore it to the system default.
270   VN
271     This command will change the vhost to the system default, bypassing
272     the X line of that configuration file.
273   MAIN <Supervisor password>
274     Sucessful usage of this command will allow one to use the Admin
275     level commands.
276   Admin level commands
277   --------------------
278   BWHO
279     This command will list the login time nick, and the File descripter
280     number for all current fully logged on users (meaning the user has
281     to of used the CONN command and be on IRC.
282   BKILL <FD>
283     This command will kill the user who's FD matches the argument.
284   DIE
285     This command is not fully functional, but will kill all users and
286     end the daemons running process.
287   BDIE
288     This command is more friend version of DIE.
289   BMSG
290     Experimental inter-bnc chat.
291
292James Seter                                                     [PAGE 5]
293
294BNC                             IRC Proxy Daemon              April 1998
295
296
297  LISTHOST
298     Lists IP's allowed to use BNC.
299  ADDHOST <number (usually 1)> <wildcard IP>
300     Adds an IP to use bnc.
301
3024.  SETTING UP CRONTAB
303
304   BNC includes a script called bncchk that uses the pid file created by
305   the BNC executable to determine if it is executing. The bncchk file
306   needs to be edited and the proper lines modified:
307
308   BNCBIN=bnc
309   BNCPIDFILE=pid.bnc
310   BNCPATH=/home/bnc/bnc2.2.7
311
312   The name of the varible basically tells it all.
313
314   Inside the crontab should be the line:
315
316   0,10,20,30,40,50 * * * * /home/myself/bncchk >/dev/null 2>&1
317
318   Modify the path to the bncchk file.  This line will check to see if
319   bnc is running every 10 minutes, and if it is not running, will
320   attempt to restart BNC with the information provided by the varibles
321   in the bncchk file.
322
3235.  CREDITS
324
325	James Seter (Pharos) ....................: Pharos@gotbnc.com
326          Author of the program.
327        Brian Mitchell (Halflife) ...............: ??
328          One helluva good coder, coded the original base that was used
329          in pre 2.2.8 editions, without him, I may of never learned
330          sockets.
331	Unknown (White_dragon) ..................: WD@DAL.net
332          Ideas. Lots of patches. Major advancements to BNC.
333        Unknown (Volatile) ......................: vol@sekurity.org
334          Help on Bind and other socket protection
335        Unknown (Barubary) ......................: ??
336          Helped on fifo system
337        Unknown (IceWizard) .....................: ice@walt-disney.com
338          Very suggestive and helpfull person, wrote original ./bncsetup
339	James Nonnemaker (Postal Phreak) ........: Postal_Phreak@dal.net
340          Win95 Port/Suggestions
341        Unknown (dopey) .........................: doughpee@usa.net
342          example.conf reorganization and suggestions
343        Unknown (Y0SHi) .........................: yoshi@skipnet.com
344          Provided me with SunOS access for porting purposes.
345	Jason F. Aristide III (PurpleMotion) ....: PurpleMotion@DAL.net
346          Suggestions, Documents and example scripts.
347
348   Anybody else who sent me bug errors or suggestions, Thanks everybody.
349
3506.  THE GNU WAY
351
352   The GNU license can be found in the file COPYING included with this
353   distribuition.  Please read that file for a complete description of
354   your rights as a user.
355
356
357James Seter                                                     [PAGE 6]
358
359