Blame


1 f6ce2d55 2006-12-25 alex .\"
2 82d32ffb 2007-11-23 fw .\" $Id: ngircd.conf.5.tmpl,v 1.7 2007/11/23 16:26:03 fw Exp $
3 f6ce2d55 2006-12-25 alex .\"
4 d02b0835 2008-05-13 alex .TH ngircd.conf 5 "May 2008" ngircd "ngIRCd Manual"
5 f6ce2d55 2006-12-25 alex .SH NAME
6 f6ce2d55 2006-12-25 alex ngircd.conf \- configuration file of ngIRCd
7 f6ce2d55 2006-12-25 alex .SH SYNOPSIS
8 f6ce2d55 2006-12-25 alex .B :ETCDIR:/ngircd.conf
9 f6ce2d55 2006-12-25 alex .SH DESCRIPTION
10 f6ce2d55 2006-12-25 alex .BR ngircd.conf
11 f6ce2d55 2006-12-25 alex is the configuration file of the
12 f6ce2d55 2006-12-25 alex .BR ngircd (8)
13 f6ce2d55 2006-12-25 alex Internet Relay Chat (IRC) daemon which you should adept to your local
14 f6ce2d55 2006-12-25 alex preferences and needs.
15 f6ce2d55 2006-12-25 alex .SH "FILE FORMAT"
16 f6ce2d55 2006-12-25 alex The file consists of sections and parameters. A section begins with the name
17 f6ce2d55 2006-12-25 alex of the section in square brackets and continues until the next section
18 f6ce2d55 2006-12-25 alex begins.
19 f6ce2d55 2006-12-25 alex .PP
20 f6ce2d55 2006-12-25 alex Sections contain parameters of the form
21 f6ce2d55 2006-12-25 alex .PP
22 f6ce2d55 2006-12-25 alex .RS
23 f6ce2d55 2006-12-25 alex .I name
24 f6ce2d55 2006-12-25 alex =
25 f6ce2d55 2006-12-25 alex .I value
26 f6ce2d55 2006-12-25 alex .RE
27 f6ce2d55 2006-12-25 alex .PP
28 f6ce2d55 2006-12-25 alex Empty lines and any line beginning with a semicolon (';') or a hash ('#')
29 d02b0835 2008-05-13 alex character are treated as a comment and will be ignored. Leading and trailing
30 d02b0835 2008-05-13 alex whitespaces are trimmed before any processing takes place.
31 f6ce2d55 2006-12-25 alex .PP
32 d02b0835 2008-05-13 alex The file format is line-based - that means, each non-empty newline-terminated
33 d02b0835 2008-05-13 alex line represents either a comment, a section name, or a parameter.
34 f6ce2d55 2006-12-25 alex .PP
35 f6ce2d55 2006-12-25 alex Section and parameter names are not case sensitive.
36 f6ce2d55 2006-12-25 alex .SH "SECTION OVERVIEW"
37 f6ce2d55 2006-12-25 alex The file can contain blocks of four types: [Global], [Operator], [Server],
38 f6ce2d55 2006-12-25 alex and [Channel].
39 f6ce2d55 2006-12-25 alex .PP
40 d02b0835 2008-05-13 alex The main configuration of the server is stored in the
41 f6ce2d55 2006-12-25 alex .I [Global]
42 d02b0835 2008-05-13 alex section, like the server name, administrative information and the
43 f6ce2d55 2006-12-25 alex ports on which the server should be listening. IRC operators of this
44 f6ce2d55 2006-12-25 alex server are defined in
45 f6ce2d55 2006-12-25 alex .I [Operator]
46 f6ce2d55 2006-12-25 alex blocks.
47 f6ce2d55 2006-12-25 alex .I [Server]
48 f6ce2d55 2006-12-25 alex is the section where server links are configured. And
49 f6ce2d55 2006-12-25 alex .I [Channel]
50 f6ce2d55 2006-12-25 alex blocks are used to configure pre-defined ("persistent") IRC channels.
51 f6ce2d55 2006-12-25 alex .PP
52 f6ce2d55 2006-12-25 alex There can be more than one [Operator], [Server] and [Channel] sections
53 f6ce2d55 2006-12-25 alex per configuration file, but only one [Global] section.
54 f6ce2d55 2006-12-25 alex .SH [GLOBAL]
55 f6ce2d55 2006-12-25 alex The
56 f6ce2d55 2006-12-25 alex .I [Global]
57 f6ce2d55 2006-12-25 alex section is used to define the server main configuration, like the server
58 f6ce2d55 2006-12-25 alex name and the ports on which the server should be listening.
59 f6ce2d55 2006-12-25 alex .TP
60 f6ce2d55 2006-12-25 alex \fBName\fR
61 d02b0835 2008-05-13 alex Server name in the IRC network, must contain at least one dot (".").
62 f6ce2d55 2006-12-25 alex .TP
63 f6ce2d55 2006-12-25 alex \fBInfo\fR
64 f6ce2d55 2006-12-25 alex Info text of the server. This will be shown by WHOIS and LINKS requests for
65 f6ce2d55 2006-12-25 alex example.
66 f6ce2d55 2006-12-25 alex .TP
67 f6ce2d55 2006-12-25 alex \fBAdminInfo1\fR, \fBAdminInfo2\fR, \fBAdminEMail\fR
68 f6ce2d55 2006-12-25 alex Information about the server and the administrator, used by the ADMIN
69 f6ce2d55 2006-12-25 alex command.
70 f6ce2d55 2006-12-25 alex .TP
71 f6ce2d55 2006-12-25 alex \fBPorts\fR
72 f6ce2d55 2006-12-25 alex Ports on which the server should listen. There may be more than one port,
73 f6ce2d55 2006-12-25 alex separated with ','. Default: 6667.
74 f6ce2d55 2006-12-25 alex .TP
75 ebf5edfd 2008-09-13 fw \fBSSLPorts\fR
76 ebf5edfd 2008-09-13 fw Same as \fBPorts\fR , except that ngircd will expect incoming connections
77 ebf5edfd 2008-09-13 fw to be SSL/TLS encrypted. Default: None
78 ebf5edfd 2008-09-13 fw .TP
79 ebf5edfd 2008-09-13 fw \fBSSLKeyFile\fR
80 ebf5edfd 2008-09-13 fw Filename of SSL Server Key to be used for SSL connections. This is required for
81 ebf5edfd 2008-09-13 fw SSL/TLS support.
82 ebf5edfd 2008-09-13 fw .TP
83 ebf5edfd 2008-09-13 fw \fBSSLKeyFilePassword\fR
84 ebf5edfd 2008-09-13 fw (OpenSSL only:) Password to decrypt private key.
85 ebf5edfd 2008-09-13 fw .TP
86 ebf5edfd 2008-09-13 fw \fBSSLCertFile\fR
87 ebf5edfd 2008-09-13 fw Certificate of the private key
88 ebf5edfd 2008-09-13 fw .TP
89 ebf5edfd 2008-09-13 fw \fBSSLDHFile\fR
90 ebf5edfd 2008-09-13 fw Name of the Diffie-Hellman Parameter file. Can be created with gnutls "certtool --generate-dh-params" or "openssl dhparam".
91 ebf5edfd 2008-09-13 fw If this file is not present, it will be generated on startup when ngircd
92 ebf5edfd 2008-09-13 fw was compiled with gnutls support (this may take some time). If ngircd
93 ebf5edfd 2008-09-13 fw was compiled with OpenSSL, then (Ephemeral)-Diffie-Hellman Key Exchanges and several
94 ebf5edfd 2008-09-13 fw Cipher Suites will not be available.
95 ebf5edfd 2008-09-13 fw .TP
96 f6ce2d55 2006-12-25 alex \fBListen\fR
97 4ed2cb1a 2008-05-19 fw A comma seperated list of IP address on which the server should listen.
98 4ed2cb1a 2008-05-19 fw If unset, the defaults value is "0.0.0.0", or, if ngircd was compiled
99 4ed2cb1a 2008-05-19 fw with IPv6 support, "::,0.0.0.0", so the server listens on all configured
100 4ed2cb1a 2008-05-19 fw IP addresses and interfaces by default.
101 f6ce2d55 2006-12-25 alex .TP
102 f6ce2d55 2006-12-25 alex \fBMotdFile\fR
103 f6ce2d55 2006-12-25 alex Text file with the "message of the day" (MOTD). This message will be shown
104 f6ce2d55 2006-12-25 alex to all users connecting to the server.
105 f6ce2d55 2006-12-25 alex .TP
106 f6ce2d55 2006-12-25 alex \fBMotdPhrase\fR
107 f6ce2d55 2006-12-25 alex A simple Phrase (<256 chars) if you don't want to use a MOTD file.
108 d02b0835 2008-05-13 alex If it is set no MotdFile will be read at all which can be handy if the
109 d02b0835 2008-05-13 alex daemon should run inside a chroot directory.
110 f6ce2d55 2006-12-25 alex .TP
111 f6ce2d55 2006-12-25 alex \fBServerUID\fR
112 f6ce2d55 2006-12-25 alex User ID under which the server should run; you can use the name of the user
113 f6ce2d55 2006-12-25 alex or the numerical ID.
114 f6ce2d55 2006-12-25 alex .PP
115 f6ce2d55 2006-12-25 alex .RS
116 f6ce2d55 2006-12-25 alex .B Attention:
117 f6ce2d55 2006-12-25 alex .br
118 f6ce2d55 2006-12-25 alex For this to work the server must have been
119 f6ce2d55 2006-12-25 alex started with root privileges! In addition, the configuration and MOTD files
120 f6ce2d55 2006-12-25 alex must be readable by this user, otherwise RESTART and REHASH won't work!
121 f6ce2d55 2006-12-25 alex .RE
122 f6ce2d55 2006-12-25 alex .TP
123 f6ce2d55 2006-12-25 alex \fBServerGID\fR
124 f6ce2d55 2006-12-25 alex Group ID under which the ngIRCd should run; you can use the name of the
125 f6ce2d55 2006-12-25 alex group or the numerical ID.
126 f6ce2d55 2006-12-25 alex .PP
127 f6ce2d55 2006-12-25 alex .RS
128 f6ce2d55 2006-12-25 alex .B Attention:
129 f6ce2d55 2006-12-25 alex .br
130 f6ce2d55 2006-12-25 alex For this to work the server must have
131 f6ce2d55 2006-12-25 alex been started with root privileges!
132 f6ce2d55 2006-12-25 alex .RE
133 f6ce2d55 2006-12-25 alex .TP
134 f6ce2d55 2006-12-25 alex \fBChrootDir\fR
135 f6ce2d55 2006-12-25 alex A directory to chroot in when everything is initialized. It doesn't need
136 f6ce2d55 2006-12-25 alex to be populated if ngIRCd is compiled as a static binary. By default ngIRCd
137 f6ce2d55 2006-12-25 alex won't use the chroot() feature.
138 f6ce2d55 2006-12-25 alex .PP
139 f6ce2d55 2006-12-25 alex .RS
140 f6ce2d55 2006-12-25 alex .B Attention:
141 f6ce2d55 2006-12-25 alex .br
142 f6ce2d55 2006-12-25 alex For this to work the server must have
143 f6ce2d55 2006-12-25 alex been started with root privileges!
144 f6ce2d55 2006-12-25 alex .RE
145 f6ce2d55 2006-12-25 alex .TP
146 f6ce2d55 2006-12-25 alex \fBPidFile\fR
147 f6ce2d55 2006-12-25 alex This tells ngIRCd to write its current process ID to a file. Note that the
148 f6ce2d55 2006-12-25 alex pidfile is written AFTER chroot and switching the user ID, i. e. the
149 f6ce2d55 2006-12-25 alex directory the pidfile resides in must be writeable by the ngIRCd user and
150 f6ce2d55 2006-12-25 alex exist in the chroot directory (if configured, see above).
151 f6ce2d55 2006-12-25 alex .RE
152 f6ce2d55 2006-12-25 alex .TP
153 f6ce2d55 2006-12-25 alex \fBPingTimeout\fR
154 f6ce2d55 2006-12-25 alex After <PingTimeout> seconds of inactivity the server will send a PING to
155 f6ce2d55 2006-12-25 alex the peer to test whether it is alive or not. Default: 120.
156 f6ce2d55 2006-12-25 alex .TP
157 f6ce2d55 2006-12-25 alex \fBPongTimeout\fR
158 f6ce2d55 2006-12-25 alex If a client fails to answer a PING with a PONG within <PongTimeout>
159 f6ce2d55 2006-12-25 alex seconds, it will be disconnected by the server. Default: 20.
160 f6ce2d55 2006-12-25 alex .TP
161 f6ce2d55 2006-12-25 alex \fBConnectRetry\fR
162 f6ce2d55 2006-12-25 alex The server tries every <ConnectRetry> seconds to establish a link to not yet
163 f6ce2d55 2006-12-25 alex (or no longer) connected servers. Default: 60.
164 f6ce2d55 2006-12-25 alex .TP
165 f6ce2d55 2006-12-25 alex \fBOperCanUseMode\fR
166 f6ce2d55 2006-12-25 alex Should IRC Operators be allowed to use the MODE command even if they are
167 f6ce2d55 2006-12-25 alex not(!) channel-operators? Default: no.
168 f6ce2d55 2006-12-25 alex .TP
169 f6ce2d55 2006-12-25 alex \fBOperServerMode\fR
170 f6ce2d55 2006-12-25 alex If OperCanUseMode is enabled, this may lead the compatibility problems with
171 f6ce2d55 2006-12-25 alex Servers that run the ircd-irc2 Software. This Option "masks" mode requests
172 f6ce2d55 2006-12-25 alex by non-chanops as if they were coming from the server. Default: no.
173 f6ce2d55 2006-12-25 alex .TP
174 f6ce2d55 2006-12-25 alex \fBPredefChannelsOnly\fR
175 f6ce2d55 2006-12-25 alex If enabled, no new channels can be created. Useful if
176 f6ce2d55 2006-12-25 alex you do not want to have channels other than those defined in
177 f6ce2d55 2006-12-25 alex the config file.
178 001c00b2 2007-10-25 fw Default: No.
179 f6ce2d55 2006-12-25 alex .TP
180 001c00b2 2007-10-25 fw \fBNoDNS\fR
181 001c00b2 2007-10-25 fw If enabled, ngircd will not make DNS lookups when clients connect.
182 001c00b2 2007-10-25 fw If you configure ngircd to connect to other servers, ngircd may still
183 001c00b2 2007-10-25 fw perform a DNS lookup if required.
184 001c00b2 2007-10-25 fw Default: No.
185 bb6ee468 2008-04-29 alex .TP
186 bb6ee468 2008-04-29 alex \fBConnectIPv4\fR
187 bb6ee468 2008-04-29 alex Set this to no if you do not want ngircd to connect to other irc servers using ipv4.
188 bb6ee468 2008-04-29 alex This allows use of ngircd in ipv6-only setups.
189 bb6ee468 2008-04-29 alex Default: Yes.
190 001c00b2 2007-10-25 fw .TP
191 bb6ee468 2008-04-29 alex \fBConnectIPv6\fR
192 bb6ee468 2008-04-29 alex Set this to no if you do not want ngircd to connect to other irc servers using ipv6.
193 bb6ee468 2008-04-29 alex Default: Yes.
194 bb6ee468 2008-04-29 alex .TP
195 f6ce2d55 2006-12-25 alex \fBMaxConnections\fR
196 f6ce2d55 2006-12-25 alex Maximum number of simultaneous connection the server is allowed to accept
197 b160f574 2007-10-13 fw (0: unlimited). Default: 0.
198 f6ce2d55 2006-12-25 alex .TP
199 f6ce2d55 2006-12-25 alex \fBMaxConnectionsIP\fR
200 f6ce2d55 2006-12-25 alex Maximum number of simultaneous connections from a single IP address that
201 b160f574 2007-10-13 fw the server will accept (0: unlimited). This configuration options lowers
202 f6ce2d55 2006-12-25 alex the risk of denial of service attacks (DoS). Default: 5.
203 f6ce2d55 2006-12-25 alex .TP
204 f6ce2d55 2006-12-25 alex \fBMaxJoins\fR
205 b160f574 2007-10-13 fw Maximum number of channels a user can be member of (0: no limit).
206 f6ce2d55 2006-12-25 alex Default: 10.
207 47ca178a 2007-11-21 alex .TP
208 47ca178a 2007-11-21 alex \fBMaxNickLength\fR
209 47ca178a 2007-11-21 alex Maximum length of an user nick name (Default: 9, as in RFC 2812). Please
210 47ca178a 2007-11-21 alex note that all servers in an IRC network MUST use the same maximum nick name
211 47ca178a 2007-11-21 alex length!
212 ebf5edfd 2008-09-13 fw \fBSSLConnect\fR
213 ebf5edfd 2008-09-13 fw Connect to the remote server using TLS/SSL (Default: false)
214 f6ce2d55 2006-12-25 alex .SH [OPERATOR]
215 f6ce2d55 2006-12-25 alex .I [Operator]
216 f6ce2d55 2006-12-25 alex sections are used to define IRC Operators. There may be more than one
217 f6ce2d55 2006-12-25 alex .I [Operator]
218 f6ce2d55 2006-12-25 alex block, one for each local operator.
219 f6ce2d55 2006-12-25 alex .TP
220 f6ce2d55 2006-12-25 alex \fBName\fR
221 f6ce2d55 2006-12-25 alex ID of the operator (may be different of the nick name).
222 f6ce2d55 2006-12-25 alex .TP
223 f6ce2d55 2006-12-25 alex \fBPassword\fR
224 f6ce2d55 2006-12-25 alex Password of the IRC operator.
225 f6ce2d55 2006-12-25 alex .TP
226 f6ce2d55 2006-12-25 alex \fBMask\fR
227 f6ce2d55 2006-12-25 alex Mask that is to be checked before an /OPER for this account is accepted.
228 f6ce2d55 2006-12-25 alex Example: nick!ident@*.example.com
229 f6ce2d55 2006-12-25 alex .SH [SERVER]
230 f6ce2d55 2006-12-25 alex Other servers are configured in
231 f6ce2d55 2006-12-25 alex .I [Server]
232 f6ce2d55 2006-12-25 alex sections. If you configure a port for the connection, then this ngIRCd
233 d02b0835 2008-05-13 alex tries to connect to to the other server on the given port (active);
234 d02b0835 2008-05-13 alex if not, it waits for the other server to connect (passive).
235 f6ce2d55 2006-12-25 alex .PP
236 d02b0835 2008-05-13 alex ngIRCd supports "server groups": You can assign an "ID" to every server
237 d02b0835 2008-05-13 alex with which you want this ngIRCd to link, and the daemon ensures that at
238 d02b0835 2008-05-13 alex any given time only one direct link exists to servers with the same ID.
239 d02b0835 2008-05-13 alex So if a server of a group won't answer, ngIRCd tries to connect to the next
240 d02b0835 2008-05-13 alex server in the given group (="with the same ID"), but never tries to connect
241 d02b0835 2008-05-13 alex to more than one server of this group simultaneously.
242 f6ce2d55 2006-12-25 alex .PP
243 f6ce2d55 2006-12-25 alex There may be more than one
244 f6ce2d55 2006-12-25 alex .I [Server]
245 f6ce2d55 2006-12-25 alex block.
246 f6ce2d55 2006-12-25 alex .TP
247 f6ce2d55 2006-12-25 alex \fBName\fR
248 d02b0835 2008-05-13 alex IRC name of the remote server.
249 f6ce2d55 2006-12-25 alex .TP
250 f6ce2d55 2006-12-25 alex \fBHost\fR
251 d02b0835 2008-05-13 alex Internet host name (or IP address) of the peer.
252 82d32ffb 2007-11-23 fw .TP
253 82d32ffb 2007-11-23 fw \fBBind\fR
254 82d32ffb 2007-11-23 fw IP address to use as source IP for the outgoing connection. Default ist
255 82d32ffb 2007-11-23 fw to let the operating system decide.
256 f6ce2d55 2006-12-25 alex .TP
257 f6ce2d55 2006-12-25 alex \fBPort\fR
258 d02b0835 2008-05-13 alex Port of the remote server to which ngIRCd should connect (active).
259 d02b0835 2008-05-13 alex If no port is assigned to a configured server, the daemon only waits for
260 d02b0835 2008-05-13 alex incoming connections (passive).
261 f6ce2d55 2006-12-25 alex .TP
262 f6ce2d55 2006-12-25 alex \fBMyPassword\fR
263 f6ce2d55 2006-12-25 alex Own password for this connection. This password has to be configured as
264 f6ce2d55 2006-12-25 alex "PeerPassword" on the other server. Must not have ':' as first character.
265 f6ce2d55 2006-12-25 alex .TP
266 f6ce2d55 2006-12-25 alex \fBPeerPassword\fR
267 f6ce2d55 2006-12-25 alex Foreign password for this connection. This password has to be configured as
268 f6ce2d55 2006-12-25 alex "MyPassword" on the other server.
269 f6ce2d55 2006-12-25 alex .TP
270 f6ce2d55 2006-12-25 alex \fBGroup\fR
271 f6ce2d55 2006-12-25 alex Group of this server (optional).
272 d02b0835 2008-05-13 alex .TP
273 2275add3 2007-06-28 fw \fBPassive\fR
274 2275add3 2007-06-28 fw Disable automatic connection even if port value is specified. Default: false.
275 2275add3 2007-06-28 fw You can use the IRC Operator command CONNECT later on to create the link.
276 f6ce2d55 2006-12-25 alex .SH [CHANNEL]
277 f6ce2d55 2006-12-25 alex Pre-defined channels can be configured in
278 f6ce2d55 2006-12-25 alex .I [Channel]
279 f6ce2d55 2006-12-25 alex sections. Such channels are created by the server when starting up and even
280 f6ce2d55 2006-12-25 alex persist when there are no more members left.
281 f6ce2d55 2006-12-25 alex .PP
282 f6ce2d55 2006-12-25 alex Persistent channels are marked with the mode 'P', which can be set and unset
283 f6ce2d55 2006-12-25 alex by IRC operators like other modes on the fly.
284 f6ce2d55 2006-12-25 alex .PP
285 f6ce2d55 2006-12-25 alex There may be more than one
286 f6ce2d55 2006-12-25 alex .I [Channel]
287 f6ce2d55 2006-12-25 alex block.
288 f6ce2d55 2006-12-25 alex .TP
289 f6ce2d55 2006-12-25 alex \fBName\fR
290 d02b0835 2008-05-13 alex Name of the channel, including channel prefix ("#").
291 f6ce2d55 2006-12-25 alex .TP
292 f6ce2d55 2006-12-25 alex \fBTopic\fR
293 d02b0835 2008-05-13 alex Topic for this channel.
294 f6ce2d55 2006-12-25 alex .TP
295 f6ce2d55 2006-12-25 alex \fBModes\fR
296 f6ce2d55 2006-12-25 alex Initial channel modes.
297 1b852fce 2006-12-29 fw .TP
298 1b852fce 2006-12-29 fw \fBKey\fR
299 d02b0835 2008-05-13 alex Sets initial channel key (only relevant if mode k is set).
300 1b852fce 2006-12-29 fw .TP
301 1b852fce 2006-12-29 fw \fBMaxUsers\fR
302 d02b0835 2008-05-13 alex Set maximum user limit for this channel (only relevant if mode l is set).
303 f6ce2d55 2006-12-25 alex .SH HINTS
304 f6ce2d55 2006-12-25 alex It's wise to use "ngircd --configtest" to validate the configuration file
305 f6ce2d55 2006-12-25 alex after changing it. See
306 f6ce2d55 2006-12-25 alex .BR ngircd (8)
307 f6ce2d55 2006-12-25 alex for details.
308 f6ce2d55 2006-12-25 alex .SH AUTHOR
309 f6ce2d55 2006-12-25 alex Alexander Barton,
310 f6ce2d55 2006-12-25 alex .UR mailto:alex@barton.de
311 f6ce2d55 2006-12-25 alex alex@barton.de
312 f6ce2d55 2006-12-25 alex .UE
313 f6ce2d55 2006-12-25 alex .br
314 f6ce2d55 2006-12-25 alex Homepage:
315 f6ce2d55 2006-12-25 alex .UR http://ngircd.barton.de/
316 f6ce2d55 2006-12-25 alex http://ngircd.barton.de/
317 f6ce2d55 2006-12-25 alex .UE
318 f6ce2d55 2006-12-25 alex .SH "SEE ALSO"
319 f6ce2d55 2006-12-25 alex .BR ngircd (8)
320 f6ce2d55 2006-12-25 alex .\"
321 f6ce2d55 2006-12-25 alex .\" -eof-