# This is an example of the config file for InspIRCd. #
# Change the options to suit your network #
# #
-# $Id$
# #
# ____ _ _____ _ _ ____ _ _ _ #
# | _ \ ___ __ _ __| | |_ _| |__ (_)___ | __ )(_) |_| | #
# for ssl to work. If you do not want this bind section to support ssl,
# just remove or comment out this option.
ssl="gnutls"
- >
+>
<bind address="" port="6660-6669" type="clients">
-# When linking servers, the openssl and gnutls transports are completely
+# When linking servers, the openssl and gnutls implementations are completely
# link-compatible and can be used alongside each other
# on each end of the link without any significant issues.
-# Transports can only be used on server blocks.
-# Supported Transports are: "ziplinks", "openssl" and "gnutls".
-# You must load m_ziplinks module for zip, m_ssl_openssl for openssl
+# Supported ssl types are: "openssl" and "gnutls".
+# You must load, m_ssl_openssl for openssl
# or m_ssl_gnutls for gnutls.
<bind address="" port="7000,7001" type="servers">
# and allow tags at the top, progressively more general, followed #
# by a <connect allow="*" (should you wish to have one). #
# #
-# #
+# Connect blocks are searched twice for each user - once when the TCP #
+# connection is accepted, and once when the user completes their #
+# registration. Most of the information (hostname, ident response, #
+# password, SSL when using STARTTLS, etc) is only available during #
+# the second search, so if you are trying to make a closed server, #
+# you will probably need a connect block just for user registration. #
+# This can be done by using <connect registered="no"> #
+
<connect
# deny: Will not let people connect if they have specified host/IP.
deny="69.254.*">
-<connect deny="3ffe::0/32">
+# connect:reason is the message that users will see if they match a deny block
+<connect deny="3ffe::0/32" reason="The 6bone address space is deprecated">
<connect
# name: Name to use for this connect block. Mainly used for
# globalmax: Maximum global (network-wide) connections per IP (or CIDR mask, see below).
globalmax="3"
+ # maxconnwarn: Enable warnings when localmax or globalmax is hit (defaults to on)
+ maxconnwarn="off"
+
# useident: Defines if users in this class MUST respond to a ident query or not.
useident="no"
# block have a valid ident response, use SSL, or have authenticated.
# Requires m_ident, m_sslinfo, or m_services_account respectively.
requiressl="on"
+ # NOTE: For requireaccount, you must complete the signon prior to full
+ # connection. Currently, this is only possible by using SASL
+ # authentication; passforward and PRIVMSG NickServ happen after
+ # your final connect block has been found.
# Alternate MOTD file for this connect class. The contents of this file are
- # specified using <files secretmotd="filename"> or <execfiles ...>
+ # specified using <files secretmotd="filename"> or <execfiles ...>
motd="secretmotd"
# port: What port this user is allowed to connect on. (optional)
# #
<cidr
- # ipv4clone: specifies how many bits of an IP address should be
+ # ipv4clone: specifies how many bits of an IP address should be
# looked at for clones. The default only looks for clones on a
# single IP address of a user. You do not want to set this
# extremely low. (Values are 0-32).
# 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. #
-# #
+# #
# You can also define if you want to disable any channelmodes #
-# or usermodes from your users. #
+# or usermodes from your users. #
# #
# `fakenonexistant' will make the ircd pretend that nonexistant #
# commands simply don't exist to non-opers ("no such command"). #
# without cycling them.
cyclehosts="yes"
+ # cyclehostsfromuser: If enabled, the source of the mode change for
+ # cyclehosts will be the user who cycled. This can look nicer, but
+ # triggers anti-takeover mechanisms of some obsolete bots.
+ cyclehostsfromuser="no"
+
# ircumsgprefix: Use undernet-style message prefixing for NOTICE and
# PRIVMSG. If enabled, it will add users' prefix to the line, if not,
# it will just message the user normally.
announcets="yes"
# allowmismatched: Setting this option to yes will allow servers to link even
- # if they don't have the same VF_OPTCOMMON modules loaded. Setting this to
- # yes may introduce some desyncs and weirdness.
- allowmismatched="no"
+ # if they don't have the same VF_OPTCOMMON modules loaded. Setting this to
+ # yes may introduce some desyncs and weirdness.
+ allowmismatched="no"
+
+ # defaultbind: Sets the default for <bind> tags without an address. Choices are
+ # ipv4 or ipv6; if not specified, IPv6 will be used if your system has support,
+ # falling back to IPv4 otherwise.
+ defaultbind="auto"
# hostintopic: If enabled, channels will show the host of the topicsetter
# in the topic. If set to no, it will only show the nick of the topicsetter.
# banned from the server.
moronbanner="You're banned! Email haha@abuse.com with the ERROR line below for help."
+ # exemptchanops: exemptions for channel access restrictions based on prefix.
+ exemptchanops="nonick:v flood:o"
+
# invitebypassmodes: This allows /invite to bypass other channel modes.
# (Such as +k, +j, +l, etc)
- invitebypassmodes="yes">
+ invitebypassmodes="yes"
+
+ # nosnoticestack: This prevents snotices from 'stacking' and giving you
+ # the message saying '(last message repeated X times)'. Defaults to no.
+ nosnoticestack="no">
#-#-#-#-#-#-#-#-#-#-#-# PERFORMANCE CONFIGURATION #-#-#-#-#-#-#-#-#-#-#
# of the server a user is on when whoised by a non-oper. Most
# networks will want to set this to something like "*.netname.net"
# to conceal the actual server a user is on.
+ # Note that enabling this will cause users' idle times to only be
+ # shown when the format /WHOIS <nick> <nick> is used.
hidewhois=""
# hidebans: If this value is set to yes, when a user is banned ([gkz]lined)
# the ircd. This may be set for security reasons or vanity reasons.
customversion=""
- # operspywhois: If this is set to yes, when a oper /whois 's a user,
- # it will show all channels the user is in including +s and +p
- # channels.
+ # operspywhois: show opers (users/auspex) the +s channels a user is in. Values:
+ # splitmsg Split with an explanatory message
+ # yes Split with no explanatory message
+ # no Do not show
operspywhois="no"
# runasuser: If this is set, InspIRCd will attempt to setuid
# to do what they want.
#
# An example log tag would be:
-# <log method="file" type="OPER" level="default" target="opers.log">
-# which would log all information on /oper (failed and successful) to
+# <log method="file" type="OPER" level="default" target="opers.log">
+# which would log all information on /oper (failed and successful) to
# a file called opers.log.
#
# There are many different types which may be used, and modules may
# generate their own. A list of useful types:
-# - USERS - information relating to user connection and disconnection
-# - CHANNELS - information relating to joining and parting of channels.
-# XXX someone doc more on this
+# - USERS - information relating to user connection and disconnection
+# - OPER - succesful and failed oper attempts
+# - KILL - kill related messages
+# - snomask - server notices (*all* snomasks will be logged)
+# - FILTER - messages related to filter matches (m_filter)
+# - CONFIG - configuration related messages
+# - COMMAND - die and restart messages, and messages related to unknown user types
+# - SOCKET - socket engine informational/error messages
+# - MODULE - module related messages
+# - STARTUP - messages related to starting up the server
#
# You may also log *everything* by using a type of *, and subtract things out
# of that by using -TYPE - for example "* -USERINPUT -USEROUTPUT".
#
+# Useful levels are:
+# - default (general messages, including errors)
+# - sparse (misc error messages)
+# - debug (debug messages)
+#
+# Some types only produce output in the debug level, those are:
+# - BANCACHE - ban cache debug messages
+# - CHANNELS - information relating to joining/creating channels
+# - CULLLIST - debug messages related to issues with removing users
+# - RESOLVER - DNS related debug messages
+# - CONNECTCLASS - Connection class debug messages
+# - USERINPUT
+# - USEROUTPUT
+#
# The following log tag is highly default and uncustomised. It is recommended you
# sort out your own log tags. This is just here so you get some output.
-<log method="file" type="* -USERINPUT -USEROUTPUT -m_spanningtree" level="default" target="ircd.log">
+<log method="file" type="* -USERINPUT -USEROUTPUT" level="default" target="ircd.log">
#-#-#-#-#-#-#-#-#-#-#-#-#- WHOWAS OPTIONS -#-#-#-#-#-#-#-#-#-#-#-#-#
# #