X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=docs%2Fconf%2Fmodules.conf.example;h=fe189e7c45a08a5e49224811058abc20c06a284e;hb=14e1d1f844c89e14cac24799c80af47ed6767cf2;hp=b2d759ff817c75e8131518e6b97aab39d6384dd9;hpb=96cc8bf4813877724d011531da1923aa457d8542;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/docs/conf/modules.conf.example b/docs/conf/modules.conf.example index b2d759ff8..fe189e7c4 100644 --- a/docs/conf/modules.conf.example +++ b/docs/conf/modules.conf.example @@ -35,7 +35,7 @@ # this module being loaded to function. # # -# + #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # SHA256 module: Allows other modules to generate SHA256 hashes, # usually for cryptographic uses and security. @@ -47,13 +47,6 @@ # be enhanced (for example the addition of HMAC authentication). # # -#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# -# RIPEMD160 module: Allows other modules to generate RIPEMD160 hashes, -# usually for cryptographic uses and security. -# -# IMPORTANT: -# Other modules may rely on this module being loaded to function. -# #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Abbreviation module: Provides the ability to abbreviate commands a-la @@ -86,7 +79,7 @@ # read from the top of the file to the bottom. # # # # usercommand - If this is true, the alias can be run simply as # -# /aliasname. Defaults to true. # +# /ALIASNAME. Defaults to true. # # # # channelcommand - If this is true, the alias can be used as an # # in-channel alias or 'fantasy command', prefixed # @@ -139,17 +132,17 @@ # An example of using the format value to create an alias with two # different behaviours depending on the format of the parameters. # -# # -# # # This alias fixes a glitch in xchat 2.6.x and above and the way it # assumes IDENTIFY must be prefixed by a colon (:) character. It should # be placed ABOVE the default NICKSERV alias. # -# # # You may also add aliases to trigger based on something said in a @@ -158,7 +151,7 @@ # command must be preceded by the fantasy prefix when used. # # +# replace="SQUERY ChanServ :$1 $chan $2-" requires="ChanServ" uline="yes"> # # This would be used as "!cs ", with the channel # being automatically inserted after the command in the message to @@ -175,6 +168,20 @@ # To use, ALLTIME must be in one of your oper class blocks. # +#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# +# Anticaps module: Adds channel mode +B which allows you to punish +# users that send overly capitalised messages to channels. Unlike the +# blockcaps module this module is more flexible as it has more options +# for punishment and allows channels to configure their own punishment +# policies. +# +# +# You may also configure the characters which anticaps considers to be +# lower case and upper case. Any characters not listed here are assumed +# to be punctuation and will be ignored when counting: +# + #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Auditorium module: Adds channel mode +u which makes everyone else # except you in the channel invisible, used for large meetings etc. @@ -241,23 +248,29 @@ #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Block CAPS module: Adds channel mode +B, blocks all-CAPS messages. +# +# NOTE: This module is deprecated and will be removed in a future version +# of InspIRCd. You should use the anticaps module shown above instead. # # #-#-#-#-#-#-#-#-#-#-#- BLOCKCAPS CONFIGURATION -#-#-#-#-#-#-#-#-#-#-# # # -# percent - What percentage of the text must be caps before # -# text will be blocked. # +# percent - The percentage of a message which must be upper # +# case before it will be blocked. # +# # +# minlen - The minimum length a message must be before it # +# will be blocked. # # # -# minlen - The minimum length a line must be for the block # -# percent to have any effect. # +# lowercase - The characters which will be considered lower # +# case. # # # -# capsmap - A list of chars to be considered CAPS. Can be used # -# to add CAPS characters for your language. Also you # -# can add things like ! and space to further lock # -# down on caps usage. # +# uppercase - The characters which will be considered upper # +# case. # +# # +# lowercase="abcdefghijklmnopqrstuvwxyz" +# uppercase="ABCDEFGHIJKLMNOPQRSTUVWXYZ"> #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Block color module: Blocking color-coded messages with chan mode +c. @@ -274,18 +287,15 @@ # # #-#-#-#-#-#-#-#-#-#-#- CALLERID CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#-# -# maxaccepts - Maximum number of entries a user can add to his # -# /ACCEPT list. Default is 16 entries. # -# operoverride - Can opers (note: ALL opers) override callerid? # -# Default is no. # -# tracknick - Preserve /accept entries when a user changes nick? # +# maxaccepts - Maximum number of entries a user can add to their # +# /ACCEPT list. Default is 30 entries. # +# tracknick - Preserve /ACCEPT entries when a user changes nick? # # If no (the default), the user is removed from # -# everyone's accept list if he changes nickname. # +# everyone's accept list if their nickname changes. # # cooldown - Amount of time that must pass since the last # -# notification sent to a user before he can be sent # -# another. Default is 1 minute. # -# @@ -302,16 +312,21 @@ # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# -# Censor module: Adds channel and user mode +G. +# Censor module: Adds channel and user mode +G which block phrases that +# are listed in the server bad words list. # # #-#-#-#-#-#-#-#-#-#-#- CENSOR CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#-# # # -# Optional - If you specify to use the censor module, then you must # -# specify some censor tags. See also: # -# https://wiki.inspircd.org/Modules/3.0/censor # -# -# +# If you have the censor module loaded you should specify one or more # +# phrases to replace/block in user messages. The config for this is # +# formatted as follows: # +# # +# Replaces "eggplant" with "aubergine" within messages: # +# # +# # +# Blocks messages that contain "fluffy capybaras": # +# # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # CGI:IRC module: Enables forwarding the real IP address of a user from @@ -327,7 +342,7 @@ # The webirc method is the recommended way to allow gateways to forward # IP/host information. When using this method the gateway sends a WEBIRC # message to the server on connection. For more details please read the -# IRCv3 WebIRC specification at http://ircv3.net/specs/extensions/webirc.html. +# IRCv3 WebIRC specification at: https://ircv3.net/specs/extensions/webirc.html # # When using this method you must specify a wildcard mask or CIDR range # to allow gateway connections from and at least one of either a SSL @@ -347,11 +362,17 @@ # address in the ident sent by the user. This is not recommended as it # only works with IPv4 connections. # -# When using this method you must specify a wildcard mask or CIDR range to -# allow gateway connections from. +# When using this method you must specify a wildcard mask or CIDR range to allow +# gateway connections from. You can also optionally configure the static value +# that replaces the IP in the ident to avoid leaking the real IP address of +# gateway clients (defaults to "gateway" if not set). # -# -# +# +# # # By default gateway connections are logged to the +w snomask. If you # do not want this to happen then you can uncomment this to disable it. @@ -383,7 +404,12 @@ # # If hidemask is set to yes, the user will not be shown the mask when # his/her message is blocked. -# +# +# If maxlen is set then it defines the maximum length of a filter entry. +# +# If notifyuser is set to no, the user will not be notified when +# his/her message is blocked. +# #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Channel history module: Displays the last 'X' lines of chat to a user @@ -397,7 +423,7 @@ # If notice is set to yes, joining users will get a NOTICE before playback # telling them about the following lines being the pre-join history. # If bots is set to yes, it will also send to users marked with +B -# +# #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Channel logging module: Used to send snotice output to channels, to @@ -416,14 +442,14 @@ # that looks like the name of another channel on the network. # - + #allowrange=""> #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Channelban: Implements extended ban j:, which stops anyone already @@ -472,15 +498,15 @@ # # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# -# Connection class ban module: Adds support for extban 'n' which +# Connection class ban module: Adds support for extban 'n' which # matches against the class name of the user's connection. # This module assumes that connection classes are named in a uniform # way on all servers of the network. # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# -# Clear chan module: Allows opers to masskick, masskill or mass-G/ZLine -# all users on a channel using /CLEARCHAN. +# Clear chan module: Allows opers to masskick, masskill or +# mass G/Z-line all users on a channel using /CLEARCHAN. # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# @@ -495,7 +521,8 @@ # # # To use cloaking, you must define a cloak key, and optionally a # # cloak prefix as shown below. The cloak key must be shared across # -# the network for correct cloaking. # +# the network for consistent cloaking and must be at least thirty # +# characters long. # # # # There are two methods of cloaking: # # # @@ -511,18 +538,21 @@ # # # The methods use a single key that can be any length of text. # # An optional prefix may be specified to mark cloaked hosts. # +# # +# IMPORTANT: Changing these details will break all of your existing # +# bans. If you do not want this to happen you can define multiple # +# cloak tags. The first will be used for cloaking and the rest will # +# be used for checking if a user is banned in a channel. # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # # - -#-#-#-#-#-#-#-#-#-#-#-#- CLOSE MODULE #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# -# Close module: Allows an oper to close all unregistered connections. -# This module is oper-only and provides the /CLOSE command. -# To use, CLOSE must be in one of your oper class blocks. -# +# +# #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Clones module: Adds an oper command /CLONES for detecting cloned @@ -588,7 +618,7 @@ #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Connectban: Provides IP connection throttling. Any IP range that -# connects too many times (configurable) in an hour is Z-Lined for a +# connects too many times (configurable) in an hour is Z-lined for a # (configurable) duration, and their count resets to 0. # # @@ -689,9 +719,24 @@ # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# -# Deaf module: Adds support for the usermode +d - deaf to channel -# messages and channel notices. +# Deaf module: Adds support for the usermodes +dD: +# d - deaf to channel messages and notices. +# D - deaf to user messages and notices. +# The +D user mode is not enabled by default to enable link compatibility +# with 2.0 servers. # +# +#-#-#-#-#-#-#-#-#-#-#-#- DEAF CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#-# +# bypasschars - Characters that bypass deaf to a regular user. +# bypasscharsuline - Characters that bypass deaf to a U-lined user (services). +# Both of these take a list of characters that must match +# the starting character of a message. +# If 'bypasscharsuline' is empty, then 'bypasschars' will +# match for both regular and U-lined users. +# enableprivdeaf - Whether to enable usermode +D (privdeaf). +# privdeafuline - Whether U-lined users bypass usermode +D (privdeaf). +# +# #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Delay join module: Adds the channel mode +D which delays all JOIN @@ -733,20 +778,61 @@ # # # Glob masks are accepted here also. # +#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# +# Disable module: Provides support for disabling commands and modes. # +# +# +#-#-#-#-#-#-#-#-#-#-#-#- DISABLE CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#-# +# # +# If you have the disable module loaded then you need to specify the # +# commands and modes that you want disabled. Users who have not fully # +# connected yet are exempt from this module so you can e.g. disable # +# the NICK command but still allow users to connect to the server. # +# # +# commands - A space-delimited list of commands that can not be used # +# by users. You can exempt server operators from this with # +# the servers/use-disabled-commands privilege. # +# # +# chanmodes - One or more channel modes that can not be added/removed # +# by users. You can exempt server operators from this # +# with the servers/use-disabled-modes privilege. # +# # +# usermodes - One or more user modes that can not be added/removed by # +# users. You can exempt server operators from this with # +# the servers/use-disabled-modes privilege. # +# # +# fakenonexistent - Whether to pretend that a disabled command/mode # +# does not exist when executed/changed by a user. # +# Defaults to no. # +# # +# notifyopers - Whether to send a notice to snomask `a` when a user # +# is prevented from using a disabled command/mode. # +# Defaults to no. # +# # +# # + #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # DNS blacklist module: Provides support for looking up IPs on one or # # more blacklists. # -# # +# # # # For configuration options please see the wiki page for dnsbl at # # https://wiki.inspircd.org/Modules/3.0/dnsbl # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Exempt channel operators module: Provides support for allowing # -# channel operators to be exempt from some channel modes. Supported # -# modes are blockcaps, noctcp, blockcolor, nickflood, flood, censor, # -# filter, regmoderated, nonick, nonotice, and stripcolor. # -# # +# users of a specified channel status to be exempt from some channel # +# restriction modes. Supported restrictions are # +# blockcaps, blockcolor, censor, filter, flood, nickflood, noctcp, # +# nonick, nonotice, regmoderated, stripcolor, and topiclock. # +# See in inspircd.conf.example for a more # +# detailed list of the restriction modes that can be exempted. # +# These are settable using: /MODE #chan +X : # +# #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Filter module: Provides message filtering, similar to SPAMFILTER. # @@ -766,19 +852,21 @@ # stdlib - stdlib regexps, provided via regex_stdlib, see comment # # at the tag for info on availability. # # # -# # +# If notifyuser is set to no, the user will not be notified when # +# his/her message is blocked. # +# +# # +# Your choice of regex engine must match on all servers network-wide. # # # -# Your choice of regex engine must match on all servers network-wide. -# # To learn more about the configuration of this module, read # # examples/filter.conf.example, which covers the various types of # # filters and shows how to add exemptions. # -# +# # #-#-#-#-#-#-#-#-#-#-#- FILTER CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#-# # # # Optional - If you specify to use the filter module, then # # specify below the path to the filter.conf file, or define some # -# tags. # +# tags. # # # # @@ -791,31 +879,54 @@ # # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# -# Gecos ban: Implements extended ban 'r', which stops anyone matching -# a mask like +b r:*realname?here* from joining a channel. +# Real name ban: Implements two extended bans: # +# 'a', which matches a n!u@h+realname mask like +b a:*!*@host+*real* # +# 'r', which matches a realname mask like +b r:*realname?here* # # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# -# GeoIP module: Allows the server admin to match users by country code. -# This module is in extras. Re-run configure with: -# ./configure --enable-extras=m_geoip.cpp -# and run make install, then uncomment this module to enable it. -# This module requires GeoIP to be installed on your system, -# use your package manager to find the appropriate packages -# or check the InspIRCd wiki page for this module. -# -# -# The actual allow/ban actions are done by connect classes, not by the -# GeoIP module. An example connect class to ban people from russia or -# turkey: -# -# -# -# The country code must be in capitals and should be an ISO country -# code such as TR, GB, or US. Unknown IPs (localhost, LAN IPs, etc) -# will be assigned the country code "UNK". Since connect classes are -# matched from top down, your deny classes must be above your allow -# classes for them to match. +# Geolocation ban module: Adds support for extban 'G' which matches # +# against the ISO 3166-1 alpha-2 codes for the countries that users # +# are connecting from. Users connecting from unknown origins such as # +# internal networks can be matched against using the XX alpha-2 code. # +# A full list of ISO 3166-1 alpha-2 codes can be found at # +# https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 # +# + +#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# +# Geolocation connect class module: Adds support for limiting connect # +# classes to users from specific countries. With this module you can # +# specify a space-delimited list of two character the ISO 3166-1 # +# alpha-2 codes in the "country" field of a connect class. e.g. to # +# deny connections from users in Russia or Turkey: # +# # +# # +# # +# Users connecting from unknown origins such as internal networks can # +# be matched against using the XX alpha-2 code. A full list of ISO # +# 3166-1 alpha-2 codes can be found at # +# https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 # +# + +#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# +# MaxMindDB geolocation module: Provides geolocation information for # +# other modules that need it using the libMaxMindDB library. # +# # +# This module is in extras. Re-run configure with: # +# ./configure --enable-extras=m_geo_maxmind.cpp +# and run make install, then uncomment this module to enable it. # +# # +# This module requires libMaxMindDB to be installed on your system. # +# Use your package manager to find the appropriate packages or check # +# the InspIRCd documentation page for this module. # +# +# # +# If you use the geo_maxmind module you MUST provide a database file # +# to look up geolocation information in. You can either purchase this # +# from MaxMind at https://www.maxmind.com/en/geoip2-country-database # +# or use the free CC-BY-SA licensed GeoLite2 Country database which # +# can be downloaded at https://dev.maxmind.com/geoip/geoip2/geolite2/ # +# #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Globops module: Provides the /GLOBOPS command and snomask +g. @@ -832,6 +943,12 @@ # must be in one of your oper class blocks. # +#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# +# HAProxy module: Adds support for the HAProxy PROXY v2 protocol. To +# use this module specify hook="haproxy" in the tag that HAProxy +# has been configured to connect to. +# + #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # HELPOP module: Provides the /HELPOP command # @@ -841,7 +958,7 @@ # If you specify to use the helpop module, then specify below the # # path to the helpop.conf file. # # # -# +# #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Hide chans module: Allows users to hide their channels list from non- @@ -874,6 +991,14 @@ # Only show invite exceptions (+I) to channel members: # +#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# +# Hide mode module: Allows for hiding mode changes from users who do not +# have sufficient channel privileges. +# +# +# Hide bans (+b) from people who are not voiced: +# + #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Hide oper module: Allows opers to hide their oper status from non- # opers by setting user mode +H on themselves. @@ -888,11 +1013,10 @@ # # # See https://wiki.inspircd.org/Modules/3.0/hostchange for help. # # # -# -# -# +# +# # -# +# # hostcycle: If loaded, when a user gets a host or ident set, it will # cycle them in all their channels. If not loaded it will simply change @@ -911,6 +1035,8 @@ # If you choose to use the httpd module, then you will need to add # a tag with type "httpd", and load at least one of the other # httpd_* modules to provide pages to display. +# +# # # You can adjust the timeout for HTTP connections below. All HTTP # connections will be closed after (roughly) this time period. @@ -933,13 +1059,22 @@ # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# -# HTTP config module: Allows the configuration of the server to be -# viewed over HTTP. Requires httpd to be loaded for it to function. +# HTTP config module: Allows the server configuration to be viewed over +# HTTP via the /config path. Requires the httpd module to be loaded for +# it to function. +# +# IMPORTANT: This module exposes extremely sensitive information about +# your server and users so you *MUST* protect it using a local-only +# tag and/or the httpd_acl module. See above for details. # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# -# HTTP stats module: Provides basic stats pages over HTTP. -# Requires httpd to be loaded for it to function. +# HTTP stats module: Provides server statistics over HTTP via the /stats +# path. Requires the httpd module to be loaded for it to function. +# +# IMPORTANT: This module exposes extremely sensitive information about +# your server and users so you *MUST* protect it using a local-only +# tag and/or the httpd_acl module. See above for details. # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# @@ -955,13 +1090,12 @@ # the timeout for ident lookups here. If not defined, it will default # # to 5 seconds. This is a non-blocking timeout which holds the user # # in a 'connecting' state until the lookup is complete. # -# The bind value indicates which IP to bind outbound requests to. # -# nolookupprefix: If on, the idents of users being in a connect class # +# prefixunqueried: If on, the idents of users being in a connect class# # with ident lookups disabled (i.e. ) will be # # prefixed with a "~". If off, the ident of those users will not be # # prefixed. Default is off. # # -# +# #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Invite exception module: Adds support for channel invite exceptions @@ -979,7 +1113,7 @@ # # Further information on these extensions can be found at the IRCv3 # working group website: -# http://ircv3.net/irc/ +# https://ircv3.net/irc/ # # # The following block can be used to control which extensions are @@ -988,12 +1122,23 @@ # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# -# IRCv3 cap-notify module: Provides the cap-notify IRCv3.2 extension. -# Required for IRCv3.2 conformance. +# IRCv3 account-tag module. Adds the 'account' tag which contains the +# services account name of the message sender. +# + +#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# +# IRCv3 batch module: Provides the batch IRCv3 extension which allows +# the server to inform a client that a group of messages are related to +# each other. +# + +#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# +# IRCv3 cap-notify module: Provides the cap-notify IRCv3 extension. +# Required for IRCv3 conformance. # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# -# IRCv3 chghost module: Provides the chghost IRCv3.2 extension which +# IRCv3 chghost module: Provides the chghost IRCv3 extension which # allows capable clients to learn when the host/ident of another user # changes without cycling the user. This module is compatible with the # hostcycle module. If both are loaded, clients supporting the chghost @@ -1001,20 +1146,31 @@ # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# -# IRCv3 echo-message module: Provides the echo-message IRCv3.2 +# IRCv3 client-to-client tags module: Provides the message-tags IRCv3 +# extension which allows clients to add extra data to their messages. +# This is used to support new IRCv3 features such as replies and ids. +# + +#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# +# IRCv3 echo-message module: Provides the echo-message IRCv3 # extension which allows capable clients to get an acknowledgement when # their messages are delivered and learn what modifications, if any, # were applied to them. # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# -# IRCv3 invite-notify module: Provides the invite-notify IRCv3.2 +# IRCv3 invite-notify module: Provides the invite-notify IRCv3 # extension which notifies supporting clients when a user invites # another user into a channel. This respects . # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# -# IRCv3 Strict Transport Security module: Provides the sts IRCv3.2 +# IRCv3 server-time module. Adds the 'time' tag which adds a timestamp +# to all messages received from the server. +# + +#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# +# IRCv3 Strict Transport Security module: Provides the sts IRCv3 # extension which allows clients connecting insecurely to upgrade their # connections to TLS. # @@ -1042,14 +1198,6 @@ # The number of seconds to close the channel for: # -#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# -# Jump server module: Adds support for the RPL_REDIR numeric. -# This module is oper-only. -# To use, JUMPSERVER must be in one of your oper class blocks. -# If your server is redirecting new clients and you get disconnected, -# do a REHASH from shell to open up again. -# - #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Anti auto rejoin: Adds support for prevention of auto-rejoin (+J). # @@ -1177,7 +1325,7 @@ #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Map hiding module: replaces /MAP and /LINKS output to users with a # -# message to see a website, set by maphide="http://test.org/map" in # +# message to see a website, set by maphide="https://test.org/map" in # # the tag, instead. # # @@ -1223,7 +1371,7 @@ #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Named modes module: Allows for the display and set/unset of channel # modes via long-form mode names via +Z and the /PROP command. -# For example, to set a ban, do /mode #channel +Z ban=foo!bar@baz or +# For example, to set a ban, do /MODE #channel +Z ban=foo!bar@baz or # /PROP #channel ban=foo!bar@baz # @@ -1264,9 +1412,13 @@ # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# -# No CTCP module: Adds the channel mode +C to block CTCPs and extban -# 'C' to block CTCPs sent by specific users. +# No CTCP module: Adds the channel mode +C and user mode +T to block +# CTCPs and extban 'C' to block CTCPs sent by specific users. # +# +# The +T user mode is not enabled by default to enable link compatibility +# with 2.0 servers. You can enable it by uncommenting this: +# #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # No kicks module: Adds the +Q channel mode and the Q: extban to deny @@ -1306,7 +1458,7 @@ #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Oper channels mode: Adds the +O channel mode and extban O: # to ban, except, etc. specific oper types. For example -# /mode #channel +iI O:* is equivalent to channel mode +O, but you +# /MODE #channel +iI O:* is equivalent to channel mode +O, but you # may also set +iI O:AdminTypeOnly to only allow admins. # Modes +I and +e work in a similar fashion. # @@ -1371,11 +1523,7 @@ # onoper - If on, the message is sent on /OPER, otherwise it's # # only sent when /OPERMOTD is used. # # # -# processcolors - Allow color codes to be processed in the opermotd. # -# Read the comment above in # -# inspircd.conf.example for details. # -# # -# +# #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Override module: Adds support for oper override. @@ -1384,8 +1532,19 @@ # #-#-#-#-#-#-#-#-#-#-# OVERRIDE CONFIGURATION -#-#-#-#-#-#-#-#-#-#-# # # -# override is too complex it describe here, see the wiki: # -# http://wiki.inspircd.org/Modules/override # +# Much of override's configuration relates to your oper blocks. # +# For more information on how to allow opers to override, see: # +# https://wiki.inspircd.org/Modules/3.0/override # +# # +# noisy - If enabled, all oper overrides will be announced # +# via channel notice. # +# # +# requirekey - If enabled, overriding on join requires a channel # +# key of "override" to be specified # +# # +# enableumode - If enabled, usermode +O is required for override. # +# # +# #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Oper levels module: Gives each oper a level and prevents actions @@ -1398,7 +1557,7 @@ # Oper modes module: Allows you to specify modes to add/remove on oper. # Specify the modes as the 'modes' parameter of the tag # and/or as the 'modes' parameter of the tag. -# This module is oper-only. For the user equivalent, see the +# This module is oper-only. For the user equivalent, see the # conn_umodes module. # @@ -1421,7 +1580,7 @@ # cmd: Command for the user to run when it receives a connect # password. - cmd="PRIVMSG $nickrequired :IDENTIFY $pass"> + cmd="SQUERY $nickrequired :IDENTIFY $pass"> #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Password hash module: Allows hashed passwords to be used. @@ -1502,6 +1661,10 @@ # Muteban: Implements extended ban 'm', which stops anyone matching # a mask like +b m:nick!user@host from speaking on channel. # +# +# If notifyuser is set to no, the user will not be notified when +# his/her message is blocked. +# #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Random quote module: Provides a random quote on connect. @@ -1517,21 +1680,14 @@ # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# -# Redirect module: Adds channel redirection mode +L. # -# Optional: to add usermode +L to stop forced # -# redirection and instead print an error. # -# # -# Note: You can not update this with a simple rehash, it requires # -# reloading the module for it to take effect. # -# This also breaks linking to servers that do not have the option. # -# This defaults to false for the 2.0 version, it will be enabled in # -# all the future versions. # +# Redirect module: Adds channel mode +L which redirects users to # +# another channel when the channel has reached its user limit and # +# user mode +L which stops redirection. # # -# #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Regular expression provider for glob or wildcard (?/*) matching. -# You must have at least 1 provider loaded to use the filter or rline +# You must have at least 1 provider loaded to use the filter or R-line # modules. This module has no additional requirements, as it uses the # matching already present in InspIRCd core. # @@ -1540,7 +1696,7 @@ # Regular expression provider for PCRE (Perl-Compatible Regular # Expressions). You need libpcre installed to compile and load this # module. You must have at least 1 provider loaded to use the filter or -# rline modules. +# R-line modules. # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# @@ -1553,7 +1709,7 @@ # Regular expression provider for POSIX regular expressions. # You shouldn't need any additional libraries on a POSIX-compatible # system (i.e.: any Linux, BSD, but not Windows). You must have at -# least 1 provider loaded to use filter or rline. +# least 1 provider loaded to use the filter or R-line modules. # On POSIX-compliant systems, regex syntax can be found by using the # command: 'man 7 regex'. # @@ -1580,17 +1736,10 @@ # to compile and load this module. # -#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# -# Registered users only channel creation module. If enabled, only -# registered users and opers can create new channels. -# -# You probably *DO NOT* want to load this module on a public network. -# -# - #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Remove module: Adds the /REMOVE command which is a peaceful -# alternative to /KICK. +# alternative to /KICK. It also provides the /FPART command which works +# in the same way as /REMOVE. # # # supportnokicks: If true, /REMOVE is not allowed on channels where the @@ -1600,31 +1749,47 @@ # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# -# A module to block, kick or ban upon similar messages being uttered several times. -# Syntax [~*][lines]:[sec]{[:difference]}{[:matchlines]} -# ~ is to block, * is to ban, default is kick. -# lines - In mode 1 the amount of lines that has to match consecutively - In mode 2 the size of the backlog to keep for matching -# seconds - How old the message has to be before it's invalidated. -# distance - Edit distance, in percent, between two strings to trigger on. -# matchlines - When set, the function goes into mode 2. In this mode the function will trigger if this many of the last matches. +# Repeat module: Allows to block, kick or ban upon similar messages +# being uttered several times. Provides channel mode +E. +# +# Syntax: [~|*]:[:][:] +# ~ is to block, * is to ban, default is kick. +# lines - In mode 1, the amount of lines that has to match consecutively. +# In mode 2, the size of the backlog to keep for matching. +# seconds - How old the message has to be before it's invalidated. +# difference - Edit distance, in percent, between two strings to trigger on. +# backlog - When set, the function goes into mode 2. In this mode the +# function will trigger if this many of the last matches. # # As this module can be rather CPU-intensive, it comes with some options. -# maxbacklog - Maximum size that can be specified for backlog. 0 disables multiline matching. -# maxdistance - Max percentage of difference between two lines we'll allow to match. Set to 0 to disable edit-distance matching. -# maxlines - Max lines of backlog to match against. -# maxtime - Maximum period of time a user can set. 0 to allow any. -# size - Maximum number of characters to check for, can be used to truncate messages -# before they are checked, resulting in less CPU usage. Increasing this beyond 512 -# doesn't have any effect, as the maximum length of a message on IRC cannot exceed that. -# +# maxbacklog - Maximum size that can be specified for backlog. 0 disables +# multiline matching. +# maxdistance - Max percentage of difference between two lines we'll allow +# to match. Set to 0 to disable edit-distance matching. +# maxlines - Max lines of backlog to match against. +# maxtime - Maximum period of time a user can set. 0 to allow any. +# size - Maximum number of characters to check for, can be used to +# truncate messages before they are checked, resulting in +# less CPU usage. Increasing this beyond 512 doesn't have +# any effect, as the maximum length of a message on IRC +# cannot exceed that. +# # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# -# Restricted channels module: Allows only opers to create channels. +# Restricted channels module: Allows only opers with the +# channels/restricted-create priv and/or registered users to +# create channels. # # You probably *DO NOT* want to load this module on a public network. # # +# +# allowregistered: should registered users be allowed to bypass the restrictions? +# +# +# Allow any channel matching #user-* to be created, bypassing restrictchans checks +# #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Restrict message module: Allows users to only message opers. @@ -1634,7 +1799,7 @@ # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# -# R-Line module: Ban users through regular expression patterns. +# R-line module: Ban users through regular expression patterns. # # #-#-#-#-#-#-#-#-#-#-#-#- RLINE CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#-#-# @@ -1643,15 +1808,15 @@ # useful under some situations, but *can* also use CPU with more users # on a server) then set 'matchonnickchange' to yes. # Also, this is where you set what Regular Expression engine is to be -# used. If you ever change it while running, all of your R-Lines will -# be wiped. This is the regex engine used by all R-Lines set, and +# used. If you ever change it while running, all of your R-lines will +# be wiped. This is the regex engine used by all R-lines set, and # regex_ must be loaded, or rline will be non-functional # until you load it or change the engine to one that is loaded. # # # -# Generally, you will NOT want to use 'glob' here, as this turns -# rline into just another gline. The exceptions are that rline will +# Generally, you will NOT want to use 'glob' here, as this turns an +# R-line into just another G-line. The exceptions are that R-lines will # always use the full "nick!user@host realname" string, rather than only # user@host, but beware that only the ? and * wildcards are available, # and are the only way to specify where the space can occur if you do @@ -1659,10 +1824,11 @@ # so that at least \s or [[:space:]] is available. #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# -# RMODE module: Adds the /RMODE command -# Allows channel mods to remove list modes en masse. -# Syntax: /rmode [pattern] -# E.g. '/rmode #Channel b m:*' will remove all mute-extbans on the channel. +# RMODE module: Adds the /RMODE command. +# Allows channel operators to remove list modes en masse, optionally +# matching a glob-based pattern. +# Syntax: /RMODE [] +# E.g. '/RMODE #channel b m:*' will remove all mute extbans on the channel. # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# @@ -1795,6 +1961,18 @@ #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # SETNAME module: Adds the /SETNAME command. # +# +#-#-#-#-#-#-#-#-#-#-#-#- SETNAME CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#-# +# # +# operonly - Whether the SETNAME command should only be usable by # +# server operators. Defaults to no. # +# # +# notifyopers - Whether to send a snotice to snomask `a` when a user # +# changes their real name. Defaults to to yes if # +# oper-only and no if usable by everyone. # +# # +# #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # Serverban: Implements extended ban 's', which stops anyone connected @@ -1811,7 +1989,7 @@ # they enter a command. # # This module adds one command for each tag that shows the # # given file to the user as a series of messages or numerics. # -# # +# # # #-#-#-#-#-#-#-#-#-#-# SHOWFILE CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#-#-# # # @@ -1824,9 +2002,6 @@ # (similar to /MOTD; the default). # # * notice: Send contents as a series of notices. # # * msg: Send contents as a series of private messages. # -# colors - If true, color codes (\c, \b, \u, etc.) will be processed # -# and sent as ANSI colors. If false (default) the file will # -# be displayed as-is. # # # # When using the method "numeric", the following extra settings are # # available: # @@ -1839,7 +2014,6 @@ # # # @@ -1875,12 +2049,25 @@ # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# -# SSL channel mode module: Adds support for SSL-only channels via -# channel mode +z and the 'z' extban which matches SSL client -# certificate fingerprints. +# SSL mode module: Adds support for SSL-only channels via the '+z' +# channel mode, SSL-only private messages via the '+z' user mode and +# the 'z:' extban which matches SSL client certificate fingerprints. +# # Does not do anything useful without a working SSL module and the # sslinfo module (see below). # +# +# The +z user mode is not enabled by default to enable link compatibility +# with 2.0 servers. You can enable it by uncommenting this: +# + +#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# +# SSL rehash signal module: Allows the SSL modules to be rehashed by +# sending SIGUSR1 to a running InspIRCd process. +# This modules is in extras. Re-run configure with: +# ./configure --enable-extras=m_sslrehashsignal.cpp +# and run make install, then uncomment this module to enable it. +# #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # GnuTLS SSL module: Adds support for SSL connections using GnuTLS, @@ -1960,9 +2147,6 @@ #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # SQL authentication module: Allows IRCd connections to be tied into # a database table (for example a forum). -# This module is in extras. Re-run configure with: -# ./configure --enable-extras=m_sqlauth.cpp -# and run make install, then uncomment this module to enable it. # # # @@ -1972,21 +2156,20 @@ # https://wiki.inspircd.org/Modules/3.0/sqlauth # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# -# SQL oper module: Allows you to store oper credentials in an SQL table -# This module is in extras. Re-run configure with: -# ./configure --enable-extras=m_sqloper.cpp -# and run make install, then uncomment this module to enable it. +# SQL oper module: Allows you to store oper credentials in an SQL +# table. You can add additional table columns like you would config +# tags in opers.conf. Opers in opers.conf will override opers from +# this module. # # # #-#-#-#-#-#-#-#-#-#-#- SQLOPER CONFIGURATION -#-#-#-#-#-#-#-#-#-#-#-# # # # dbid - Database ID to use (see SQL modules). # -# hash - Hashing provider to use for password hashing. # # # # See also: https://wiki.inspircd.org/Modules/3.0/sqloper # # # -# +# #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# # StartTLS module: Implements STARTTLS, which allows clients # @@ -1995,7 +2178,7 @@ # #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# -# SVSHold module: Implements SVSHOLD. Like Q:Lines, but can only be # +# SVSHold module: Implements SVSHOLD. Like Q-lines, but can only be # # added/removed by Services. # # # SVSHOLD does not generate server notices by default, you can turn @@ -2077,9 +2260,21 @@ # WebSocket connections. Compatible with SSL/TLS. # Requires SHA-1 hash support available in the sha1 module. # +# +# Whether to re-encode messages as UTF-8 before sending to WebSocket +# clients. This is recommended as the WebSocket protocol requires all +# text frames to be sent as UTF-8. If you do not have this enabled +# messages will be sent as binary frames instead. +# +# +# If you use the websocket module you MUST specify one or more origins +# which are allowed to connect to the server. You should set this as +# strict as possible to prevent malicious webpages from connecting to +# your server. +# #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# -# XLine database: Stores all *Lines (G/Z/K/R/any added by other modules) +# XLine database: Stores all *-lines (G/Z/K/R/any added by other modules) # in a file which is re-loaded on restart. This is useful # for two reasons: it keeps bans so users may not evade them, and on # bigger networks, server connections will take less time as there will