ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/doc/kline.txt
Revision: 1028
Committed: Sun Nov 8 13:03:38 2009 UTC (16 years, 8 months ago) by michael
Content type: text/plain
Original Path: ircd-hybrid/doc/kline.txt
File size: 3243 byte(s)
Log Message:
- move ircd-hybrid-7.2 to trunk

File Contents

# User Rev Content
1 adx 30 /* doc/kline.txt - Overview of the remote kline system
2     *
3     * Copyright (C) 2005 Hybrid Development Team
4     *
5 knight 31 * $Id$
6 adx 30 */
7    
8    
9     Introduction
10     ------------
11    
12     ircd-hybrid-7 will allow opers to add and remove K-Lines on multiple servers,
13     an extension and replacement of the old ircd-hybrid-6 method of sharing
14     all K-Lines between servers.
15    
16     In this implementation, it is extended to be routable among servers which
17     understand the "KLN" capability. This allows us to continue to "talk"
18     to non remote kline capable servers without breaking anything.
19    
20 michael 410 K-Lines have also received a new feature of supporting regular expressions
21 adx 30 to allow for more flexible bans.
22    
23     Usage
24     -----
25    
26     The old K-Line method has not been changed. To place a K-Line it is still:
27    
28     /quote kline <nick|user@host> :reason
29     /quote kline [tkline_duration] <nick|user@host> :reason
30    
31     Scenario 1
32     ----------
33    
34     Oper wishes to K-Line user@host on server irc.xyz.net
35    
36     /quote kline <nick|user@host> on irc.xyz.net :reason
37     /quote kline [duration] <nick|user@host> on irc.xyz.net :reason
38    
39     Scenario 2
40     ----------
41    
42     Oper wishes to K-Line user@host on all servers named *.uk
43    
44     /quote kline <nick|user@host> on *.uk :reason
45     /quote kline [duration] <nick|user@host> on *.uk :reason
46    
47     Scenario 3
48     ----------
49    
50     Oper wishes to place a network wide K-Line on user@host
51    
52     /quote kline <nick|user@host> on * :reason
53     /quote kline [duration] <nick|user@host> on * :reason
54    
55     Scenario 4
56     ----------
57    
58     Oper wishes to K-Line a flexible ban on various user@host types
59    
60     /quote rkline ^O[[:alpha:]]?[[:digit:]]+(x\.o|\.xo)$@^[[:alnum:]]{4}\.evilnet.org$ :reason
61    
62     Authorization
63     -------------
64    
65     For the K-Line to be accepted by the remote server, the server must have
66     explicitly allowed K-Lines from that user. This is done via a shared {};
67     block in ircd.conf.
68    
69     The shared block contains two settings, a user@host mask of the oper
70     who is allowed to K-Line, and a servername.
71    
72     - If both of these options are present, K-Lines will only be allowed
73     from that specific user@host on that specific server.
74     - If only the servername is present, all K-Lines from opers on that
75     server will be accepted.
76     - If only the user@host is present, all K-Lines from that user@host on
77     any server will be accepted.
78     - If neither are present, the shared block is invalid.
79    
80     shared {
81     /* The name of the server we allow K-Lines from */
82     name = "this.server.net";
83    
84     /* the user@host allowed to K-Line */
85     user = "user@host.com";
86     };
87    
88     Server to Server Protocol
89     -------------------------
90    
91     As mentioned above, each server capable of remote K-Lines passes
92     the capability KLN along. No server will send a KLINE to a server
93     without a KLN capability.
94    
95     Server to server messages are formatted like this:
96    
97     ":oper KLINE target.server duration user host :reason"
98    
99     Note the difference between hybrid-6 GLINE which explicitly passed
100     the oper user@host and server along. This was originally done to handle
101     possible desync conditions, but is now shelved in favor of saving
102     some bandwidth.
103    
104     oper: the nick of the oper performing the K-Line
105     target.server: the server(s) this K-Line is destined for
106     duration: the duration if a TK-Line, 0 if permanent.
107     user: the 'user' portion of the K-Line
108     host: the 'host' portion of the K-Line
109     reason: the reason for the K-Line.

Properties

Name Value
svn:eol-style native
svn:keywords Id Revision