mirror of
https://github.com/NishiOwO/ircservices5.git
synced 2025-04-22 01:04:38 +00:00
1558 lines
58 KiB
Plaintext
1558 lines
58 KiB
Plaintext
# Example module configuration file for Services. After making the
|
||
# appropriate changes to this file, place it in the Services data directory
|
||
# (as specified in the "configure" script, default /usr/local/lib/ircservices)
|
||
# with the name "modules.conf".
|
||
|
||
###########################################################################
|
||
#
|
||
# Protocol module settings
|
||
#
|
||
###########################################################################
|
||
|
||
# Enter the protocol name here, then uncomment the appropriate directives.
|
||
|
||
Module protocol/(insert protocol name here)
|
||
|
||
# NetworkDomain domain [RECOMMENDED]
|
||
# Protocols: bahamut, dalnet, dreamforge, monkey, ptlink, rfc1459,
|
||
# trircd, ts8, undernet-p9
|
||
#
|
||
# Specifies the common domain, if any, shared by all servers on
|
||
# your IRC network; this is required for global notices to function
|
||
# properly. Make sure you do not include a "." before the domain
|
||
# name. If you do not specify this, some or all users may not
|
||
# receive global notices.
|
||
|
||
#NetworkDomain "example.net"
|
||
|
||
# ServerNumeric <numeric> [RECOMMENDED]
|
||
# Protocols: unreal
|
||
#
|
||
# Makes Services send a numeric to the remote server on connect.
|
||
# This must be a value between 1 and 254, and must not be in use by
|
||
# any other IRC server on the network. If you do not want to use a
|
||
# numeric for Services, comment the directive out.
|
||
|
||
#ServerNumeric 1
|
||
|
||
# SetServerTimes [<time>] [RECOMMENDED]
|
||
# Protocols: unreal
|
||
#
|
||
# Causes Services to synchronize all servers' internal clocks with
|
||
# its own; this can help avoid potential problems with users
|
||
# improperly gaining chanops, particularly during netsplits. If a
|
||
# time parameter is given, Services will repeatedly synchronize the
|
||
# servers clocks at that interval, otherwise synchronization will
|
||
# only be performed at startup.
|
||
|
||
#SetServerTimes
|
||
#SetServerTimes 12h
|
||
|
||
# CSSetChannelTime [OPTIONAL]
|
||
# Protocols: bahamut, monkey, trircd, unreal
|
||
#
|
||
# When enabled, causes Services to set the "creation time" (the
|
||
# time at which the first user joined the channel) of a registered
|
||
# channel to the time at which the channel was registered. This
|
||
# can help prevent spurious mode changes and "op hacking" when a
|
||
# split server reconnects to the network. When using Unreal,
|
||
# however, the first user to join the channel when it is empty gets
|
||
# set -o and +o in quick succession due to limitations of the IRC
|
||
# server; if this bothers you, do not enable this option. Also, some
|
||
# servers (such as Bahamut) generate server notices each time a
|
||
# channel's timestamp is changed, which can be safely ignored.
|
||
|
||
#CSSetChannelTime
|
||
|
||
EndModule
|
||
|
||
###########################################################################
|
||
#
|
||
# Database module configuration
|
||
#
|
||
###########################################################################
|
||
|
||
Module database/standard
|
||
|
||
# This module has no configurable settings.
|
||
|
||
EndModule
|
||
|
||
Module database/version4
|
||
|
||
# NickServDB <name> [REQUIRED]
|
||
# Specifies the filename used for the registered nickname databases.
|
||
|
||
NickServDB "nick.db"
|
||
|
||
# ChanServDB <name> [REQUIRED]
|
||
# Specifies the filename used for the registered channel databases.
|
||
|
||
ChanServDB "chan.db"
|
||
|
||
# OperServDB <name> [REQUIRED]
|
||
# Specifies the filename used for the OperServ database.
|
||
|
||
OperServDB "oper.db"
|
||
|
||
# NewsDB <name> [REQUIRED]
|
||
# Specifies the filename used for the news database.
|
||
|
||
NewsDB "news.db"
|
||
|
||
# AutokillDB <name> [REQUIRED]
|
||
# Specifies the filename used for the autokill and autokill
|
||
# exclusion databases.
|
||
|
||
AutokillDB "akill.db"
|
||
|
||
# ExceptionDB <name> [REQUIRED]
|
||
# Specifies the filename used for the session exception database.
|
||
|
||
ExceptionDB "exception.db"
|
||
|
||
# SlineDB <name> [REQUIRED]
|
||
# Specifies the filename used for the SGline, SQline, and SZline
|
||
# databases.
|
||
|
||
SlineDB "sline.db"
|
||
|
||
# StatServDB <name> [REQUIRED]
|
||
# Specifies the filename used for the StatServ server statistics
|
||
# database.
|
||
|
||
StatServDB "stats.db"
|
||
|
||
EndModule
|
||
|
||
###########################################################################
|
||
#
|
||
# Encryption module configuration
|
||
#
|
||
###########################################################################
|
||
|
||
# No encryption modules have any configurable settings.
|
||
|
||
###########################################################################
|
||
#
|
||
# Encryption module configuration
|
||
#
|
||
###########################################################################
|
||
|
||
Module encryption/md5
|
||
|
||
# EnableAnopeWorkaround [OPTIONAL]
|
||
# Enables a workaround for encrypted passwords imported from the
|
||
# Anope or Epona programs, which have a bug (inherited from an old
|
||
# version of Services) causing passwords to be incorrectly
|
||
# encrypted.
|
||
#
|
||
# WARNING: Enabling this option may reduce the security of
|
||
# encrypted passwords! If you need this option for importing an
|
||
# Anope or Epona database, it is recommended that you enable this
|
||
# only long enough to ensure that all users have used SET PASSWORD
|
||
# to reset their passwords (possibly to the same password).
|
||
|
||
#EnableAnopeWorkaround
|
||
|
||
EndModule
|
||
|
||
###########################################################################
|
||
#
|
||
# Mail module configuration
|
||
#
|
||
###########################################################################
|
||
|
||
Module mail/main
|
||
|
||
# FromAddress <email> [REQUIRED]
|
||
# Specifies the E-mail address to be used on outgoing mail. Make
|
||
# sure you enter the correct address here before uncommenting the
|
||
# directive.
|
||
|
||
#FromAddress services@example.net
|
||
|
||
# FromName <name> [OPTIONAL]
|
||
# Specifies the "real name" to be used on outgoing mail. Make sure
|
||
# to include quotes if this is a multi-word string.
|
||
|
||
#FromName "ExampleNet Services"
|
||
|
||
# MaxMessages <count> [RECOMMENDED]
|
||
# Specifies the maximum number of messages that are permitted to be
|
||
# in transit simultaneously. Attempts to send messages above this
|
||
# limit will be rejected with a "no resources" error. If not
|
||
# given, no limit is enforced.
|
||
|
||
MaxMessages 100
|
||
|
||
# SendTimeout <time> [RECOMMENDED]
|
||
# Specifies the amount of time Services will wait before aborting a
|
||
# mail message in the process of being sent. If not specified,
|
||
# message sends will not time out.
|
||
|
||
SendTimeout 1m
|
||
|
||
EndModule
|
||
|
||
################################ Sendmail-based low-level module
|
||
|
||
Module mail/sendmail
|
||
|
||
# SendmailPath <path> [REQUIRED]
|
||
# Specifies the full path to the "sendmail" program to be used to
|
||
# send mail. This program must accept a command-line option "-t"
|
||
# to extract recipient addresses from a mail message given on
|
||
# standard input (the standard "sendmail" program does this).
|
||
# The program will be executed with the same environment as
|
||
# Services itself is run with.
|
||
|
||
SendmailPath /usr/lib/sendmail
|
||
|
||
EndModule
|
||
|
||
################################ SMTP-based low-level module
|
||
|
||
Module mail/smtp
|
||
|
||
# RelayHost <hostname> [REQUIRED]
|
||
# Specifies the host to which all mail will be sent, e.g. your
|
||
# local mail server. This directive may be given multiple times to
|
||
# specify backup servers; the servers will be tried in the order
|
||
# listed.
|
||
|
||
#RelayHost mail.example.net
|
||
|
||
# SMTPName <hostname> [REQUIRED]
|
||
# Specifies the hostname Services will use in the HELO command to
|
||
# the remote server. Normally, this should be set to the same as
|
||
# the hostname of the machine Services runs on.
|
||
|
||
#SMTPName services.example.net
|
||
|
||
EndModule
|
||
|
||
###########################################################################
|
||
#
|
||
# OperServ configuration
|
||
#
|
||
###########################################################################
|
||
|
||
Module operserv/main
|
||
|
||
# OperServName <nick> <string> [REQUIRED]
|
||
# Specifies the nickname (first parameter) and "real" name (second
|
||
# parameter) used by the OperServ pseudoclient.
|
||
|
||
OperServName "OperServ" "Operator Server"
|
||
|
||
# GlobalName <nick> <string> [REQUIRED]
|
||
# Specifies the nickname (first parameter) and "real" name (second
|
||
# parameter) used by the global-noticer pseudoclient. This client
|
||
# is used to send messages from the OperServ GLOBAL command and
|
||
# news messages.
|
||
|
||
GlobalName "Global" "Global Noticer"
|
||
|
||
# ServicesRoot <nick> [REQUIRED]
|
||
# Specifies the Services "super-user". The super-user, or "root" as
|
||
# in Unix terminology, is the only user who can add or delete
|
||
# Services admins.
|
||
#
|
||
# This is commented out by default; make sure you insert the correct
|
||
# nick before uncommenting it.
|
||
|
||
#ServicesRoot SuperUser
|
||
|
||
# KillClonesAutokill <expiry-time> [RECOMMENDED]
|
||
# Causes Services to add an autokill for hosts killed using the
|
||
# KILLCLONES command, to prevent the clients from immediately
|
||
# reconnecting. The expiry-time parameter sets the expiry time for
|
||
# the autokill.
|
||
#
|
||
# If the autokill module (operserv/akill) is not loaded, this
|
||
# directive has no effect.
|
||
|
||
KillClonesAutokill 30m
|
||
|
||
# AllowRaw [DISCOURAGED]
|
||
# Enables use of the OperServ RAW command. This command can be
|
||
# used for testing IRC server features and other limited uses, but
|
||
# can also wreak havoc on a network if used improperly; use with
|
||
# extreme caution.
|
||
|
||
#AllowRaw
|
||
|
||
# WallOper [OPTIONAL]
|
||
# Causes Services to send a WALLOPS/GLOBOPS when a user becomes an
|
||
# IRC operator. Note that this can cause WALLOPS floods when
|
||
# Services first connects to the network.
|
||
|
||
#WallOper
|
||
|
||
# WallBadOS [OPTIONAL]
|
||
# Causes Services to send a WALLOPS/GLOBOPS if a non-IRC-operator
|
||
# tries to use OperServ.
|
||
|
||
#WallBadOS
|
||
|
||
# WallOSChannel [OPTIONAL]
|
||
# Cause Services to send a WALLOPS/GLOBOPS on use of any of the
|
||
# MODE, KICK, CLEARMODES, and CLEARCHAN commands.
|
||
|
||
#WallOSChannel
|
||
|
||
# WallSU [OPTIONAL]
|
||
# Causes Services to send a WALLOPS/GLOBOPS whenever a Services
|
||
# admin successfully obtains Services super-user privileges with
|
||
# the SU command. Note that Services will always send a
|
||
# WALLOPS/GLOBOPS when an incorrect password is given to the SU
|
||
# command or a user without Services admin privileges attempts to
|
||
# use the SU command.
|
||
|
||
WallSU
|
||
|
||
EndModule
|
||
|
||
################################ Autokill module settings
|
||
|
||
Module operserv/akill
|
||
|
||
# AutokillReason <reason> [REQUIRED]
|
||
# The reason to use when sending out KILLs for autokills and with
|
||
# the actual AKILL/GLINE commands. Some servers show this reason
|
||
# to users if their connection is rejected because they match an
|
||
# autokill. If you include a "%s" in the reason, it will be
|
||
# replaced by the reason given with the autokill itself.
|
||
|
||
AutokillReason "You are banned from this network"
|
||
#AutokillReason "Autokilled: %s"
|
||
|
||
# AutokillExpiry <time> [RECOMMENDED]
|
||
# Sets the default expiry time for autokills. If not defined,
|
||
# autokills will not expire by default.
|
||
|
||
AutokillExpiry 30d
|
||
|
||
# AkillChanExpiry <time> [REQUIRED]
|
||
# Sets the default expiry time for autokills added by an AKILLCHAN
|
||
# command.
|
||
|
||
AkillChanExpiry 7d
|
||
|
||
# OperMaxExpiry <time> [OPTIONAL]
|
||
# Sets the maximum expiry time usable by Services operators. If
|
||
# not defined, Services operators can set any expiry time, just as
|
||
# Services administrators can. If this is set to a value lower
|
||
# than AutokillExpiry or AkillChanExpiry, autokills entered without
|
||
# an expiry time will use this setting instead of the relevant
|
||
# default.
|
||
|
||
#OperMaxExpiry 7d
|
||
|
||
# EnableExclude [OPTIONAL]
|
||
# Causes autokill exclusions to be usable. If not given, the
|
||
# EXCLUDE command will be unavailable, and any autokill
|
||
# exclusions previously added will be ignored.
|
||
#
|
||
# NOTICE: On IRC servers without autokill exclusion functionality
|
||
# (such as that in trircd version 5), this will cause autokills to
|
||
# not be sent to the server; instead, Services will issue a KILL
|
||
# for each user that matches an autokill and does not match any
|
||
# autokill exclusions. This is necessary to allow Services to
|
||
# apply exclusions to users before they are disconnected.
|
||
|
||
#EnableExclude
|
||
|
||
# ExcludeReason <reason> [REQUIRED if EnableExclude set]
|
||
# The reason to use when sending out EXCLUDE commands on servers
|
||
# which support them. If you include a "%s" in the reason, it will
|
||
# be replaced by the reason given with the exclusion itself.
|
||
|
||
ExcludeReason "IRC operator host"
|
||
#ExcludeReason "Excluded from autokills: %s"
|
||
|
||
# ExcludeExpiry <time> [OPTIONAL]
|
||
# Sets the default expiry time for autokill exclusions. If not
|
||
# defined, autokill exclusions will not expire by default.
|
||
|
||
ExcludeExpiry 30d
|
||
|
||
# ImmediatelySendAutokill [OPTIONAL]
|
||
# Causes OperServ to inform all servers of a new autokill the
|
||
# moment it is added, rather than waiting for someone to match it
|
||
# first. (Note that autokill exclusions are always sent to the
|
||
# server immediately; this is to avoid an autokill being triggered
|
||
# by a non-excluded match before the exclusion has been sent,
|
||
# resulting in the excluded users being autokilled as well.)
|
||
|
||
#ImmediatelySendAutokill
|
||
|
||
# WallOSAkill [OPTIONAL]
|
||
# Cause Services to send a WALLOPS/GLOBOPS on use of the AKILL or
|
||
# EXCLUDE command to add or delete autokills or exclusions.
|
||
|
||
#WallOSAkill
|
||
|
||
# WallAutokillExpire [OPTIONAL]
|
||
# Causes Services to send a WALLOPS/GLOBOPS whenever an autokill
|
||
# or autokill exclusion expires.
|
||
|
||
#WallAutokillExpire
|
||
|
||
EndModule
|
||
|
||
################################ News module settings
|
||
|
||
Module operserv/news
|
||
|
||
# This module has no configurable settings.
|
||
|
||
EndModule
|
||
|
||
################################ Sessions module settings
|
||
|
||
Module operserv/sessions
|
||
|
||
# DefSessionLimit <limit> [RECOMMENDED]
|
||
# Default session limit per host. Once a host reaches its session
|
||
# limit, all clients attempting to connect from that host will be
|
||
# killed. A value of zero (or omitting the option entirely) means
|
||
# an unlimited session limit.
|
||
|
||
DefSessionLimit 3
|
||
|
||
# MaxSessionLimit <limit> [OPTIONAL]
|
||
# The maximum session limit that may be set for a host in an
|
||
# exception.
|
||
|
||
MaxSessionLimit 100
|
||
|
||
# ExceptionExpiry <time> [RECOMMENDED]
|
||
# Sets the default expiry time for exceptions. If not set,
|
||
# exceptions will not expire by default.
|
||
|
||
ExceptionExpiry 1d
|
||
|
||
# SessionLimitExceeded <message> [OPTIONAL]
|
||
# The message that will be NOTICE'd to a user just before they are
|
||
# removed from the network because their host's session limit has
|
||
# been exceeded. It may be used to give a slightly more
|
||
# descriptive reason for the impending kill as opposed to simply
|
||
# "Session limit exceeded". If this is commented out, nothing will
|
||
# be sent.
|
||
|
||
SessionLimitExceeded "The session limit for your host %s has been exceeded."
|
||
|
||
# SessionLimitDetailsLoc <message> [OPTIONAL]
|
||
# Same as above, but should be used to provide a website address
|
||
# where users can find out more about session limits and how to go
|
||
# about applying for an exception. If this is commented out,
|
||
# nothing will be sent.
|
||
#
|
||
# This option has been intentionally commented out in an effort to
|
||
# remind you to change the URL it contains. It is recommended that
|
||
# you supply an address/URL where people can get help regarding
|
||
# session limits.
|
||
|
||
#SessionLimitDetailsLoc "Please visit http://your.website.url/ for more information about session limits."
|
||
|
||
# SessionLimitAutokill <max-kill-interval> <num-kills> <expiry> <reason> [OPTIONAL]
|
||
# With this option, Services will add an automatic autokill when
|
||
# the same host's session limit is exceeded repeatedly in a short
|
||
# period of time. If not given, autokills will not be
|
||
# automatically added (Services will just keep killing users from
|
||
# the host as they come on). Note that the autokill module
|
||
# (operserv/akill) must be loaded for this to work.
|
||
#
|
||
# <max-kill-interval> sets the maximum interval which can elapse
|
||
# between kills before the kill counter is reset.
|
||
#
|
||
# <num-kills> sets the number of kills before an autokill is added.
|
||
#
|
||
# <expiry> sets the expiration time for the autokill.
|
||
#
|
||
# <reason> sets the reason for the autokill.
|
||
|
||
#SessionLimitAutokill 10s 5 30m "Exceeding session limit"
|
||
|
||
# WallOSException [OPTIONAL]
|
||
# Cause Services to send a WALLOPS/GLOBOPS on use of the EXCEPTION
|
||
# command to add or delete a session exception.
|
||
|
||
#WallOSException
|
||
|
||
# WallExceptionExpire [OPTIONAL]
|
||
# Causes Services to send a WALLOPS/GLOBOPS whenever a session
|
||
# limit exception expires.
|
||
|
||
#WallExceptionExpire
|
||
|
||
EndModule
|
||
|
||
################################ S-line module settings
|
||
|
||
Module operserv/sline
|
||
|
||
# SGlineReason <reason> [REQUIRED]
|
||
# The reason to use when sending out KILLs and SGLINE commands.
|
||
# Some servers show this reason to users if their connection is
|
||
# rejected because they match an SGline. If you include a "%s"
|
||
# in the reason, it will be replaced by the reason given with the
|
||
# SGline entry itself.
|
||
|
||
SGlineReason "Invalid real name"
|
||
#SGlineReason "Invalid real name: %s"
|
||
|
||
# SQlineReason <reason> [REQUIRED]
|
||
# The reason to use when sending out KILLs and SQLINE commands.
|
||
# Some servers show this reason to users if their connection is
|
||
# rejected because they match an SQline. If you include a "%s"
|
||
# in the reason, it will be replaced by the reason given with the
|
||
# SQline entry itself.
|
||
|
||
SQlineReason "Reserved nickname"
|
||
#SQlineReason "Reserved nickname: %s"
|
||
|
||
# SZlineReason <reason> [REQUIRED]
|
||
# The reason to use when sending out KILLs and SZLINE commands.
|
||
# Some servers show this reason to users if their connection is
|
||
# rejected because they match an SZline. If you include a "%s"
|
||
# in the reason, it will be replaced by the reason given with the
|
||
# SZline entry itself.
|
||
|
||
SZlineReason "You are banned from this network"
|
||
#SZlineReason "Z-lined: %s"
|
||
|
||
# ImmediatelySendSline [OPTIONAL]
|
||
# Causes OperServ to inform all servers of a new S-line the moment
|
||
# it is added, rather than waiting for someone to match it first.
|
||
|
||
#ImmediatelySendSline
|
||
|
||
# SGlineExpiry <time> [OPTIONAL]
|
||
# Sets the default expiry time for SGlines. If not defined,
|
||
# SGlines of that type will not expire by default.
|
||
|
||
#SGlineExpiry 30d
|
||
|
||
# SQlineExpiry <time> [OPTIONAL]
|
||
# Sets the default expiry time for SQlines. If not defined,
|
||
# SQlines of that type will not expire by default.
|
||
|
||
#SQlineExpiry 30d
|
||
|
||
# SZlineExpiry <time> [OPTIONAL]
|
||
# Sets the default expiry time for SZlines. If not defined,
|
||
# SZlines of that type will not expire by default.
|
||
|
||
SZlineExpiry 30d
|
||
|
||
# WallOSSline [OPTIONAL]
|
||
# Cause Services to send a WALLOPS/GLOBOPS on use of the SGLINE,
|
||
# SQLINE, or SZLINE commands to add or delete S-lines.
|
||
|
||
#WallOSSline
|
||
|
||
# WallSlineExpire [OPTIONAL]
|
||
# Causes Services to send a WALLOPS/GLOBOPS whenever an autokill
|
||
# expires.
|
||
|
||
#WallSlineExpire
|
||
|
||
# SQlineIgnoreOpers [OPTIONAL]
|
||
# Allows IRC operators to use nicknames that match an SQline.
|
||
# (Note that this may not function properly if the IRC server does
|
||
# not allow IRC operators to use such nicknames.)
|
||
|
||
SQlineIgnoreOpers
|
||
|
||
# SQlineKill [OPTIONAL]
|
||
# Normally, users whose nickname matches an SQline will have their
|
||
# nickname changed (on servers which support forced nickname
|
||
# changing) instead of being killed. Setting this option causes
|
||
# such users to be killed even on such servers, which may be
|
||
# helpful for dealing with clone attacks.
|
||
#
|
||
# Note that if this option is set, Services will not send SQlines
|
||
# to the IRC network; if it did, the IRC servers would step in and
|
||
# send the user an "invalid nickname" message before Services had a
|
||
# chance to kill the user.
|
||
|
||
#SQlineKill
|
||
|
||
EndModule
|
||
|
||
###########################################################################
|
||
#
|
||
# NickServ configuration
|
||
#
|
||
###########################################################################
|
||
|
||
Module nickserv/main
|
||
|
||
# NickServName <nick> <string> [REQUIRED]
|
||
# Specifies the nickname (first parameter) and "real" name (second
|
||
# parameter) used by the NickServ pseudoclient.
|
||
|
||
NickServName "NickServ" "Nickname Server"
|
||
|
||
# NSEnableRegister [OPTIONAL]
|
||
# Allows the REGISTER command to be used. This is usually a good
|
||
# thing, but if you don't want your users to be able to register
|
||
# nicknames, remove (or comment out) this directive. Note that you
|
||
# will need to at least enable this to register the Services
|
||
# super-user nick (defined in the operserv/main ServicesRoot
|
||
# directive), or you will not be able to use any privileged
|
||
# OperServ functions!
|
||
|
||
NSEnableRegister
|
||
|
||
# NSRegEmailMax <count> [OPTIONAL]
|
||
# Sets the maximum number of nicknames that can be registered to a
|
||
# single E-mail address; this affects both ordinary registration as
|
||
# well as changing the address using SET EMAIL, and also nickname
|
||
# linking (if the appropriate module is loaded). If not given,
|
||
# there is no limit.
|
||
#
|
||
# This option is most useful in combination with NSRequireEmail,
|
||
# below.
|
||
|
||
#NSRegEmailMax 20
|
||
|
||
# NSRequireEmail [OPTIONAL]
|
||
# Makes an E-mail address required at registration time. Users
|
||
# also will not be able to clear the address once registered,
|
||
# though they can change it. If not set, an E-mail address is not
|
||
# required (but may still be given), and the address may be cleared
|
||
# later on.
|
||
|
||
NSRequireEmail
|
||
|
||
# NSRegDenyIfSuspended [OPTIONAL]
|
||
# Disallows the use of REGISTER if the E-mail address given with
|
||
# the command is associated with a suspended nickname. This can
|
||
# help prevent users from getting around nickname suspensions by
|
||
# registering a new nickname.
|
||
|
||
NSRegDenyIfSuspended
|
||
|
||
# NSRegDelay <time> [RECOMMENDED]
|
||
# Sets the minimum length of time between consecutive uses of the
|
||
# REGISTER command. If not given, this restriction is disabled.
|
||
#
|
||
# WARNING: Not setting NSRegDelay, or setting it too low, will not
|
||
# only allow "registration flooding" but, if the mail-auth
|
||
# module is also loaded, will also allow users to abuse
|
||
# this command to send large quantities of mail (mailbombs)
|
||
# to arbitrary users!
|
||
|
||
NSRegDelay 5m
|
||
|
||
# NSInitialRegDelay <time> [OPTIONAL]
|
||
# Sets the minimum length of time the user must be connected before
|
||
# using the REGISTER command for the first time. If not given,
|
||
# this restriction is disabled. This option can be helpful in
|
||
# preventing malicious bots from flooding your network with
|
||
# registrations.
|
||
|
||
#NSInitialRegDelay 30s
|
||
|
||
# NSSetEmailDelay <time> [RECOMMENDED]
|
||
# Sets the minimum length of time between consecutive uses of the
|
||
# SET EMAIL command. If not given, this restriction is disabled.
|
||
#
|
||
# WARNING: If you use the mail-auth module, then not setting
|
||
# NSSetEmailDelay, or setting it too low, will allow users
|
||
# to abuse this command to send large quantities of mail
|
||
# (mailbombs) to arbitrary users!
|
||
|
||
NSSetEmailDelay 5m
|
||
|
||
# NSDef... [OPTIONAL]
|
||
# Sets the default options for newly registered nicks. Note that
|
||
# changing these options will have no effect on nicks which are
|
||
# already registered. Options not listed here will be unset on new
|
||
# nicks.
|
||
#
|
||
# If both NSDefKill and NSDefKillQuick are given, NSDefKillQuick
|
||
# takes precedence. KILL IMMED cannot be specified as a default.
|
||
|
||
#NSDefKill
|
||
#NSDefKillQuick
|
||
NSDefSecure
|
||
#NSDefPrivate
|
||
#NSDefNoOp
|
||
NSDefHideEmail
|
||
NSDefHideUsermask
|
||
#NSDefHideQuit
|
||
NSDefMemoSignon
|
||
NSDefMemoReceive
|
||
|
||
# NSExpire <time> [RECOMMENDED]
|
||
# Sets the length of time before a nick registration expires. If
|
||
# not set, nicknames will not expire.
|
||
|
||
NSExpire 30d
|
||
|
||
# NSExpireWarning <time> [OPTIONAL]
|
||
# Sets the length of time before nick expiration during which
|
||
# warnings are sent to the user when the user is online (and not
|
||
# identified). If not set, no warnings will be sent; however, a
|
||
# message will still be sent when the nickname actually expires.
|
||
|
||
NSExpireWarning 3d
|
||
|
||
# NSSuspendExpire <time> <grace-period> [RECOMMENDED]
|
||
# Sets the default expiry time and recovery grace period for
|
||
# nickname suspensions. (The expiry time can be set individually
|
||
# for each suspension; the grace period cannot.)
|
||
#
|
||
# The recovery grace period is the length of time a nick must exist
|
||
# for, after being unsuspended, before it is allowed to expire.
|
||
# This gives the owner a chance to reclaim the nick. It is
|
||
# enforced, if necessary, by adjusting the "last seen time" value,
|
||
# as well as the AUTH timeout when the mail-auth module is in use,
|
||
# when the nick is unsuspended. If set to zero, nicknames that are
|
||
# suspended for longer than "NSExpire" will be expired (dropped)
|
||
# during the next check for nickname expiration, giving the owners
|
||
# very little time to identify for their nicknames and prevent
|
||
# their expiry.
|
||
#
|
||
# If not specified, nickname suspensions will not expire by
|
||
# default, and there will be no grace period for recovering the nick.
|
||
|
||
NSSuspendExpire 25d 5d
|
||
|
||
# NSShowPassword [OPTIONAL]
|
||
# Causes the user's password to be sent back to them in a NOTICE at
|
||
# registration time, as a reminder.
|
||
|
||
NSShowPassword
|
||
|
||
# NSEnforcerUser <user>[@<host>] [REQUIRED]
|
||
# Sets the username (and possibly hostname) used for the fake user
|
||
# created when NickServ collides a user. Should be in user@host
|
||
# format. If the host is not given, the one from ServicesUser is
|
||
# used.
|
||
|
||
NSEnforcerUser enforcer
|
||
#NSEnforcerUser enforcer@localhost.net
|
||
|
||
# NSForceNickChange [OPTIONAL]
|
||
# When enabled, makes NickServ change a user's nick to a
|
||
# "Guest######" nick instead of killing them when enforcing a
|
||
# "nick kill". (The actual nickname used is determined by the
|
||
# GuestNickPrefix setting in ircservices.conf.)
|
||
#
|
||
# This setting has no effect with IRC servers that do not support
|
||
# forcibly changing a client's nickname, and a warning will be
|
||
# written to the log file if this option is used in such a case.
|
||
|
||
#NSForceNickChange
|
||
|
||
# NSReleaseTimeout <time> [REQUIRED]
|
||
# Sets the delay before a NickServ-collided nick is released.
|
||
|
||
NSReleaseTimeout 1m
|
||
|
||
# NSAllowKillImmed [OPTIONAL]
|
||
# When given, allows the use of the IMMED option with the NickServ
|
||
# SET KILL command.
|
||
|
||
#NSAllowKillImmed
|
||
|
||
# NSListOpersOnly [OPTIONAL]
|
||
# When enabled, limits use of the NickServ LIST and LISTEMAIL
|
||
# commands to IRC operators.
|
||
|
||
#NSListOpersOnly
|
||
|
||
# NSSecureAdmins [RECOMMENDED]
|
||
# When enabled, prevents the use of the DROPNICK, GETPASS, FORBID,
|
||
# SUSPEND, and SET PASSWORD commands by Services admins on other
|
||
# Services admins or the Services root. (These restrictions do not
|
||
# apply to the Services root.)
|
||
|
||
NSSecureAdmins
|
||
|
||
# NSEnableDropEmail [OPTIONAL]
|
||
# Allows the DROPEMAIL command to be used. This command can help
|
||
# recover from mass-registration attacks, but can also destroy your
|
||
# database if used improperly.
|
||
|
||
#NSEnableDropEmail
|
||
|
||
# NSDropEmailExpire [REQUIRED]
|
||
# Sets the maximum length of time allowed between a DROPEMAIL
|
||
# command and the corresponding DROPEMAIL-CONFIRM command.
|
||
|
||
NSDropEmailExpire 10m
|
||
|
||
# NSHelpWarning <time> [OPTIONAL]
|
||
# When enabled, displays a "do not abuse NickServ" warning at the
|
||
# end of the NickServ HELP output similar to previous versions of
|
||
# Services. Otherwise, the warning is not displayed.
|
||
|
||
#NSHelpWarning
|
||
|
||
# NSAlias <alias>=<command> [OPTIONAL]
|
||
# Creates an alias for a command. "alias" is the name of the
|
||
# alias, and "command" is the command which should be executed for
|
||
# that alias; the two are joined by an equals sign ("=") with no
|
||
# intervening whitespace. The alias and command names are
|
||
# case-insensitive.
|
||
#
|
||
# Any number of aliases can be created by adding more NSAlias
|
||
# directives, but recursive aliases are not allowed; "command" must
|
||
# be a valid (unaliased) command name.
|
||
|
||
#NSAlias ID=IDENTIFY
|
||
|
||
EndModule
|
||
|
||
################################ Access list module
|
||
|
||
Module nickserv/access
|
||
|
||
# NSAccessMax <count> [REQUIRED]
|
||
# Sets the maximum number of entries allowed on a nickname access
|
||
# list.
|
||
|
||
NSAccessMax 32
|
||
|
||
# NSFirstAccessEnable [OPTIONAL]
|
||
# When enabled, causes an access entry based on the registering
|
||
# user's username and hostname to be automatically added to the
|
||
# access list of a newly-registered nickname. When disabled,
|
||
# newly-registered nicknames will have an empty access list.
|
||
|
||
NSFirstAccessEnable
|
||
|
||
# NSFirstAccessWild [OPTIONAL]
|
||
# When enabled, causes the first access list entry added to a newly
|
||
# registered nickname to use a wildcard in the hostname when
|
||
# appropriate. When disabled, the first access list entry consists
|
||
# of the registering user's username and hostname as-is, without
|
||
# wildcards. This directive has no effect if NSFirstAccessEnable
|
||
# is disabled.
|
||
|
||
NSFirstAccessWild
|
||
|
||
EndModule
|
||
|
||
################################ Autojoin module
|
||
|
||
Module nickserv/autojoin
|
||
|
||
# NSAutojoinMax <count> [REQUIRED]
|
||
# Sets the maximum number of entries allowed on an autojoin list.
|
||
# There is little point in setting this higher than the maximum
|
||
# number of channels a client is allowed to join by the server
|
||
# (usually 10).
|
||
|
||
NSAutojoinMax 10
|
||
|
||
EndModule
|
||
|
||
################################ Link module
|
||
|
||
Module nickserv/link
|
||
|
||
# NSLinkMax <count> [REQUIRED]
|
||
# Sets the maximum number of links allowed for a single nickname
|
||
# group.
|
||
|
||
NSLinkMax 20
|
||
|
||
EndModule
|
||
|
||
################################ Authentication module
|
||
|
||
Module nickserv/mail-auth
|
||
|
||
# NSNoAuthExpire <time> [OPTIONAL]
|
||
# Sets the period of time after which a newly registered nickname
|
||
# will expire if it is not authenticated. If not specified, the
|
||
# standard nickname expiration time (NSExpire) is used.
|
||
|
||
#NSNoAuthExpire 12h
|
||
|
||
# NSSendauthDelay <time> [RECOMMENDED]
|
||
# Sets the minimum length of time between consecutive uses of the
|
||
# SENDAUTH command for the same nick group. If not specified, this
|
||
# restriction is disabled.
|
||
#
|
||
# WARNING: Not setting NSSendauthDelay, or setting it too low, will
|
||
# allow users to abuse this command to send large
|
||
# quantities of mail (mailbombs) to arbitrary users!
|
||
|
||
NSSendauthDelay 1d
|
||
|
||
EndModule
|
||
|
||
###########################################################################
|
||
#
|
||
# ChanServ configuration
|
||
#
|
||
###########################################################################
|
||
|
||
Module chanserv/main
|
||
|
||
# ChanServName <nick> <string> [REQUIRED]
|
||
# Specifies the nickname (first parameter) and "real" name (second
|
||
# parameter) used by the ChanServ pseudoclient.
|
||
|
||
ChanServName "ChanServ" "Channel Server"
|
||
|
||
# CSEnableRegister [OPTIONAL]
|
||
# Allows the REGISTER command to be used. This is usually a good
|
||
# thing, but if you don't want your users to be able to register
|
||
# channels, remove (or comment out) this directive. Note, however,
|
||
# that Services administrators and the Services super-user will
|
||
# still be able to use the REGISTER command regardless of whether
|
||
# this directive is given or not.
|
||
|
||
CSEnableRegister
|
||
|
||
# CSRegisteredOnly [OPTIONAL]
|
||
# Treats unregistered channels as if they were forbidden,
|
||
# disallowing access by ordinary users to any channels not
|
||
# explicitly registered with ChanServ. IRC operators will be
|
||
# allowed to enter such channels, as they are for ordinary
|
||
# forbidden channels. Note that this directive operates
|
||
# independently from the CSEnableRegister directive; if
|
||
# CSEnableRegister is commented out, non-Services-admin IRC
|
||
# operators will be able to join unregistered channels but will
|
||
# not be permitted to register them.
|
||
|
||
#CSRegisteredOnly
|
||
|
||
# CSMaxReg <count> [RECOMMENDED]
|
||
# Limits the number of channels which may be registered to a single
|
||
# nickname. In the case of linked nicks, this limit applies to the
|
||
# entire set of linked nicks.
|
||
|
||
CSMaxReg 20
|
||
|
||
# CSDef... [OPTIONAL]
|
||
# Sets the default options for newly registered channels. Note
|
||
# that changing these options will have no effect on channels which
|
||
# are already registered. Options not listed here will be unset on
|
||
# new channels.
|
||
|
||
CSDefKeepTopic
|
||
#CSDefSecureOps
|
||
#CSDefPrivate
|
||
#CSDefTopicLock
|
||
#CSDefLeaveOps
|
||
CSDefSecure
|
||
#CSDefOpNotice
|
||
#CSDefEnforce
|
||
#CSDefMemoRestricted
|
||
#CSDefHideEmail
|
||
#CSDefHideTopic
|
||
#CSDefHideMlock
|
||
|
||
# CSDefModeLock <mode-string> [OPTIONAL]
|
||
# Sets the default mode lock for newly registered channels, in the
|
||
# same format as the SET MLOCK command. If not set, the default is
|
||
# "+nt". Note that only binary modes (modes which take no
|
||
# parameters) can be used with this directive.
|
||
|
||
CSDefModeLock +nt
|
||
|
||
# CSExpire <time> [RECOMMENDED]
|
||
# Sets the length of time before a channel expires. If not set,
|
||
# channels will not expire.
|
||
|
||
CSExpire 14d
|
||
|
||
# CSSuspendExpire <time> [RECOMMENDED]
|
||
# Sets the default expiry time and recovery grace period for channel
|
||
# suspensions. If not set, channel suspensions will not expire by
|
||
# default and there will be no recovery grace period.
|
||
|
||
CSSuspendExpire 12d 2d
|
||
|
||
# CSShowPassword [OPTIONAL]
|
||
# If specified, causes the user's password to be sent back to them
|
||
# in a NOTICE at registration time, as a reminder.
|
||
|
||
CSShowPassword
|
||
|
||
# CSAccessMax <count> [REQUIRED]
|
||
# Sets the maximum number of entries on a channel's access list.
|
||
# Channel access lists may contain only registered nicknames;
|
||
# therefore, checking each entry on the list requires only a single
|
||
# scalar comparison instead of a wildcard match, and this limit may
|
||
# be safely set much higher than (for example) the autokick list
|
||
# size limit without impacting performance significantly.
|
||
|
||
CSAccessMax 1024
|
||
|
||
# CSAutokickMax <count> [REQUIRED]
|
||
# Sets the maximum number of entries on a channel's autokick list.
|
||
|
||
CSAutokickMax 32
|
||
|
||
# CSInhabit <time> [REQUIRED]
|
||
# Sets the length of time ChanServ stays in a channel after kicking
|
||
# a user from a channel s/he is not permitted to be in. This only
|
||
# occurs when the user is the only one in the channel.
|
||
|
||
CSInhabit 15s
|
||
|
||
# CSRestrictDelay <time> [OPTIONAL]
|
||
# When enabled, causes ChanServ to permit users to join channels
|
||
# with the RESTRICTED option set if they would be permitted to join
|
||
# after identifying for their nick, and to not remove mode +o (ops)
|
||
# from users who would be auto-opped if identified for their nick,
|
||
# for the given period of time after Services starts up. This gives
|
||
# such users time to identify to NickServ before being kicked out of
|
||
# restricted channels or getting deopped.
|
||
|
||
CSRestrictDelay 15s
|
||
|
||
# CSListOpersOnly [OPTIONAL]
|
||
# When enabled, limits use of the ChanServ LIST command to IRC
|
||
# operators.
|
||
|
||
#CSListOpersOnly
|
||
|
||
# CSForbidShortChannel [OPTIONAL]
|
||
# When enabled, treats the channel "#" as a forbidden channel, not
|
||
# allowing any users to join it. When not enabled, the channel "#"
|
||
# can be used normally, although ChanServ functions cannot be used
|
||
# with it. If CSRegisteredOnly is enabled, this directive has no
|
||
# effect (the "#" channel will be treated as forbidden along with
|
||
# all other unregistered channel).
|
||
|
||
#CSForbidShortChannel
|
||
|
||
# CSSkipModeRCheck [OPTIONAL]
|
||
# When enabled, causes ChanServ to not kick users with unregistered
|
||
# nicknames who try to join <tt>+R</tt> channels (on networks
|
||
# supporting <tt>+R</tt> or another mode restricting channels to
|
||
# registered nicknames only).
|
||
|
||
#CSSkipModeRCheck
|
||
|
||
# CSAlias <alias>=<command> [OPTIONAL]
|
||
# Creates an alias for a command. The parameter format is the same
|
||
# as for the NSAlias directive.
|
||
|
||
#CSAlias ID=IDENTIFY
|
||
|
||
EndModule
|
||
|
||
###########################################################################
|
||
#
|
||
# MemoServ configuration
|
||
#
|
||
###########################################################################
|
||
|
||
Module memoserv/main
|
||
|
||
# MemoServName <nick> <string> [REQUIRED]
|
||
# Specifies the nickname (first parameter) and "real" name (second
|
||
# parameter) used by the MemoServ pseudoclient.
|
||
|
||
MemoServName "MemoServ" "Memo Server"
|
||
|
||
# MSMaxMemos <count> [RECOMMENDED]
|
||
# Sets the maximum number of memos a user is allowed to keep by
|
||
# default. Normal users may set the limit anywhere between zero
|
||
# and this value; Services admins can change it to any value or
|
||
# disable it. If not given, the limit is disabled by default, and
|
||
# normal users can set any limit they want.
|
||
|
||
MSMaxMemos 20
|
||
|
||
# MSExpire <time> [OPTIONAL]
|
||
# Sets the length of time after a memo is sent until it expires and
|
||
# is automatically deleted. If not set, memos will not expire.
|
||
# Note that memos sent while MSExpire is disabled will not expire
|
||
# even if MSExpire is later enabled.
|
||
|
||
#MSExpire 3d
|
||
|
||
# MSExpireDelay <time> [OPTIONAL]
|
||
# Sets the length of time after first being read a memo's
|
||
# expiration will be delayed. Even if a memo reaches the age given
|
||
# in the MSExpire directive, it will not be deleted until at least
|
||
# the length of time given in this directive has passed since the
|
||
# memo was first read. If not set, memo expiration will not be
|
||
# delayed, and unread memos which have expired will be deleted
|
||
# immediately upon being read.
|
||
#
|
||
# If MSExpire is not set, this directive is ignored.
|
||
|
||
MSExpireDelay 1d
|
||
|
||
# MSSendDelay <time> [RECOMMENDED]
|
||
# Sets the delay between consecutive uses of the MemoServ SEND
|
||
# command. This can help prevent spam as well as denial-of-service
|
||
# attacks from sending large numbers of memos and filling up disk
|
||
# space (and memory). A 3-second wait means a maximum average of
|
||
# 150 bytes of memo per second per user under the current IRC
|
||
# protocol.
|
||
|
||
MSSendDelay 3s
|
||
|
||
# MSAlias <alias>=<command> [OPTIONAL]
|
||
# Creates an alias for a command. The parameter format is the same
|
||
# as for the NSAlias directive.
|
||
|
||
#MSAlias R=READ
|
||
|
||
EndModule
|
||
|
||
################################ FORWARD module
|
||
|
||
Module memoserv/forward
|
||
|
||
# MSAllowForward [OPTIONAL]
|
||
# If given, allows the FORWARD command to be used (the SET FORWARD
|
||
# command is always available). While the FORWARD command can be
|
||
# useful particularly for users first setting the FORWARD option
|
||
# on, a large number of users using the FORWARD ALL command can
|
||
# place a significant load on Services.
|
||
|
||
MSAllowForward
|
||
|
||
# MSForwardDelay <time> [RECOMMENDED if MSAllowForward is set]
|
||
# Sets the minimum length of time between consecutive uses of the
|
||
# FORWARD command. If not given, this restriction is disabled.
|
||
# (Note that this can allow users to place a significant load on
|
||
# Services and/or your mail server!)
|
||
#
|
||
# If MSAllowForward is not set, this directive is ignored.
|
||
|
||
MSForwardDelay 10s
|
||
|
||
EndModule
|
||
|
||
################################ IGNORE module
|
||
|
||
Module memoserv/ignore
|
||
|
||
# MSIgnoreMax [REQUIRED]
|
||
# Sets the maximum number of entries a user can have for their
|
||
# nickname group's memo ignore list.
|
||
|
||
MSIgnoreMax 32
|
||
|
||
EndModule
|
||
|
||
###########################################################################
|
||
#
|
||
# StatServ configuration
|
||
#
|
||
###########################################################################
|
||
|
||
Module statserv/main
|
||
|
||
# StatServName <nick> <string> [REQUIRED]
|
||
# Specifies the nickname (first parameter) and "real" name (second
|
||
# parameter) used by the StatServ pseudoclient.
|
||
|
||
StatServName "StatServ" "Statistics Server"
|
||
|
||
# SSOpersOnly [OPTIONAL]
|
||
# Limits the use of StatServ to IRC operators only.
|
||
|
||
#SSOpersOnly
|
||
|
||
EndModule
|
||
|
||
###########################################################################
|
||
#
|
||
# HTTP server modules
|
||
#
|
||
###########################################################################
|
||
|
||
Module httpd/main
|
||
|
||
# ListenTo <address>:<port> [REQUIRED]
|
||
# Specifies the address and port number on which the HTTP server
|
||
# will listen for incoming requests. <address> may be specified as
|
||
# an IP address (first example below), a hostname (second example),
|
||
# or the special string "*", which means "any IP address" (third
|
||
# example).
|
||
#
|
||
# When a hostname is given, as in the second example below,
|
||
# Services will look up the address(es) associated with the
|
||
# hostname at startup time, and bind to every IP address found.
|
||
# This can be useful, for example, with dynamic DNS, in which
|
||
# the server's IP address changes periodically; however, the
|
||
# hostname lookup can take time--especially if there is no DNS
|
||
# server on the local network--and is susceptible to network or
|
||
# DNS server outages, so IP addresses or "*" should be used
|
||
# whenever possible.
|
||
#
|
||
# Note that many systems restrict low port numbers to the system
|
||
# administrator; in particular, Unix-like systems allow only the
|
||
# root user (UID 0) to use ports less than 1024.
|
||
|
||
#ListenTo 127.0.0.1:12701
|
||
#ListenTo services.example.net:8080
|
||
#ListenTo *:80
|
||
|
||
# ListenBacklog [REQUIRED]
|
||
# Specifies the maximum number of connections that can be received
|
||
# by the operating system without being accepted by Services (the
|
||
# second parameter, `backlog', to the listen() system call). If
|
||
# you start seeing refused or delayed connections on a busy server,
|
||
# try increasing this value.
|
||
#
|
||
# If you don't understand the above, leave this setting alone.
|
||
|
||
ListenBacklog 5
|
||
|
||
# RequestBufferSize <bytes> [REQUIRED]
|
||
# Specifies the size of the buffer allocated for each HTTP request.
|
||
# Note that this buffer is allocated for every connection, and an
|
||
# additional amount of memory will be allocated for header pointers
|
||
# (in the pathological case this extra amount could reach 4/3 of
|
||
# the value given for this directive). If a client sends a request
|
||
# (including POST data) exceeding this value, an error will be
|
||
# returned and the connection terminated.
|
||
#
|
||
# If you don't understand the above, leave this setting alone.
|
||
|
||
RequestBufferSize 4096
|
||
|
||
# MaxConnections <count> [RECOMMENDED]
|
||
# Specifies the maximum number of simultaneous connections allowed.
|
||
# If not given, no limit is placed on the number of connections;
|
||
# however, the operating system may impose its own limits, which
|
||
# are not under the control of Services.
|
||
|
||
MaxConnections 10
|
||
|
||
# MaxRequests <count> [RECOMMENDED]
|
||
# Specifies the maximum number of requests that can be made over a
|
||
# single connection before the server disconnects it. If not
|
||
# given, no limit is placed on the number of requests per
|
||
# connection; note that this may allow malicious users to interfere
|
||
# with Services' normal operations by sending large numbers of
|
||
# requests over a single connection.
|
||
|
||
MaxRequests 20
|
||
|
||
# IdleTimeout <time> [RECOMMENDED]
|
||
# Specifies the length of time a connection can be idle (not
|
||
# sending data) before it will be automatically closed. If not
|
||
# given, connections will never be closed automatically.
|
||
|
||
IdleTimeout 30s
|
||
|
||
# LogConnections [OPTIONAL]
|
||
# If given, a log message will be written for each connection to
|
||
# the server.
|
||
|
||
LogConnections
|
||
|
||
EndModule
|
||
|
||
################################ IP address authorization module
|
||
|
||
Module httpd/auth-ip
|
||
|
||
# AllowHost <path> <address> [OPTIONAL]
|
||
# DenyHost <path> <address> [OPTIONAL]
|
||
# Specifies which hosts will be allowed (or not allowed) to access
|
||
# resources provided by the HTTP server. The <path> parameter is a
|
||
# URL path (not including the "http://host.name"), and matches any
|
||
# URL which begins with the same string; for example, "/dir"
|
||
# matches both "/dir/file" and "/dirty". The <address> can be an
|
||
# IP address, a hostname (as with ListenTo in the main server
|
||
# module, all addresses associated with the hostname will be
|
||
# allowed or denied), the string "*" (which means all addresses),
|
||
# or the special format "<IP-address>/<mask>", where <mask> is an
|
||
# integer from 1 to 31 giving the number of bits in the subnet
|
||
# address, which indicates that the entire subnet of addressess
|
||
# specified should be allowed or denied; for example,
|
||
# "192.168.1.64/26" represents the range of addresses from
|
||
# 192.168.1.64 to 192.168.1.127.
|
||
#
|
||
# Examples:
|
||
# AllowHost /debug 127.0.0.1 # Allow all requests from localhost
|
||
# # to the debug page
|
||
# AllowHost / 192.168.0.0/24 # Allow any host in the 192.168.0.*
|
||
# # network access to the entire
|
||
# # server
|
||
# DenyHost / shell.example.org # Deny connections from any address
|
||
# # associated with shell.example.org
|
||
#
|
||
# Multiple AllowHost or DenyHost directives for the same path may
|
||
# be used to specify multiple addresses to allow or deny. Each
|
||
# condition will be checked in the order they are listed here, and
|
||
# the first matching one will be used. For example, these lines:
|
||
# AllowHost / 192.168.0.1
|
||
# DenyHost / 192.168.0.0/24
|
||
# deny access to all hosts in the 192.168.0.* network _except_
|
||
# 192.168.0.1. However, the reverse:
|
||
# DenyHost / 192.168.0.0/24
|
||
# AllowHost / 192.168.0.1
|
||
# simply blocks all hosts in the 192.168.0.* network, since the
|
||
# first rule matches 192.168.0.1 and the second is never checked.
|
||
#
|
||
# Access to the entire server can be allowed or denied by using the
|
||
# path "/", which matches every URL (since all URLs begin with a
|
||
# slash). Such a rule should always be included at the end of the
|
||
# rule list to explicitly indicate what should be done with
|
||
# requests that do not match any other rule; the behavior of the
|
||
# module for requests without a matching rule is undefined. For
|
||
# example:
|
||
# AllowHost / *
|
||
# or:
|
||
# DenyHost / *
|
||
#
|
||
# WARNING: Hostnames are resolved only once at startup; any changes
|
||
# in a host's IP address will not be seen by Services.
|
||
#
|
||
# Note: These directives are listed as "optional" only because the
|
||
# module will still load even if no directives are listed;
|
||
# however, unless AllowHost/DenyHost directives are given,
|
||
# the module will not have any effect.
|
||
|
||
AllowHost / *
|
||
|
||
EndModule
|
||
|
||
################################ Password authorization module
|
||
|
||
Module httpd/auth-password
|
||
|
||
# AuthName <name> [REQUIRED]
|
||
# Specifies the name to be used by the user's browser when asking
|
||
# for a password (as in "Enter username and password for <name>:").
|
||
|
||
AuthName "IRC Services"
|
||
|
||
# Protect <path> <user>:<pass> [OPTIONAL]
|
||
# Sets the URLs (paths) which will be protected by password
|
||
# authorization, and the username and password for each path. The
|
||
# username and password can be different for each path. The path
|
||
# given will match any URL beginning with that string, as with the
|
||
# auth-ip module.
|
||
#
|
||
# Examples:
|
||
# Protect /debug "debug:debug"
|
||
# Protect /~ "nickuser:nickpass"
|
||
#
|
||
# Note: This directive is listed as "optional" only because the
|
||
# module will still load even if no directives are listed;
|
||
# however, unless Protect directives are given, the module
|
||
# will not have any effect. Use a path of "/" to apply
|
||
# password protection to the entire server.
|
||
|
||
EndModule
|
||
|
||
################################ Database access module
|
||
|
||
Module httpd/dbaccess
|
||
|
||
# NOTICE: This module allows complete access to all Services data;
|
||
# be certain to protect it from unauthorized access using
|
||
# authorization modules or other means.
|
||
|
||
# Prefix <path> [REQUIRED]
|
||
# Sets the URL (path) at which database access will be accessible.
|
||
# If this does not end with a slash, one will be appended
|
||
# automatically. Access is provided using the following directory
|
||
# tree:
|
||
#
|
||
# <path>/ Main menu
|
||
# <path>/operserv/ OperServ data and menu
|
||
# <path>/operserv/akill/ Autokill list
|
||
# <path>/operserv/news/ News item list
|
||
# <path>/operserv/sessions/ Session and exception lists
|
||
# <path>/operserv/sline/ S-line lists
|
||
# <path>/nickserv/ Nickname list and information
|
||
# <path>/chanserv/ Channel list and information
|
||
# <path>/statserv/ Network statistics
|
||
# <path>/xml-export/ XML-format database download
|
||
#
|
||
# Categories for which the relevant module is not loaded will not
|
||
# be accessible.
|
||
#
|
||
# WARNING: These functions, particularly the XML export function,
|
||
# can cause Services to stop for a significant period of
|
||
# time while they are processed!
|
||
#
|
||
# This is commented out by default; make sure you implement proper
|
||
# access protection (see above) before uncommenting it.
|
||
|
||
#Prefix "/dbaccess"
|
||
|
||
EndModule
|
||
|
||
################################ Debug page module
|
||
|
||
Module httpd/debug
|
||
|
||
# DebugURL <path> [REQUIRED]
|
||
# Sets the URL (path) at which the debug page will be accessible.
|
||
# This must begin with a slash.
|
||
|
||
DebugURL "/debug"
|
||
|
||
EndModule
|
||
|
||
################################ Nick/channel redirect module
|
||
|
||
Module httpd/redirect
|
||
|
||
# NicknamePrefix <path> [OPTIONAL]
|
||
# Sets the URL (path) at which nickname redirects will be
|
||
# accessible; all characters after this prefix, up to the next
|
||
# slash, will be taken as the nickname. This must begin with a
|
||
# slash. The default value, "/~", emulates the traditional home
|
||
# page URL of "http://www.example.net/~username/". If you use a
|
||
# directory name instead, it must end with a slash, for example:
|
||
# "/nickname/". See also ChannelPrefix, below.
|
||
#
|
||
# If not set, nickname redirects will not be done.
|
||
|
||
NicknamePrefix "/~"
|
||
|
||
# ChannelPrefix <path> [OPTIONAL]
|
||
# Sets the URL (path) at which channel redirects will be
|
||
# accessible; all characters after this prefix, up to the next
|
||
# slash, will be taken as the channel name (without the leading
|
||
# "#", which cannot be used in URLs). The path must begin with
|
||
# a slash. The default value, "/channel/", gives URLs like
|
||
# "http://services.example.net/channels/channelname/" for channel
|
||
# "#channelname".
|
||
#
|
||
# If not set, channel redirects will not be done.
|
||
#
|
||
# Note: If a URL could be interpreted as both a nickname URL and a
|
||
# channel URL, the nickname will take precedence, even if it
|
||
# is not registered or does not have a URL associated with it.
|
||
|
||
ChannelPrefix "/channel/"
|
||
|
||
EndModule
|
||
|
||
################################ Top page module
|
||
|
||
Module httpd/top-page
|
||
|
||
# Filename <path> [<content-type>] [OPTIONAL]
|
||
# Sets the name of a file to be delivered as the server's top page.
|
||
# If this does not begin with a slash, then it is taken as relative
|
||
# to the Services data directory. The second parameter specifies
|
||
# the MIME content type of the file; if not given, it defaults to
|
||
# text/html.
|
||
|
||
#Filename "Top Page.txt" text/plain
|
||
#Filename /var/www/html/ircservices/top-page.html
|
||
|
||
# Redirect <URL> [OPTIONAL]
|
||
# Sets a URL to be provided as a redirect to a client accessing the
|
||
# top page. This must be a full URL, beginning with "http://" (or
|
||
# some other protocol specifier). If both Filename and Redirect
|
||
# are given, Redirect takes precedence.
|
||
|
||
#Redirect http://www.example.net/ircservices/
|
||
|
||
EndModule
|
||
|
||
###########################################################################
|
||
#
|
||
# Miscellaneous modules
|
||
#
|
||
###########################################################################
|
||
|
||
################################ DevNull settings
|
||
|
||
Module misc/devnull
|
||
|
||
# DevNullName <nick> <string> [REQUIRED]
|
||
# Specifies the nickname (first parameter) and "real" name (second
|
||
# parameter) used by the DevNull pseudoclient.
|
||
|
||
DevNullName "DevNull" "/dev/null -- message sink"
|
||
|
||
EndModule
|
||
|
||
################################ HelpServ settings
|
||
|
||
Module misc/helpserv
|
||
|
||
# HelpServName <nick> <string> [REQUIRED]
|
||
# Specifies the nickname (first parameter) and "real" name (second
|
||
# parameter) used by the HelpServ pseudoclient.
|
||
|
||
HelpServName "HelpServ" "Help Server"
|
||
|
||
# HelpDir <dirname> [REQUIRED]
|
||
# Specifies the name of the subdirectory containing help files for
|
||
# HelpServ.
|
||
|
||
HelpDir helpfiles
|
||
|
||
EndModule
|
||
|
||
################################ XML export settings
|
||
|
||
Module misc/xml-export
|
||
|
||
# This module has no configurable settings.
|
||
|
||
EndModule
|
||
|
||
################################ XML import settings
|
||
|
||
Module misc/xml-import
|
||
|
||
# OnNicknameCollision <action> [OPTIONAL]
|
||
# Specifies the action to be taken when a nickname in the data to
|
||
# import is already registered. The string must be one of either
|
||
# "skipgroup" (skip over the nickname group containing the nickname
|
||
# in the imported data), "skipnick" (skip only the colliding
|
||
# nickname), "overwrite" (drop the existing nickname), or "abort"
|
||
# (do not import any data). Note that when "abort" is selected,
|
||
# the entire XML input is still checked for errors, but Services
|
||
# will abort before actually merging any data.
|
||
#
|
||
# When using "overwrite", if a nickname group has only one nickname
|
||
# and that nickname is overwritten, the nickname group will be
|
||
# dropped as well. As a consequence, any channels owned by such a
|
||
# nickname will be dropped (or shifted to their successors) as
|
||
# well. All nicknames and channels overwritten or dropped in this
|
||
# manner will be displayed on standard error.
|
||
#
|
||
# If not specified, defaults to "skipgroup".
|
||
|
||
#OnNicknameCollision skipgroup
|
||
|
||
# OnChannelCollision <action> [OPTIONAL]
|
||
# Specifies the action to be taken when a channel in the data to
|
||
# import is already registered. The string must be one of either
|
||
# "skip" (skip over the channel in the imported data), "overwrite"
|
||
# (drop the existing channel), or "abort" (do not import any data).
|
||
# Note that when "abort" is selected, the entire XML input is still
|
||
# checked for errors, but Services will abort before actually
|
||
# merging any data. If not specified, defaults to "skip".
|
||
|
||
#OnChannelCollision skip
|
||
|
||
# ImportNews [OPTIONAL]
|
||
# Causes news items in the XML data to be imported into the
|
||
# database (normally, news items are skipped).
|
||
|
||
#ImportNews
|
||
|
||
# VerboseImport [OPTIONAL]
|
||
# Causes a detailed list of imported nicknames, channels, and other
|
||
# data to be printed to standard output.
|
||
|
||
VerboseImport
|
||
|
||
EndModule
|