summaryrefslogtreecommitdiff
path: root/data
diff options
context:
space:
mode:
Diffstat (limited to 'data')
-rw-r--r--data/example.conf273
1 files changed, 208 insertions, 65 deletions
diff --git a/data/example.conf b/data/example.conf
index 5ad787180..66588cdee 100644
--- a/data/example.conf
+++ b/data/example.conf
@@ -471,35 +471,6 @@ options
#hidestatso = yes
/*
- * If set, Services will send global messages on starting up and shutting
- * down/restarting.
- *
- * This directive is optional.
- */
- #globaloncycle = yes
-
- /*
- * This is the global message that will be sent when Services are being
- * shutdown/restarted. This directive is only required if you enable
- * globaloncycle above.
- */
- globaloncycledown = "Services are restarting, they will be back shortly - please be good while we're gone"
-
- /*
- * This is the global message that will be sent when Services (re)join the
- * network. This directive is only required if you enable globaloncycle above.
- */
- globaloncycleup = "Services are now back online - have a nice day"
-
- /*
- * If set, Services will hide the IRC operator's nick in a global
- * message/notice.
- *
- * This directive is optional.
- */
- #anonymousglobal = yes
-
- /*
* Prevents users from registering their nick if they are not connected
* for at least the given number of seconds.
*
@@ -590,8 +561,8 @@ log
/*
* Target(s) to log to, which may be one of the following:
* - a channel name
+ * - a filename
* - globops
- * - filename
*/
target = "services.log"
/* Log to both services.log and the channel #services */
@@ -668,7 +639,7 @@ log
log
{
target = "globops"
- admin = "operserv/global operserv/mode operserv/kick opeserv/akill operserv/s*line operserv/noop operserv/jupe */forbid nickserv/getpass */drop"
+ admin = "global/* operserv/mode operserv/kick opeserv/akill operserv/s*line operserv/noop operserv/jupe */forbid nickserv/getpass */drop"
}
/*
@@ -690,6 +661,7 @@ log
* chanserv/set - Can modify the settings of any channel (incl. changing of the owner and password!)
* memoserv/info - Can see any information with /memoserv info
* memoserv/set-limit - Can set the limit of max stored memos on any user and channel
+ * memoserv/no-limit - Can send memos through limits and throttles
* nickserv/auspex - Can see any information with /nickserv info
* nickserv/confirm - Can confirm other users nicknames
* nickserv/drop - Can drop other users nicks
@@ -703,8 +675,8 @@ log
* chanserv/mode
*
* chanserv/saset/bantype chanserv/saset/description chanserv/saset/email chanserv/saset/entrymsg
- * chanserv/saset/founder chanserv/saset/keeptopic chanserv/saset/opnotice
- * chanserv/saset/peace chanserv/saset/persist chanserv/saset/private chanserv/saset/restricted
+ * chanserv/saset/founder chanserv/saset/keeptopic chanserv/saset/opnotice chanserv/saset/restricted
+ * chanserv/saset/peace chanserv/saset/persist chanserv/saset/private
* chanserv/saset/secure chanserv/saset/securefounder chanserv/saset/secureops
* chanserv/saset/signkick chanserv/saset/successor chanserv/saset/topiclock
* chanserv/saset/url chanserv/saset/xop
@@ -720,10 +692,12 @@ log
*
* hostserv/set hostserv/del
*
- * operserv/global operserv/news operserv/stats operserv/kick
+ * global/global
+ *
+ * operserv/news operserv/stats operserv/kick
* operserv/mode operserv/session operserv/modlist operserv/ignore
* operserv/chankill operserv/akill operserv/sqline operserv/snline
- * operserv/szline operserv/staff operserv/defcon operserv/config
+ * operserv/szline operserv/staff operserv/config
* operserv/modload operserv/jupe operserv/set operserv/noop
* operserv/quit operserv/update operserv/reload operserv/restart
* operserv/shutdown operserv/svsnick operserv/oline
@@ -767,7 +741,7 @@ opertype
inherits = "Services Operator"
- commands = "chanserv/access/list chanserv/drop chanserv/forbid chanserv/getkey chanserv/set/noexpire memoserv/sendall nickserv/saset/* nickserv/getemail operserv/global operserv/news operserv/jupe operserv/svsnick operserv/stats operserv/oline operserv/defcon operserv/noop"
+ commands = "chanserv/access/list chanserv/drop chanserv/forbid chanserv/getkey chanserv/set/noexpire memoserv/sendall nickserv/saset/* nickserv/getemail operserv/news operserv/jupe operserv/svsnick operserv/stats operserv/oline operserv/noop global/*"
privs = "*"
}
@@ -911,6 +885,13 @@ dns
}
/*
+ * [RECOMMENDED] NickServ
+ *
+ * Comment the following line to disable NickServ.
+ */
+module { name = "ns_main" }
+
+/*
* [REQUIRED] NickServ Config
*
* This section is used to set up the Nickname Registration Service pseudo-client.
@@ -1134,6 +1115,13 @@ nickserv
}
/*
+ * [RECOMMENDED] ChanServ
+ *
+ * Comment the following line to disable ChanServ.
+ */
+module { name = "cs_main" }
+
+/*
* [RECOMMENDED] ChanServ Config
*
* This section is used to set up the Channel Registration Service pseudo-client.
@@ -1158,7 +1146,7 @@ chanserv
*
* This directive is optional, but highly recommended.
*/
- modules = "cs_help cs_register cs_set cs_saset cs_saset_noexpire cs_set_bantype cs_set_description cs_set_entrymsg cs_set_founder cs_set_keeptopic cs_set_opnotice cs_set_peace cs_set_persist cs_set_private cs_set_restricted cs_set_secure cs_set_securefounder cs_set_secureops cs_set_signkick cs_set_successor cs_set_topiclock cs_set_xop cs_xop cs_access cs_akick cs_drop cs_ban cs_clearusers cs_modes cs_getkey cs_invite cs_kick cs_list cs_topic cs_info cs_forbid cs_suspend cs_status cs_unban cs_clone cs_mode"
+ modules = "cs_help cs_register cs_set cs_saset cs_saset_noexpire cs_set_bantype cs_set_description cs_set_founder cs_set_keeptopic cs_set_opnotice cs_set_peace cs_set_persist cs_set_private cs_set_restricted cs_set_secure cs_set_securefounder cs_set_secureops cs_set_signkick cs_set_successor cs_set_topiclock cs_set_xop cs_xop cs_access cs_akick cs_drop cs_ban cs_clearusers cs_modes cs_getkey cs_invite cs_kick cs_list cs_topic cs_info cs_forbid cs_suspend cs_status cs_unban cs_clone cs_mode"
/*
* The default options for newly registered channels. Note that changing these options
@@ -1276,10 +1264,16 @@ chanserv
}
/*
- * [OPTIONAL] MemoServ Config
+ * [OPTIONAL] MemoServ
*
- * This section is used to set up the Memo Service pseudo-client. Unless specified otherwise,
- * all directives are required if you wish to use MemoServ.
+ * Comment the following line to disable MemoServ.
+ */
+module { name = "ms_main" }
+
+/* [OPTIONAL] MemoServ configuration
+ *
+ * This section is used to set up the Memo Service pseudo-client. This is only required if ms_main
+ * is being loaded.
*/
memoserv
{
@@ -1323,15 +1317,6 @@ memoserv
senddelay = 3s
/*
- * Should we notify all appropriate users of a new memo? This applies in cases where a memo is
- * sent to a nick which is in the group of another nick. Note that, unlike before, it is currently
- * more efficient to enable this.
- *
- * This directive is optional.
- */
- notifyall = yes
-
- /*
* Allow the use of memo receipts for the following groups:
*
* 1 - Opers Only
@@ -1343,11 +1328,16 @@ memoserv
}
/*
- * [OPTIONAL] BotServ Config
+ * [OPTIONAL] BotServ
*
- * This section is used to set up the Bot Service pseudo-client. The block is optional and can be
- * removed if you do not wish to have BotServ on your network. Unless specified otherwise,
- * all directives are required if you do wish to use BotServ.
+ * Comment the following line to disable BotServ.
+ */
+module { name = "bs_main" }
+
+/* [OPTIONAL] BotServ configuration
+ *
+ * This section is used to set up the Bot Service pseudo-client. This is only required if ms_main
+ * is being loaded.
*/
botserv
{
@@ -1443,12 +1433,17 @@ botserv
}
/*
+ * [OPTIONAL] HostServ
+ *
+ * Comment the following line to disable HostServ.
+ */
+module { name = "hs_main" }
+
+/*
* [OPTIONAL] HostServ Config
*
* This section is used to set up the vHost Service pseudo-client.
*
- * The block is optional and can be removed if you do not wish to have HostServ on your network.
- *
* Unless specified otherwise, all directives are required if you do wish to use HostServ.
*/
hostserv
@@ -1474,6 +1469,13 @@ hostserv
}
/*
+ * [RECOMMENDED] OperServ
+ *
+ * Comment the following line to disable OperServ.
+ */
+module { name = "os_main" }
+
+/*
* [RECOMMENDED] OperServ Config
*
* This section is used to set up the Operator Service pseudo-client. Unless specified otherwise,
@@ -1498,7 +1500,7 @@ operserv
*
* This directive is optional, but highly recommended.
*/
- modules = "os_help os_global os_stats os_staff os_mode os_kick os_akill os_snline os_sqline os_szline os_chanlist os_userlist os_news os_session os_noop os_jupe os_ignore os_set os_reload os_update os_restart os_quit os_shutdown os_defcon os_chankill os_svsnick os_oline os_modload os_modunload os_modreload os_modlist os_modinfo os_config os_login"
+ modules = "os_help os_stats os_staff os_mode os_kick os_akill os_snline os_sqline os_szline os_chanlist os_userlist os_news os_session os_noop os_jupe os_ignore os_set os_reload os_update os_restart os_quit os_shutdown os_chankill os_svsnick os_oline os_modload os_modunload os_modreload os_modlist os_modinfo os_config os_login"
/*
* If set, Services Admins will be able to use SUPERADMIN [ON|OFF] which will temporarily grant
@@ -1651,6 +1653,13 @@ operserv
}
/*
+ * [RECOMMENDED] Global
+ *
+ * Comment the following line to disable Global.
+ */
+module { name = "gl_main" }
+
+/*
* [RECOMMENDED] Global Config
*
* This section is used to set up the Global pseudo-client. Unless specified otherwise,
@@ -1671,6 +1680,43 @@ global
* (real name) of the client.
*/
description = "Global Noticer"
+
+ /*
+ * The core modules to load for OperServ. This is a space separated list that corresponds
+ * to the base names of the modules for OperServ.
+ *
+ * This directive is optional, but highly recommended.
+ */
+ modules = "gl_help gl_global"
+
+ /*
+ * If set, Services will send global messages on starting up and shutting
+ * down/restarting.
+ *
+ * This directive is optional.
+ */
+ #globaloncycle = yes
+
+ /*
+ * This is the global message that will be sent when Services are being
+ * shutdown/restarted. This directive is only required if you enable
+ * globaloncycle above.
+ */
+ globaloncycledown = "Services are restarting, they will be back shortly - please be good while we're gone"
+
+ /*
+ * This is the global message that will be sent when Services (re)join the
+ * network. This directive is only required if you enable globaloncycle above.
+ */
+ globaloncycleup = "Services are now back online - have a nice day"
+
+ /*
+ * If set, Services will hide the IRC operator's nick in a global
+ * message/notice.
+ *
+ * This directive is optional.
+ */
+ #anonymousglobal = yes
}
/*
@@ -1750,18 +1796,10 @@ defcon
#globalondefcon = yes
/*
- * If set, Services will send the global message defined in the message directive on DefCon level
- * changes.
+ * Defines a message that will be sent on DefCon level changes.
*
* This directive is optional.
*/
- #globalondefconmore = yes
-
- /*
- * Defines the message that will be sent on DefCon level changes when globalondefconmore is set.
- *
- * This directive is required only when globalondefconmore is set.
- */
#message = "Put your message to send your users here. Dont forget to uncomment globalondefconmore"
/*
@@ -2208,3 +2246,108 @@ ns_set_misc
desc = "Associate an ICQ number with the nick"
}
+
+/*
+ * os_defcon
+ *
+ * Allows you to set services in defcon mode, which can be used to restrict services access
+ * during bot attacks.
+ */
+#module { "os_defcon" }
+os_defcon
+{
+ /*
+ * Default DefCon level (1-5) to use when starting Services up. Level 5 constitutes normal operation
+ * while level 1 constitutes the most restrictive operation. If this setting is left out or set to
+ * 0, DefCon will be disabled and the rest of this block will be ignored.
+ */
+ #defaultlevel = 5
+
+ /*
+ * The following 4 directives define what operations will take place when DefCon is set to levels
+ * 1 through 4. Each level is a list that must be separated by spaces.
+ *
+ * The following operations can be defined at each level:
+ * - nonewchannels: Disables registering new channels
+ * - nonewnicks: Disables registering new nicks
+ * - nomlockchanges: Disables changing MLOCK on registered channels
+ * - forcechanmodes: Forces all channels to have the modes given in the later chanmodes directive
+ * - reducedsessions: Reduces the session limit to the value given in the later sessionlimit directive
+ * - nonewclients: KILL any new clients trying to connect
+ * - operonly: Services will ignore all non-IRCops
+ * - silentoperonly: Services will silently ignore all non-IRCops
+ * - akillnewclients: AKILL any new clients trying to connect
+ * - nonewmemos: No new memos will be sent to block MemoServ attacks
+ */
+ level4 = "nonewchannels nonewnicks nomlockchanges reducedsessions"
+ level3 = "nonewchannels nonewnicks nomlockchanges forcechanmodes reducedsessions"
+ level2 = "nonewchannels nonewnicks nomlockchanges forcechanmodes reducedsessions silentoperonly"
+ level1 = "nonewchannels nonewnicks nomlockchanges forcechanmodes reducedsessions silentoperonly akillnewclients"
+
+ /*
+ * New session limit to use when a DefCon level is using "reduced" session limiting.
+ */
+ #sessionlimit = 2
+
+ /*
+ * Length of time to add an AKILL for when DefCon is preventing new clients from connecting to the
+ * network.
+ */
+ #akillexpire = 5m
+
+ /*
+ * The channel modes to set on all channels when the DefCon channel mode system is in use.
+ *
+ * Note 1: Choose these modes carefully, because when DefCon switches to a level which does NOT have
+ * the mode setting selected, Services will set the reverse on all channels, e.g. if this setting
+ * is +RN when DefCon is used, all channels will be set to +RN, when DefCon is removed, all
+ * channels will be set to -RN. You don't want to set this to +k for example, because when DefCon
+ * is removed all channels with -k.
+ *
+ * Note 2: MLOCKed modes will not be lost.
+ */
+ #chanmodes = "+R"
+
+ /*
+ * This value can be used to automatically return the network to DefCon level 5 after the specified
+ * time period, just in case any IRC Operator forgets to remove a DefCon setting.
+ *
+ * This directive is optional.
+ */
+ #timeout = 15m
+
+ /*
+ * If set, Services will send a global message on DefCon level changes.
+ *
+ * This directive is optional.
+ */
+ #globalondefcon = yes
+
+ /*
+ * If set, Services will send the global message defined in the message directive on DefCon level
+ * changes.
+ *
+ * This directive is optional.
+ */
+ #globalondefconmore = yes
+
+ /*
+ * Defines the message that will be sent on DefCon level changes when globalondefconmore is set.
+ *
+ * This directive is required only when globalondefconmore is set.
+ */
+ #message = "Put your message to send your users here. Dont forget to uncomment globalondefconmore"
+
+ /*
+ * Defines the message that will be sent when DefCon is returned to level 5. This directive is optional,
+ * and will also override globalondefcon and globalondefconmore when set.
+ */
+ #offmessage = "Services are now back to normal, sorry for any inconvenience"
+
+ /*
+ * Defines the reason to use when clients are KILLed or AKILLed from the network while the proper
+ * DefCon operation is in effect.
+ */
+ #akillreason = "This network is currently not accepting connections, please try again later"
+}
+