# This is an example of the config file for InspIRCd. #
# Change the options to suit your network #
# #
-# Last updated on : 30/10/2002 #
+# Last updated on : 01/05/2004 #
# Written by : CC (cc@backchat.co.za) #
-# #
+# Updated by : BlackDeathX (james@dreamirc.org) #
########################################################################
# port - opens an unused port #
# type - can be 'clients' or 'servers'. The clients type is #
# a standard tcp based socket, the servers type is a #
-# UDP based connection. #
+# also a TCP based connection but of a different #
+# format. #
# default - if the port type is 'servers' then this can be #
# specified. If set to 'yes', it indicates that this #
# port is the default route for all /connect commands.#
# To allow/deny all connections use a * #
# #
# Syntax is as follows: #
-# <connect allow="ip number"> #
-# <connect allow="ip number" password="blahblah"> #
-# <connect allow="ip number" password="blah" timeout="10"> #
-# <connect allow="ip number" timeout="blah" flood="5"> #
-# <connect deny="ip number"> #
+# <connect allow="ip or host"> #
+# <connect allow="ip or host" password="blahblah"> #
+# <connect allow="ip or host" password="blah" timeout="10"> #
+# <connect allow="ip or host" timeout="blah" flood="5"> #
+# <connect deny="ip or host"> #
# #
# You may optionally include timeout="x" on any allow line, which #
# specifies the amount of time given before an unknown connection #
# DISABLE this feature. A recommended value is 10. #
-<connect allow="196.12.*" password="tiffany">
+<connect allow="196.12.*" password="secret">
<connect allow="*" timeout="60" flood="10">
<connect deny="69.254.*">
# Syntax is as follow: #
# <class name="name" commands="oper commands"> #
# #
-
+
<class name="Shutdown" commands="DIE RESTART REHASH">
<class name="ServerLink" commands="CONNECT SQUIT">
<class name="BanControl" commands="KILL GLINE KLINE ZLINE QLINE SHUN">
# name - The name is the canocial name of the server, it does #
# not have to resolve - but it is expected to be sent in #
# the remote servers connection info. #
-# ipaddr - Valid ip address for remote server. #
+# ipaddr - Valid host or ip address for remote server. * #
# port - Valid listening UDP port for remote server. #
# sendpass - Password to send to create an outbound connection to #
# this server. #
# recvpass - Password to receive to accept an inbound connection #
# from this server. #
# #
+# to u:line a server (give it extra privilages required for running #
+# services, Q, etc) you must include the <uline server> tag as shown #
+# in the example below. You can have as many of these as you like. #
+# #
+# WARNING: Unlike other ircds, u:lining a server allows ALL users on #
+# that server to operoverride modes. This should only be used for #
+# services and protected oper servers! #
+# #
+# IMPORTANT NOTE: When specifying the ip address and/or host, the #
+# server software will prioritize RESOLVED hostnames above ip #
+# addresses, so for example if your target server resolves to a.b.com #
+# you MUST put a.b.com into your link block, and NOT the IP address #
+# of a.b.com. The system uses reverse resolution. #
+# #
<link name="hub.penguin.org"
- ipaddr="12.34.56.78"
+ ipaddr="penguin.box.com"
port="7000"
sendpass="outgoing!password"
recvpass="incoming!password">
+<link name="services.antarctic.com"
+ ipaddr="localhost"
+ port="7000"
+ sendpass="penguins"
+ recvpass="polarbears">
+
+<uline server="services.antarctic.com">
+
#-#-#-#-#-#-#-#-#-#- MISCELLANEOUS CONFIGURATION -#-#-#-#-#-#-#-#-#-#
<files motd="/home/cc/inspircd-1.0/conf/inspire.motd"
rules="/home/cc/inspircd-1.0/conf/inspire.rules">
+#-#-#-#-#-#-#-#-#-#-#-#-#-#-# DNS SERVER -#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
+# #
+# Define your DNS server address here. InspIRCd has its own resolver #
+# and you must define this otherwise nobody's host will resolve. The #
+# timeout value is in seconds. #
+# #
+
+<dns server="127.0.0.1" timeout="5">
+
+#-#-#-#-#-#-#-#-#-#-#-#-#-#-# PID FILE -#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
+# #
+# Define the path to the PID file here. The PID file can be used to #
+# rehash the ircd from the shell or to terminate the ircd from the #
+# shell using shell scripts, perl scripts etc, and to monitor the #
+# ircd's state via cron jobs. #
+# #
+
+<pid file="/path/to/inspircd.pid">
+
+#-#-#-#-#-#-#-#-#-#-#-#-#- BANLIST LIMITS #-#-#-#-#-#-#-#-#-#-#-#-#-#-#
+# #
+# Use these tags to customise the ban limits on a per channel basis. #
+# the tags are read from top to bottom, and any tag found which #
+# matches the channels name applies the banlimit to that channel. #
+# It is advisable to put an entry with the channel as '*' at the #
+# bottom of the list. If none are specified or no maxbans tag is #
+# matched, the banlist size defaults to 64 entries. #
+# #
+
+<banlist chan="#morons" limit="128">
+<banlist chan="*" limit="69">
+
+#-#-#-#-#-#-#-#-#-#-#- DISABLED COMMANDS -#-#-#-#-#-#-#-#-#-#-#-#-#-#
+# #
+# This tag is optional, and specifies one or more commands which are #
+# not available to non-operators. For example you may wish to disable #
+# NICK and prevent non-opers from changing their nicknames. #
+# Note that any disabled commands take effect only after the user has #
+# 'registered' (e.g. after the initial USER/NICK/PASS on connection) #
+# so for example disabling NICK will not cripple your network. #
+# #
+# <disabled commands="TOPIC MODE"> #
+# #
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#- RTFM LINE -#-#-#-#-#-#-#-#-#-#-#-#-#-#
# log file. You may select from debug, verbose, #
# default, sparse and none. #
# allowhalfop - allows the +h channel mode #
-# allowprotect - allows the +a channel mode #
-# allowfounder - allows the +q channel mode #
+# noservices - If noservices is true, yes, or 1, then the first #
+# user into a channel gets founder status. This is #
+# only useful on networks running the m_chanprotect #
+# module without services. #
# netbuffersize - size of the buffer used to receive data from #
# clients. The ircd may only read() this amount #
# of text in one go at any time. (OPTIONAL) #
+# maxwho - The maximum number of results returned by a /WHO #
+# query. This is to prevent /WHO being used as a #
+# spam vector or means of flooding an ircd. The #
+# default is 128, it is not recommended to raise it #
+# above 1024. Values up to 65535 are permitted. #
<options prefixquit="Quit: "
loglevel="default"
netbuffersize="10240"
- allowhalfop="yes"
- allowprotect="yes"
- allowfounder="yes">
+ maxwho="128"
+ noservices="0"
+ allowhalfop="yes">
<module name="m_foobar.so">
+#-#-#-#-#-#-#-#-#-#-#- FILTER CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#-#
+# #
+# Optional - If you specify to use the m_filter.so module, then #
+# specfiy below the path to the filter.conf file. #
+
+<filter file="/path/to/inspircd/filter.conf">
+
+
+#-#-#-#-#-#-#-#-#-#-#-#- HELPOP CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#
+# #
+# Optional - If you specify to use the m_helpop.so module, then #
+# specify below the path to the helpop.conf file. #
+
+<helpop file="/path/to/inspircd/helpop.conf">
+
+
+#-#-#-#-#-#-#-#-#-#- RANDOMQUOTES CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#
+# #
+# Optional - If you specify to use the m_randquotes.so module, then #
+# specify below the path to the randquotes.conf file. #
+
+<randquote file="/path/to/inspircd/randquotes.conf">
+
+#-#-#-#-#-#-#-#-#-#-#-#-#-#- BAN OPTIONS -#-#-#-#-#-#-#-#-#-#-#-#-#-#
+# #
+# The ban tags define nick masks, host masks and ip ranges which are #
+# banned from your server. All details in these tags are local to #
+# Your server. #
+# #
+# #
+# badip lines ban an ip range (same as a zline) #
+# #
+# ipmask - The ip range to ban (wildcards possible) #
+# reason - Reason to display when disconnected #
+# #
+# badnick lines ban a nick mask (same as a qline) #
+# #
+# nick - Nick mask to ban (wildcards possible) #
+# reason - Reason to display on /NICK #
+# #
+# badhost lines ban a user@host mask (same as a kline) #
+# #
+# host - ident@hostname (wildcards possible) #
+# reason - Reason to display on disconnection #
+# #
+# exception lines define a hostmask that is excempt from [kzg]lines #
+# #
+# host - ident@hostname (wildcards possible) #
+# reason - Reason, shown only in /stats e #
+# #
+
+<badip ipmask="69.69.69.69" reason="No porn here thanks.">
+
+<badnick nick="ChanServ" reason="Reserved For Services">
+<badnick nick="NickServ" reason="Reserved For Services">
+<badnick nick="OperServ" reason="Reserved For Services">
+<badnick nick="MemoServ" reason="Reserved For Services">
+
+<badhost host="*@hundredz.n.hundredz.o.1337.kiddies.com" reason="Too many 1337 kiddiots">
+<badhost host="*@localhost" reason="No irc from localhost!">
+
+<exception host="*@ircop.host.com" reason="Opers hostname">
+
+#-#-#-#-#-#-#-#-#-#-#- ALIAS DEFINITIONS -#-#-#-#-#-#-#-#-#-#-#-#-#-#
+# #
+# If you have the m_alias.so module loaded, you may also define #
+# aliases as shown below. They are commonly used to provide shortcut #
+# commands to services, however they are not limited to jsut this use.#
+# An alias tag requires the following values to be defined in it: #
+# #
+# text - The text to detect at the start of the line, #
+# must be at the start of the line to trigger the #
+# alias. May contain spaces, but case insensitive. #
+# replace - The text to replace 'text' with. Usually this #
+# will be "PRIVMSG ServiceName :" or similar. #
+# requires - If you provide a value for 'requires' this means #
+# the given nickname MUST be online for the alias #
+# to successfully trigger. If they are not, then #
+# the user receives a 'no such nick' 401 numeric. #
+# uline - Defining this value with 'yes', 'true' or '1' #
+# will ensure that the user given in 'requires' #
+# must also be on a u-lined server, as well as #
+# actually being on the network. If the user is #
+# online, but not on a u-lined server, then an #
+# oper-alert is sent out as this is possibly signs #
+# of a user trying to impersonate a service. #
+# #
+<alias text="NICKSERV" replace="PRIVMSG NickServ :" requires="NickServ" uline="yes">
+<alias text="CHANSERV" replace="PRIVMSG ChanServ :" requires="ChanServ" uline="yes">
+<alias text="NS" replace="PRIVMSG NickServ :" requires="NickServ" uline="yes">
+<alias text="CS" replace="PRIVMSG ChanServ :" requires="ChanServ" uline="yes">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#- YAWN -#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
# #