]> arthur.barton.de Git - ngircd-alex.git/blob - doc/sample-ngircd.conf
Enhanced documentation. Use "default" port 6667 in the example for server links.
[ngircd-alex.git] / doc / sample-ngircd.conf
1 # $Id: sample-ngircd.conf,v 1.36 2006/01/09 11:03:35 alex Exp $
2
3 #
4 # This is a sample configuration file for the ngIRCd, which must be adepted
5 # to the local preferences and needs.
6 #
7 # Comments are started with "#" or ";".
8 #
9 # Use "ngircd --configtest" (see manual page ngircd(8)) to validate that the
10 # server interpreted the configuration file as expected!
11 #
12
13 [Global]
14         # The [Global] section of this file is used to define the main
15         # configuration of the server, like the server name and the ports
16         # on which the server should be listening.
17         
18         # Server name in the IRC network, must contain at least one dot
19         # (".") and be unique in the IRC network. Required!
20         Name = irc.the.net
21         
22         # Info text of the server. This will be shown by WHOIS and
23         # LINKS requests for example.
24         Info = Server Info Text
25
26         # Global password for all users needed to connect to the server
27         ;Password = abc
28         
29         # Information about the server and the administrator, used by the
30         # ADMIN command. Not required by server but by RFC!
31         ;AdminInfo1 = Description
32         ;AdminInfo2 = Location
33         ;AdminEMail = admin@irc.server
34  
35         # Ports on which the server should listen. There may be more than
36         # one port, separated with ",". (Default: 6667)
37         ;Ports = 6667, 6668, 6669
38
39         # IP address on which the server should listen. (Default: empty,
40         # so the server listens on all IP addresses of the system)
41         ;Listen = 1.2.3.4
42         
43         # Text file with the "message of the day" (MOTD). This message will
44         # be shown to all users connecting to the server:
45         ;MotdFile = /usr/local/etc/ngircd.motd
46
47         # A simple Phrase (<256 chars) if you don't want to use a motd file.
48         # If it is set no MotdFile will be read at all.
49         ;MotdPhrase = "Hello world!"
50
51         # User ID under which the server should run; you can use the name
52         # of the user or the numerical ID. ATTENTION: For this to work the
53         # server must have been started with root privileges! In addition,
54         # the configuration and MOTD files must be readable by this user,
55         # otherwise RESTART and REHASH won't work!
56         ;ServerUID = 65534
57
58         # Group ID under which the ngircd should run; you can use the name
59         # of the group or the numerical ID. ATTENTION: For this to work the
60         # server must have been started with root privileges!
61         ;ServerGID = 65534
62
63         # A directory to chroot in when everything is initialized. It
64         # doesn't need to be populated if ngIRCd is compiled as a static
65         # binary. By default ngIRCd won't use the chroot() feature.
66         # ATTENTION: For this to work the server must have been started
67         # with root privileges!
68         ;ChrootDir = /var/empty
69
70         # This tells ngircd to write its current process id to a file.
71         # Note that the pidfile is written AFTER chroot and switching uid,
72         # i. e. the Directory the pidfile resides in must be writeable by
73         # the ngircd user and exist in the chroot directory.
74         ;PidFile = /var/run/ngircd/ngircd.pid
75
76         # After <PingTimeout> seconds of inactivity the server will send a
77         # PING to the peer to test whether it is alive or not.
78         ;PingTimeout = 120
79
80         # If a client fails to answer a PING with a PONG within <PongTimeout>
81         # seconds, it will be disconnected by the server.
82         ;PongTimeout = 20
83
84         # The server tries every <ConnectRetry> seconds to establish a link
85         # to not yet (or no longer) connected servers.
86         ;ConnectRetry = 60
87
88         # Should IRC Operators be allowed to use the MODE command even if
89         # they are not(!) channel-operators?
90         ;OperCanUseMode = no
91
92         # Mask IRC Operator mode requests as if they were coming from the
93         # server? (This is a compatibility hack for ircd-irc2 servers)
94         ;OperServerMode = no
95         
96         # Maximum number of simultaneous connection the server is allowed
97         # to accept (<=0: unlimited):
98         ;MaxConnections = -1
99         
100         # Maximum number of simultaneous connections from a single IP address
101         # the server will accept (<=0: unlimited):
102         ;MaxConnectionsIP = 5
103
104         # Maximum number of channels a user can be member of (<=0: no limit):
105         ;MaxJoins = 10
106
107 [Operator]
108         # [Operator] sections are used to define IRC Operators. There may be
109         # more than one [Operator] block, one for each local operator.
110         
111         # ID of the operator (may be different of the nick name)
112         ;Name = TheOper
113
114         # Password of the IRC operator
115         ;Password = ThePwd
116
117         # Optional Mask from which /OPER will be accepted
118         ;Mask = *!ident@somewhere.example.com
119
120 [Operator]
121         # More [Operator] sections, if you like ...
122
123 [Server]
124         # Other servers are configured in [Server] sections. If you
125         # configure a port for the connection, then this ngircd tries to
126         # connect to to the other server on the given port; if not it waits
127         # for the other server to connect.
128         # There may be more than one server block.
129         #
130         # Server Groups:
131         # The ngIRCd allows "server groups": You can assign an "ID" to every
132         # server with which you want this ngIRCd to link. If a server of a
133         # group won't answer, the ngIRCd tries to connect to the next server
134         # in the given group. But the ngircd never tries to connect to two
135         # servers with the same group ID.
136         
137         # IRC name of the remote server, must match the "Name" variable in
138         # the [Global] section of the other server (when using ngIRCd).
139         ;Name = irc2.the.net
140    
141         # Internet host name or IP address of the peer (only required when
142         # this server should establish the connection).
143         ;Host = connect-to-host.the.net
144
145         # Port of the server to which the ngIRCd should connect. If you
146         # assign no port the ngIRCd waits for incoming connections.
147         ;Port = 6667
148
149         # Own password for the connection. This password has to be configured
150         # as "PeerPassword" on the other server.
151         ;MyPassword = MySecret
152
153         # Foreign password for this connection. This password has to be
154         # configured as "MyPassword" on the other server.
155         ;PeerPassword = PeerSecret
156         
157         # Group of this server (optional)
158         ;Group = 123
159
160 [Server]
161         # More [Server] sections, if you like ...
162
163 [Channel]
164         # Pre-defined channels can be configured in [Channel] sections.
165         # Such channels are created by the server when starting up and even
166         # persist when there are no more members left.
167         # Persistent channels are marked with the mode 'P', which can be set
168         # and unset by IRC operators like other modes on the fly.
169         # There may be more than one [Channel] block.
170         
171         # Name of the channel
172         ;Name = #TheName
173
174         # Topic for this channel
175         ;Topic = a great topic
176         
177         # Initial channel modes
178         ;Modes = tn
179
180 [Channel]
181         # More [Channel] sections, if you like ...
182
183 # -eof-