ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/hopm/trunk/README
(Generate patch)

Comparing hopm/trunk/README (file contents):
Revision 5052 by michael, Mon Dec 22 11:56:03 2014 UTC vs.
Revision 6521 by michael, Mon Sep 7 18:19:27 2015 UTC

# Line 1 | Line 1
1   Introduction
2   ------------
3  
4 < BOPM (Blitzed Open Proxy Monitor) is an open proxy monitoring bot designed for
5 < Bahamut and Hybrid based ircds.  The bot is designed to monitor an individual
6 < server (all servers on the network have to run their own bot) with a local o:
7 < line and monitor connections.  When a client connects to the server, BOPM will
8 < scan the connection for insecure proxies.  Insecure proxies are determined by
9 < attempting to connect the proxy back to another host (usually the IRC server in
10 < question).
4 > HOPM (Hybrid Open Proxy Monitor) is an open proxy monitoring bot designed to
5 > monitor an individual server (all servers on the network have to run their own
6 > bot if the IRCD doesn't support 'farconnect' user mode) with a local
7 > operator {} block and monitor connections. When a client connects to a server,
8 > HOPM will scan the connection for insecure proxies. Insecure proxies are
9 > determined by attempting to connect the proxy back to another host (usually the
10 > IRC server in question).
11  
12 < BOPM is written ground-up in C language, concept derived from wgmon.  It
12 > HOPM is written ground-up in C language and it is an improved fork of BOPM
13 > (blitzed open proxy monitor) which is a concept derived from wgmon. It
14   improves on wgmon with HTTP support, faster scanning (it can scan clients
15 < simultaneously), better layout (scalability), and dnsbl support.
15 > simultaneously), better layout (scalability), and DNSBL support.
16  
17  
18   Requirements
19   ------------
20  
21 < o An IRCd which presents connection notices in a format which BOPM
21 > o An IRCD which presents connection notices in a format which HOPM
22    recognises (see below).
23  
24 < o A host with full connectivity for all the ports you wish to scan.  i.e. is
24 > o A host with full connectivity for all the ports you wish to scan. i.e. is
25    NOT transparently proxied -- many domestic internet connections have port 80
26    transparently proxied and this produces completely unpredictable results,
27    sometimes as severe as 100% of clients being K:lined!
28  
29 < o A unix OS with GNU Make, an ANSI C compiler, etc..  BOPM probably does
29 <  compile and work on win32 under cygwin, but we won't support it.
29 > o A unix OS with GNU Make, a C99 compiler, etc..
30  
31   o Permission from your users to portscan them for open proxies.
32  
# Line 34 | Line 34 | o Permission from your users to portscan
34   Compatibility
35   -------------
36  
37 < Bahamut (tested with 1.4.28 -> 1.4.34)
38 < Hybrid (tested with 2.8/hybrid-5.3p8, ircd-hybrid-6.3 and ircd-hybrid-7)
39 < Unreal (tested with 3.1.2 and 3.2)
40 < Dancer (tested with 1.0.31)
41 < Ultimate IRCD (tested with UltimateIRCd(Tsunami)-3.0(00).a22) - please
42 < note, earlier versions of Ultimate IRCD are *not* supported
43 <
44 < BOPM is designed for the Bahamut and Hybrid IRCds.   It is easily
45 < suitable for any other ircd with little modification (connregex in bopm.conf).
46 < However, if an ircd does not send IP's in a connection notice (bahamut sends
47 < [IP]), BOPM will not be effective because the time it takes to resolve a
48 < hostname would be a significant factor to BOPM's efficiency.
49 <
50 < If you want to use BOPM but you don't think your ircd supports it then please
51 < contact us.  As long as source is available for your ircd then we can almost
52 < certainly make BOPM work with it.
53 <
54 < Any questions regarding compatibility should be sent to the developers. If
55 < feasible we might be able to add compatibility to multiple ircd types to the
56 < project in the future.
37 > ircd-hybrid 8.2.x
38 > ircd-ratbox 3.0.x
39 > ircu 2.10.x
40 > InspIRCd 2.0.x
41 > UnrealIRCd 3.2.x
42 > ngIRCd 22
43 > Bahamut 2.0.x
44 > Charybdis 3.4.x
45 >
46 > HOPM is easily suitable for any other IRCD with little modification (connregex
47 > in hopm.conf). However, if an IRCD does not send IP addresses in a connection
48 > notice, HOPM will not work.
49  
50  
51   Command Line Options
52   --------------------
53  
54 < -c <name>       Config name.  By default BOPM reads bopm.conf, "-c foo"
55 <                will cause BOPM to read foo.conf.  The primary use for
56 <                this is to run multiple BOPMs from one directory.
54 > -c <name>       Config name. By default HOPM reads hopm.conf, "-c foo"
55 >                will cause HOPM to read foo.conf. The primary use for
56 >                this is to run multiple HOPMs from one directory.
57  
58 < -d              Debug mode.  BOPM will not fork, and will write logs to stderr.
59 <                Multiple -d increase debug level.
58 > -d              Debug mode. HOPM will not fork, and will write logs to stderr.
59 >                Multiple -d increase debug level.
60  
61  
62   Operator Channel Commands
63   -------------------------
64  
65   botnick check <host> [scanner]  -- Manually scan host for insecure proxies and output all errors.
66 <                                   If scanner is not given, bopm will scan on all scanners.
66 >                                   If scanner is not given, HOPM will scan on all scanners.
67                                     NOTE: this will NOT add a kline (or whatever) if it finds a
68 <                                   proxy.  This is a change from 2.x.
68 >                                   proxy.
69  
70   botnick stats                   -- Output scan stats, uptime and client connection count.
71  
72 < botnick fdstat                  -- Output some into about file descriptors in use.
72 > botnick fdstat                  -- Output some info about file descriptors in use.
73  
74 < Also if several BOPMs are present in one channel they will all respond to !all,
75 < for example !all stats (fixed in BOPM 3.1.0).
74 > Also if several HOPMs are present in one channel they will all respond to !all,
75 > for example !all stats.
76  
77  
78 < Rehashing BOPM
78 > Rehashing HOPM
79   --------------
80  
81 < A /kill to bopm will cause the process to restart, rehashing the configuration file
82 < and ending all queued scans.
81 > A /quote KILL to HOPM will cause the process to restart, rehashing the
82 > configuration file and ending all queued scans.
83  
84  
85   Logging
86   -------
87  
88 < Once started, BOPM logs all significant events to a file called "bopm.log"
89 < which by default can be found at $HOME/bopm/var/bopm.log.  There is also a
88 > Once started, HOPM logs all significant events to a file called "hopm.log"
89 > which by default can be found at $HOME/hopm/var/hopm.log. There is also a
90   config option to log all proxy scans initiated, which can be quite useful if
91   you receive an abuse report related to portscanning.
92  
93 < These log files, especially the scan log, can grow quite large.  It is
94 < suggested that you arrange for these files to be rotated periodically.  An
95 < example shell script is provided in the contrib/logrotate directory.  If you
93 > These log files, especially the scan log, can grow quite large. It is
94 > suggested that you arrange for these files to be rotated periodically. An
95 > example shell script is provided in the contrib/logrotate directory. If you
96   prefer to use the log rotation facilities of your operating system then you
97 < should send a USR1 signal to BOPM after moving its logfiles - this will cause
98 < BOPM to reopen those files.
97 > should send a USR1 signal to HOPM after moving its logfiles - this will cause
98 > HOPM to reopen those files.
99  
100  
101   Support
102   -------
103  
104 < BOPM has a mailing list for general discussion and announcements.  CVS
105 < commit emails are also sent there and that is also the place to mail your
106 < patches (unless they are massive, in which case just post a URL).  You can
107 < subscribe to this list from:
116 <
117 <  http://lists.blitzed.org/listinfo/bopm
118 <
119 < Also check if your question is answered on the BOPM FAQ:
120 <
121 <  http://blitzed.org/bopm/faq.phtml
122 <
123 < No IRC support currently exists for BOPM.  If you would like to run such a
124 < support channel, please let us know so that we can list it here.
125 <
126 <
127 < Compatibility Notes
128 < -------------------
129 <
130 < o Unreal Ircd
131 <
132 <  For *older* versions of Unreal to work,  patches to fix the HCN connect
133 <  notices (found at http://www.blitzed.org/files/) must be applied.
134 <
135 <  Unreal 3.1.3 seems to require opers to be global if they are to see
136 <  connection notices.
137 <    -- prince@avalon.zirc.org
138 <
139 <  Later versions of Unreal require different user modes to be set on BOPM for
140 <  it to see connection notices.  You will need to use
141 <
142 <      mode = "+sc";
143 <
144 <  in your bopm.conf.  Also later versions of Unreal no longer require patching
145 <  as described above.
146 <   -- prince@avalon.zirc.org
147 <
148 < o IRCu
149 <
150 <  IRCu does not present a banner to clients when they connect, so
151 <  target_string, target_ip and target_port must use some other service besides
152 <  ircd.  For those with root access to their servers, the following inetd.conf
153 <  example is an easy fix for this:
154 <
155 <  # BOPM proxy check string
156 <  16667 stream  tcp nowait nobody /bin/echo echo Open Proxy Check
157 <
158 <  target_string can then be set to "Open Proxy Check", and target_ip/target_port
159 <  set to your IP and port 16667.
160 <
161 <  If you don't want to do the above, you could use any other service on
162 <  your machine that presents a banner.  We would recommend against using
163 <  port 25 because it is common for providers to transparently proxy port
164 <  25.
165 <
166 <  Also, to see connect notices, your bopm should set itself umode "+s +16384".
167 <  There is a config file item for setting umodes.
168 <
169 <
170 < Credits
171 < -------
172 <
173 < Please see the CREDITS file.
104 >  * Bug Reports:
105 >    - bugs@ircd-hybrid.org
106 >  * IRC contact:
107 >    - #ircd-coders on irc.ircd-hybrid.org

Comparing hopm/trunk/README (property svn:eol-style):
Revision 5052 by michael, Mon Dec 22 11:56:03 2014 UTC vs.
Revision 6521 by michael, Mon Sep 7 18:19:27 2015 UTC

# Line 0 | Line 1
1 + native

Comparing hopm/trunk/README (property svn:keywords):
Revision 5052 by michael, Mon Dec 22 11:56:03 2014 UTC vs.
Revision 6521 by michael, Mon Sep 7 18:19:27 2015 UTC

# Line 0 | Line 1
1 + Id

Diff Legend

Removed lines
+ Added lines
< Changed lines (old)
> Changed lines (new)