New configuration option "Mask" for [Operator] sections to limit OPER command.
[ngircd-alex.git] / doc / sample-ngircd.conf
1 # $Id: sample-ngircd.conf,v 1.31 2005/03/02 16:07:30 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, i.e.
72         # the Directory the pidfile resides in must be writeable by the ngircd user and
73         # exist in the chroot dir.
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         # Maximum number of simultaneous connection the server is allowed
93         # to accept (<=0: unlimited):
94         ;MaxConnections = -1
95         
96         # Maximum number of simultaneous connections from a single IP address
97         # the server will accept (<=0: unlimited):
98         ;MaxConnectionsIP = 5
99
100         # Maximum number of channels a user can be member of (<=0: no limit):
101         ;MaxJoins = 10
102
103 [Operator]
104         # [Operator] sections are used to define IRC Operators. There may be
105         # more than one [Operator] block, one for each local operator.
106         
107         # ID of the operator (may be different of the nick name)
108         ;Name = TheOper
109
110         # Password of the IRC operator
111         ;Password = ThePwd
112
113         # Optional Mask from which /OPER will be accepted
114         ;Mask = *!ident@somewhere.example.com
115
116 [Operator]
117         # More [Operator] sections, if you like ...
118
119 [Server]
120         # Other servers are configured in [Server] sections. If you
121         # configure a port for the connection, then this ngircd tries to
122         # connect to to the other server on the given port; if not it waits
123         # for the other server to connect.
124         # There may be more than one server block.
125         #
126         # Server Groups:
127         # The ngIRCd allows "server groups": You can assign an "ID" to every
128         # server with which you want this ngIRCd to link. If a server of a
129         # group won't answer, the ngIRCd tries to connect to the next server
130         # in the given group. But the ngircd never tries to connect to two
131         # servers with the same group ID.
132         
133         # IRC name of the server
134         ;Name = irc2.the.net
135    
136         # Internet host name of the peer
137         ;Host = connect-to-host.the.net
138
139         # Port of the server to which the ngIRCd should connect. If you
140         # assign no port the ngIRCd waits for incoming connections.
141         ;Port = 6666
142
143         # Own password for the connection. This password has to be configured
144         # as "PeerPassword" on the other server.
145         ;MyPassword = MySecret
146
147         # Foreign password for this connection. This password has to be
148         # configured as "MyPassword" on the other server.
149         ;PeerPassword = PeerSecret
150         
151         # Group of this server (optional)
152         ;Group = 123
153
154 [Server]
155         # More [Server] sections, if you like ...
156
157 [Channel]
158         # Pre-defined channels can be configured in [Channel] sections.
159         # Such channels are created by the server when starting up and even
160         # persist when there are no more members left.
161         # Persistent channels are marked with the mode 'P', which can be set
162         # and unset by IRC operators like other modes on the fly.
163         # There may be more than one [Channel] block.
164         
165         # Name of the channel
166         ;Name = #TheName
167
168         # Topic for this channel
169         ;Topic = a great topic
170         
171         # Initial channel modes
172         ;Modes = tn
173
174 [Channel]
175         # More [Channel] sections, if you like ...
176
177 # -eof-