Skip to content
Snippets Groups Projects
Commit 636a0184 authored by cyan's avatar cyan
Browse files

Rewrote the default ircd.conf from scratch to be Synchronet IRCd specific and...

Rewrote the default ircd.conf from scratch to be Synchronet IRCd specific and documented inside the file.
parent 7924d4da
No related branches found
No related tags found
No related merge requests found
# $Id$
#
# ircd.conf.example
# ircd.conf - Synchronet IRCd default configuration file by Randy Sommerfeld.
#
# For use with the Synchronet IRC daemon, based off of ircd.conf from
# Bahamut 1.4
# *** The format of this file is very similar to that of the configuration file
# used by Bahamut and other IRC daemons out there. You should be able to
# take a Bahamut ircd.conf and allow Synchronet IRCd use it as-is, other
# configs will need a little editing, first.
#
# --- This file supports tokens. The supported tokens are:
# *** If you're new to IRC or configuring the IRCd, please read the enclosed
# comments very carefully. Wrong configuration options in this file will
# destabalize your server, or at worst crash the IRCd. You've been warned.
#
# SYSTEM_HOST_NAME Your system hostname as defined in scfg
# SYSTEM_NAME Your BBS name as defined in scfg
# SYSTEM_QWKID Your QWKID as defined in scfg
# VERSION_NOTICE The short form Synchronet version notice
# *** Unlike the traditional ircd, which reads the configuration file from the
# bottom up, we read this file from the top down.
#
# ---
# *** This file supports some basic tokens. The supported tokens are:
#
# SYSTEM_HOST_NAME Your system hostname as defined in scfg
# SYSTEM_NAME Your BBS name as defined in scfg
# SYSTEM_QWKID Your QWKID as defined in scfg
# VERSION_NOTICE The short form Synchronet version notice
# QWK_PASSWORD Your QWK network password as defined
#
# M: {MANDATORY} - This line sets the server name and description.
########## M:Line ## Required ## Compatibility: 'IP' unused
# This line configures what your server name and description are set to.
# If you're running the IRCd standalone from jsexec, you can also define what
# port it uses to accept connections on, also. If you're connecting to the
# Synchronet IRC Network, your server name must be your 'qwkid.synchro.net'
# hostname, and that host must point to the IP address that the IRCd will be
# running on.
#
# {M:Line Syntax}
# M:Hostname:IP(Unused):Server Description:Port(Unused)
# M:hostname:ip(Unused):description:port
#
M:SYSTEM_QWKID.synchro.net:*:SYSTEM_NAME:*
#
########## A:Line ## Required ## Compatibility: FULL
# This line defines what sort of information is returned when a user uses
# the /ADMIN command. It's intended to provide some sort of useful information
# about who runs the server. By default, it'll display some information about
# your BBS. The final string MUST be a valid contact email address.
#
# A: {MANDATORY} - This line provides your administrative information, such as
# contact addresses. This informationis viewed with /admin <server>. The
# last part of your admin info MUST be a valid email address as per RFC1459.
# A:line1:line2:contact email
#
A:SYSTEM_NAME (SYSTEM_QWKID):VERSION_NOTICE:Sysop- <sysop@SYSTEM_HOST_NAME>
#
#
# Y: {SUGGESTED} - These lines define connection classes, which allow you to
# fine-tune client and server connections. Clients and servers should be
# placed in seperate classes, and eachset of servers should have their own
# class. You may also wish to seperate clients into seperate classes based
# on location.
#
# The class numbers are not arbitrary. In auto-connecting servers, the higher
# number, the higher the auto-connect priority.
#
# {Y:Line Syntax}
# Y:Class Number:Ping Frequency:Connect Frequency:Maximum Links:SendQ
#
# Ping Frequency - The amount of time (in seconds) that the server will wait
# before dropping the connection with Ping Timeout.
#
# Connect Frequency - The amount of time between attempts to connect to servers
# in that class. Set this to 0 for client Y:Lines.
#
# {Synchronet} Y:Lines are unsupported as of version 1.0, but will be in the
# future.
#
# Class 50 - Hub to hub, autoconnect
Y:50:90:600:1:20000000
# Class 51 - Hub to EU hub, autoconnect
Y:51:180:600:1:20000000
# Class 33 - Hub to AS leaf
Y:33:240:0:0:15000000
# Class 32 - Hub to EU leaf
Y:32:180:0:0:15000000
# Class 30 - Hub to US leaf
Y:30:90:0:0:15000000
# Class 10 - for known Operators
Y:10:400:100:100:2000000
# Class 1 - Normal Users
Y:1:400:100:100:1000000
#
#
# I: {MANDATORY} - These lines are client-authorization lines. Without them,
# clients will be unable to connect to your server. Wildcards are permitted.
# You may also require a password or port to connect, but are optional.
#
# Ident (RFC 1413) can also be used by placing a @ in the appropriate fields.
#
# {I:Line Syntax}
# I:IP Address Mask:Password:Domain-Mask:Port:Connection Class
#
# {Synchronet} I:Lines are unsupported as of 1.0, however they MAY be added
# in the future.
#
# Standard I:Line allowing anybody to connect to the server:
########## Y:Line ## Suggested ## Compatibility: FULL
# Y:Lines allow you to define 'IRC classes' that are assigned to users
# and servers when they connect. It allows you to choose how long a connection
# can idle before the server sends a PING, how often your IRCd will attempt to
# auto-connect to uplink servers, the maximum number of clients allowed per
# IRC class, and the maximum 'sendq' that a user can have before they get
# disconnected for having excessive amounts of data waiting to be pushed.
#
# Y:class number:ping frequency:connect frequency:maximum links:sendq
#
#Class 1: Normal users coming in from the net
Y:1:120:0:100:1000000
#Class 2: Users coming in from the local BBS
Y:2:30:0:100:1000000
#Class 10: IRC operators
Y:10:400:0:100:2000000
#Class 30: Leaf->Hub connections
Y:30:60:300:1:15000000
#Class 40: Hub->Hub connections
Y:40:90:60:10:20000000
#Class 50: Hub->QWK Master connections
Y:50:90:60:1:20000000
#
########## I:Line ## Required ## Compatibility: FULL
# When a regular user connects, the IRCd will match them against this
# list of I:Lines until it finds a match. The IRCd will stop searching when it
# finds a match, so you'll want to list your most exclusive lines first, and
# then the most generic line last. You may also define that a particular
# password be required to connect for certain hosts, or that they connect to
# a particular port. Matching users will be thrown into a particular IRC
# class as defined by the above Y:Lines.
#
# I:ip mask:password:hostmask:port:irc class
#
#BBS users
I:*@127.0.0.1::*@SYSTEM_QWKID.synchro.net::2
#everyone else
I:*@*::*@*::1
#
# Oper Hostmasking I:Line requiring the user to connect on a specific port (ie.
# 7139), and provide the correct password (ie. $packWitU:opernick:operpass):
#I:*@*:oper.$packWitU:*@*:7149:10
#
# Putting NOMATCH in the first field will stop the ircd from matching against
# the IP, and will force it to match against the hostname.
I:NOMATCH::rmiller@glass.toledolink.com::1
#
#
# O: {OPTIONAL} - These lines define IRC Operator access.
#
# If the user issuing the oper command is not coming from the hostname defined,
# the user will receive the error message "No O:Lines for your host". The class
# field denotes the Y:Line class that you want the user to end up in after
# they've successfully issued the /oper command.
#
# {Synchronet} All opers have global operator privledges. This may change
# in the future, however, as of 1.0 per-operator flags (such as in Bahamut)
# are unsupported.
########## O:Line ## Optional ## Compatibility: EXTENDED
# These define who will be able to use the /OPER command to gain special
# IRC operator access to your server. This should not be done lightly, as an
# operator can cause considerable damage to the network, thus care should be
# taken to secure these lines as much as possible. In particular, if the user
# is registered with the BBS, you shouldn't use wildcards in the username
# portion so that they're forced to ident via their BBS password, and then
# via their defined /OPER password.
# Several flags may be used to greater fine-tune the type of access that
# each operator has. Note that if you're only a leaf server on the Synchronet
# IRC network, your access will be limited to the equivalent of an 'o' flag.
#
# FLAG COMMAND NOTES
# r /REHASH
# R /RESTART
# D /DIE
# g /GLOBOPS
# w /WALLOPS
# l /LOCOPS
# c /SQUIT + /CONNECT Can only SQUIT or CONNECT locally.
# C /SQUIT + /CONNECT SQUIT or CONNECT servers globally.
# k /KILL Can only KILL locally.
# K /KILL Allow global kills.
# b /KLINE
# B /UNKLINE
# n /NOTICE $servername Global messages to local server only.
# N /NOTICE $*.synchro.net Allow messages across whole network.
# A -- Unavailable in Synchronet IRCd as of latest version --
# a -- Unavailable in Synchronet IRCd as of latest version --
# u -- Unavailable in Synchronet IRCd as of latest version --
# f -- Unavailable in Synchronet IRCd as of latest version --
# F -- Unavailable in Synchronet IRCd as of latest version --
# s /CHATOPS
# x /DEBUG + /EVAL
# o "Local Operator" which is inclusive of flags: rgwlckbBnuf
# O "Global Operator" which is inclusive of flags: oCKNs
# S Check password against the BBS system password.
#
# Note that the flags 'R', 'D', and 'x' do not appear in any of 'o' or
# 'O', and must be explicitly defined. Note that /DEBUG and /EVAL (the 'x'
# flag) are particuarily dangerous commands and should not be enabled unless
# you're sure of what you're doing. The 'S' flag is a special flag which will
# check against the BBS system password instead of the defined O:Line password.
#
# A user who successfully uses the /OPER command will be assigned their
# new IRC class as defined by the relevant Y:Line. A user who does not
# succeed in an /OPER attempt will have that attempt logged and broadcast
# locally.
#
# O:hostmask:password:nick:flags:irc class
#
O:*@SYSTEM_QWKID.synchro.net:*:Sysop:OS:10
O:bbsuser@*.somebbs.com:mypa$$word:Joe:o:10
#
########## U:Line ## Optional ## Compatibility: FULL
# A U:Line is a special kind of line that defines which servers on the
# network are allowed to send unchecked MODE commands among other 'special'
# services commands (AKILL, et al). If you're linking to the Synchronet IRC
# this must be set to 'services.synchro.net'. Otherwise it should be set to
# whichever server will be hosting 'services' such as ChanServ, MemoServ,
# NickServ, or similar.
#
# U:server name:*:*
#
# {O:Line Syntax}
# O:Hostname:Password:Nickname:AccessFlags(Ignored):Class
#
O:*@SYSTEM_HOST_NAME:SYSTEM_PASSWORD:Sysop:*:10
O:*jdoe@*.generic.com:j0hnsPa$$:john:*:10
#
#
# U: {OPTIONAL} - This line defines servers that are allowed to make changes to
# the IRC environment (ie. mode changes), without obstructing them.
#
# {U:Line Syntax}
# U:Server Name:Unused:Unused
#
# {Synchronet} The following U:Line is required to connect to the Synchronet
# IRC network.
U:services.synchro.net:*:*
#
########## X:Line ## Optional ## Compatibility: FULL
# This is a simple line that adds an extra parameter (a password) to the
# /DIE and /RESTART commands respectively. This is in addition to the regular
# IRC operator requirement and the relevant 'D' and 'R' flags on the O:Line.
#
# X: {SUGGESTED} - This line defines the passwords required for an oper to
# /restart or /die the server, in addition to them having the R or D flags in
# their O:Line.
#
# {Synchronet} Unsupported as of 1.0
#
# {X:Line Syntax}
# X:diepass:restartpass
#
#
# C: {NETWORKED} - These lines define what servers your server tries to connect
# to.
#
# N: {NETWORKED} - These lines define what servers are permitted to initiate
# connections to your server.
#
# C/N Lines MUST be used in pairs. One cannot be used without the other.
#
# Both the C:Line's port field and the N:Line's flag field may be left blank.
# If a port is specified in the C:Line, your server will auto-connect.
#
# {Synchronet} Currently, Synchronet IRCD does not accept any flags, and
# definitely does NOT accept Bahamut 'E' or 'Z' connections (encrypted
# and/or gzipped.)
#
# {C/N:Line Syntax}
# C:Remote Hostname:Password:Remote Servername:Port:Class
# N:Remote Hostname:Password:Remote Servername:Flags:Class
#
C:127.0.0.1:password:bahamut.synchro.net::30
N:127.0.0.1:password:bahamut.synchro.net::30
C:127.0.0.1:password:services.synchro.net::30
N:127.0.0.1:password:services.synchro.net::30
#
#
# K: {OPTIONAL} - A simplified K:Line as per Synchronet, this is what you
# define to keep certain users from connecting to your server. TEMPORARY
# K:Lines may be added via the IRC operator /KLINE command, but they are not
# saved on the fly. Thus, all permanent K:Lines must be placed here by hand.
# Bahamut-style kline.conf is NOT supported.
#
# {K:Line Syntax}
# K:hostmask:reason for kline
#
K:*@*.lamers.com:No lamers allowed
K:*root@*:For your own protection, don't IRC as root.
#
# q: {OBSOLETE} - q:lines have been removed from bahamut.
#
# Q: {OPTIONAL} - These lines prevent users on your server from using certain
# nicknames. These are 'reserved' nick names that should not be taken by
# normal users. * and ? wildcards are allowed inside the nickname field.
#
# {Q:Line Syntax}
# Q:*:Reason:Nickname
#
# {Synchronet} These Q:Lines are required to link to the Synchronet IRC
# network.
#
Q::Reserved for Services:*Serv
Q::Reserved for Services:Global
Q::Reserved for Operators:IRCop
Q::Reserved for Sysop:Sysop
#
#
# Z: {DISCOURAGED} - These lines block ALL incoming connections from a certain
# IP address mask. They are more powerful than K:Lines because they stop users
# before they've had a chance to register. This works on servers too, so be
# VERY careful! These lines should be used as a LAST RESORT!
#
# Z:lines do NOT work on hostnames.
#
# {Z:Line Syntax}
# Z:IP:Reason for zapping:*
#
Z:0.0.0.0:Bogus/Spoofed IP:*
#
# X:die password:restart password
#
#X:diepass:restartpass
#
########## C:Line + N:Line ## Optional ## Compatibility: EXTENDED
# These lines define what servers you will be connecting to (C:Line) and
# receiving connections from (N:Line). C and N:Lines must always occur in
# pairs, even if you'll only ever be connecting in one direction. If you
# define a port on the C:Line, the IRCd will use the relevant IRC class (as
# defined on Y:Lines above) to auto-connect at the configured interval.
#
# H: {OPTIONAL} - These lines define who you allow to act as a hub. The first
# field may use wildcards, and the third field MUST be an exact match for a
# server's name (NOT the server's hostname!).
# Synchronet IRCd also supports certain flags on the N:Line for
# determining certain types of behaviour.
#
# FLAG DESCRIPTION
# t Server is a 'time master' to synchronize time from.
# q Use the relevant server's local QWK password to authenticate.
# c Server is allowed to send special 'CLINE' command.
#
# {H:Line Syntax}
# H:Servers which are permitted::Hub Servername
H:*::vert.synchro.net
H:*::rrx.synchro.net
# C:hostname or ip address:password:server name:port:irc class
# N:hostname or ip address:password:server name:flags:irc class
C:vert.synchro.net:QWK_PASSWORD:vert.synchro.net:6667:30
N:vert.synchro.net:QWK_PASSWORD:vert.synchro.net:t:30
#C:rrx.synchro.net:password:rrx.synchro.net::30
#N:rrx.synchro.net:password:rrx.synchro.net::30
#
########## K:Line ## Optional ## Compatibility: CUSTOM
# These are the infamous K:Lines (or 'kill' lines) which let you decide
# what hostmasks should be banned from your server. The format of this command
# differs from the standard ircd's, and 'kline.conf' (as per Bahamut 1.4) is
# not supported at this time.
#
# P: {SUGGESTED} - This line allows the server to listen on various additional
# ports other than what was defined in your Synchronet services config file.
# K:banmask:reason
#
# {Synchronet} This is currently unsupported as of 1.0, but may be in the
# future.
K:*.whitehouse.gov:Obviously bogus domain.
K:~root@*:For your protection, don't IRC as root.
#K:~*@*:Only users who have registered with the BBS may connect
#
# {P:Line Syntax}
# P:Remote IP:Local IP:Unused:Port
########## Q:Line ## Suggested ## Compatibility: FULL
# Q:Lines allow you to restrict what nicknames may be used on your
# server. If you're linking to the Synchronet IRC Network, these Q:Lines as
# defined are required. A user trying to /NICK over to these nicknames or
# register with a nick that matches a mask here will be given the reason as
# defined for having their change request denied.
#
#P:*:*::6667
# Q:*:reason:nickmask
#
Q:*:Reserved for Services:*Serv
Q:*:Reserved for Services:Global
Q:*:Reserved for Operators:IRCop
Q:*:Reserved for Sysop:Sysop
#
# E: {DISCOURAGED} - These lines bypass K:Lines for matching clients.
# Username is optional.
########## Z:Line ## Optional ## Compatibility: FULL
# This is to be considered a 'last resort' type of line that will ban
# users from your server based on IP address only. The users will be dropped
# from the server as fast as possible without any processing having been done.
# This is useful if you're being DOS attacked from a certain IP or range.
# Be careful with Z:Lines, as you cuold possibly be banning servers wishing to
# connect to you.
#
# Don't use these if you can avoid it! Services will fight with them!
# Z:ipmask:reason:*
#
# {Synchronet} Unsupported as of 1.0, no plans to add this line in the
# immediate future.
Z:0.0.0.0:Obviously bogus IP address:*
#
# {E:Line Syntax}
# E:Hostmask:Unused:Username
########## H:Line ## Optional ## Compatibility: EXTENDED
# This line has a special meaning for the Synchronet IRCd, in particular
# it defines which servers are considered to be 'full hubs' and have the
# responsibility of managing synchronization and control issues. Hubs are also
# allowed to have servers connect 'behind' them.
#
#E:*.twcny.rr.com::ayukawa
# H:servermask permitted behind:*:server name
#
H:*:*:vert.synchro.net
H:*:*:freebsd.synchro.net
H:*:*:rrx.synchro.net
#An example H:Line which would allow france.synchro.net to connect only *.fr
#servers to the network.
#H:*.fr:*:france.synchro.net
#
# F: {DISCOURAGED} - These lines bypass K:Lines and also class limits for
# matching clients. Username is optional.
########## P:Line ## Optional ## Compatibility: FULL
# This is a simple type of line that tells the IRCd to listen on
# additional ports other than what was defined on the M:Line (if you're running
# from jsexec) or inside the Synchronet services configuration. One port per
# line.
#
# Don't use these if you can avoid it! Services will fight with them!
# P:*:*:*:port
#
# {Synchronet} Unsupported as of 1.0, no plans to add this line in the
# immediate future.
#P:*:*:*:7000
#P:*:*:*:6666
#
# {F:Line Syntax}
# F:Hostmask:Unused:Username
########## E:Line ## UNSUPPORTED ## Compatibility: UNSUPPORTED
# This is an 'exemption' line which will allow users to slip through
# K:Lines. These should be as specific as possible.
# Currently, E:Lines are unsupported by the Synchronet IRCd.
#
#F:*.twcny.rr.com::*
# E:hostmask:*:username mask
#
#E:*.shawcable.net:*:cyan
#
# T: {OPTIONAL} - These lines override the default proxy monitor information.
# You should only have one T:Line. If either field is left empty, the default
# will be used.
########## F:Line ## UNSUPPORTED ## Compatibility: UNSUPPORTED
# Another exemtion line, this is virtually identical to an E:Line except
# that an F:Line will also bypass the defined IRC class limits in addition to
# allowing a user to slip through a K:Line.
# Currently, F:Lines are unsupported by the Synchronet IRCd.
#
# F:hostmask:*:username mask
#
# Note: http:// is automatically prefixed on the specified URL
#F:*.synchro.net:*:*digtlman
#
# {Synchronet} Proxy monitoring is unsupported as of 1.0, but may be in the
# future. This is probably something that should be done at the services
# level as opposed to the server level.
########## T:Line ## UNSUPPORTED ## Compatibility: UNSUPPORTED
# A simple line that defines the hostname where proxy scans will
# originate from. A message is displayed to the user upon connect containing
# the URL as defined here pointing them towards more information.
# The http:// is automatically prefixed on the defined URL.
#
# {T:Line Syntax}
# T:Hostname:URL
# T:hostname:url
#
#T:monitorbot.synchro.net:www.synchro.net/proxies
#T:rrx.synchro.net:www.synchro.net/proxyscan
#
# End ircd.conf.example
##EOF##
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment