###################################### # ignitionServer - ircx.conf # # Standard Server Configuration # ###################################### # Do not play with stuff in here # # unless you are sure you know what # # you're doing or else you may break # # ignitionServer! # ###################################### # ignitionServer 0.3.7 Configuration File # Lines that begin with # are comments and IGNORED by ignitionServer! # TODO: # - format X: lines like everything else ################################################### # $Id: ircx.conf,v 1.58 2004/12/27 02:26:40 ziggythehamster Exp $ ################################################### ############[ NOTICE ]############ # WE HAVE REVERTED BACK TO C: # # AND N: LINES! THIS MEANS THAT # # L: LINES WILL NO LONGER WORK! # # PLEASE READ THAT PARTICULAR # # SECTION OF THIS FILE FOR INFO # # ON HOW TO USE C: AND N: LINES. # ################################## #==========================================================================# # Basic Configuration Section # #==========================================================================# #[ M: Lines - Server Information ]########################################## # M::::: # #
# ############################################################################ # Here is where you put some witty description for your server. We use our # # MasterCard joke by default, but you could put a quote, the location/name # # of your server, etc. You also have to put the basic server info here too # ############################################################################ # Bind address is the address of the adapter to bind to. To bind to all # # adapters (normal behavior), use *. This should only be changed if you # # need to run ignitionServer on a specific adapter only (if, for example, # # your server runs in a shared environment, or your version of Windows for # # some reason doesn't allow you to bind to all adapters). If you don't # # even know what an adapter is, perhaps you should just leave it as *. :) # ############################################################################ M:ignition.servebeer.com:Ziggy's Test Server:IRCXpro - $300. Exchange - $1500. ignitionServer - Priceless.:127.0.0.1:6667 #[ A: Lines - Administrative Information ]################################## # A::: # ############################################################################ # This line sets the information that appears in /admin. Users use this # # command when they need to talk to the head cheese of the server. In some # # countries, this is required to be valid. Check your local laws. # ############################################################################ A:Some Location, Earth:George Jetson:admin@localhost #[ S: Lines - Security Settings ]########################################### # S:::::: # # :::::: # # # ############################################################################ # The security line sets limits to the length of certian strings and # # replies. Some do not yet apply. In any field, 0 means "infinite". # # NOTE: MaxListLen should always be "0" unless you are 100% sure you want # # to hide rooms! # ############################################################################ S:1024:5:10:32:150:150:150:10:150:200:0:0 #[ Y: Lines - Client Class Settings ]####################################### # Y::::: # ############################################################################ # (floodcontrol: number of seconds required between connections from the # # class in which it applies -- should be 0 unless you know its # # implications!) # # You shouldn't have to change these lines. If you do, I assume you know # # what they do... About the only thing you may want to tweak is ping time, # # which is usually 180. In PingTime/FloodControl/MaxClients, 0 means # # infinite. # ############################################################################ Y:10:180:0:100:15360 Y:100:180:0:10000:10240 #[ I: Lines - Invite Lines ]################################################ # I::::: # ############################################################################ # WARNING! DO NOT CHANGE THIS LINE UNLESS YOU ABSOLUTELY, POSITIVELY KNOW # # WHAT YOU ARE DOING! CHANGING THIS GENERIC INVITE (I:) LINE MAY CAUSE # # YOUR SERVER TO BE UNABLE TO ACCEPT INCOMING CONNECTIONS! AGAIN, DO NOT # # CHANGE THIS UNLESS YOU KNOW WHAT YOU ARE DOING! # ############################################################################ # I: lines assign users to Y: lines. You can assign based on IP address or # # hostmask. You can also say that people that match certain I: lines also # # need to specify a password (i.e. allow your local network in, but # # require a password for everyone else). If you wish to match a hostmask # # (not an IP), you need to specify "NOMATCH" as the IP to match. Host # # masks are ignored if the IP address is not set to NOMATCH and you'll # # probably go insane figuring this out. Wildcards are allowed in the IP # # address. You can only match an IP mask or a host mask. You can't combine # # the two (i.e. 12.* and *dial-access*att.net should get class 12345). You # # must match an IP mask (12.*) or a host mask (*att.net). If X:CRYPT is # # enabled, the password must be encrypted in the format specified in # # X:CRYPT. You can use PassCrypt or the server command /passcrypt to do # # this. # #~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*# # Ex: I:NOMATCH:aol:*aol.com::100 - require a password for all AOL users # ############################################################################ I:*::*::100 #==========================================================================# # Logins, UserIDs, Connections, and other related tidbits # #==========================================================================# #[ O: Lines - Operator Lines ]############################################## # O::::: # ############################################################################ #################### NEW INSTALLATIONS: PASS IS "admin" #################### ############################################################################ # Use included PassCrypt to generate passwords or log on to your server # # and type /passcrypt MD5 password (replace password with your password) # ############################################################################ # NOTE: Encrypted passwords only encrypt the passwords on disk - /oper'ing # # is still the same (/oper user pass).. And when opering, you do NOT use # # the encrypted password (in the default case, you'd still go # # /oper admin admin). # ############################################################################ # DO NOT FORGET! CHANGE THE DEFAULT PASSWORD FROM "admin" TO SOMETHING # # ELSE! YOUR SERVER **WILL** BE COMPROMISED IF YOU FAIL TO DO THIS! # ############################################################################ # NEW! You don't have to include a lot of modes now! Here's the simplified # # list: # # N - Network Administrator (NOocekbBKCRDWH) # # O - Global Operator (OocekbBKCW) # # o - Local Operator (ocekbB) # # # # In addition, you may want to add the following modes: # # s - Gets Server Messages (good idea) # # w - Gets Wallops (good idea) # # P - Is High Protected (see X:HIGHPROT) # # p - Is Low Protected (see X:LOWPROT) # # # # The following modes may or may not be automatically given to a specific # # oper level (for security reasons), but are given automatically to some # # oper levels: # # W - Can send WallOps (automatic for global oper and netadmin, unless # # mode expansion is off [then it's netadmin only]) # # H - Can /chghost and /chgnick (automatic for netadmin) # # # # Of course, you can always stick with the old long list of modes, if you # # like (or if you want to customize a particular user's privledges). To do # # this, prefix the list of modes with a dash (-). For example, to make a # # user a local operator only, their O: line might look like this: # # O:*:password:user:-o:10. The - simply tells ignitionServer to switch off # # mode expansion. # ############################################################################ # Please note: NetAdmin gets access to some really powerful commands, so # # do NOT just copy and paste the default modes from the default O: line # # for the rest of your opers! # ############################################################################ O:*:21232f297a57a5a743894a0e4a801fc3:admin:NPs:10 #[ V: Lines - Virtual Hostname Lines ]###################################### # V:::: # ############################################################################ #################### NEW INSTALLATIONS: PASS IS "admin" #################### ############################################################################ # Virtual hosts give users a special hostname instead of the one they'd # # normally get when they logon. To activate their V-Host, they should type # # /vhost , replacing with their username # # (specified here) and with their password (specified here). # # If X:CRYPT is enabled, the password must be encrypted using the right # # encryption specified. # ############################################################################ V:admin.localhost:admin:21232f297a57a5a743894a0e4a801fc3:*@localhost #[ K: Lines - Kill Lines ]################################################## # K::: # ############################################################################ # Kill lines automatically kill people who match them. For example, a K: # # line of K:*aol.com:Use your free minutes elsewhere:* kills all AOL users # # who connect to your server. You could also kill them based on what their # # ident is. This could be used to ban a floodbot that uses a known ident. # # For example, K:*:Your ident matches a floodbot:*LEET*BOT* would kill any # # user who has an ident containing LEET and BOT (in that order). This line # # would match LEET_BOT, LEET1337BOT, LEETBOT66, and many many other things # # (the allowed wildcards are * [any number of characters] and ? [any # # single character]). There are no default K: lines because banning people # # in a default configuration is discriminative ;). # ############################################################################ #[ Q: Lines - Nickname Quarantines ]######################################## # Q::: # ############################################################################ # These lines prevent certain nicknames (or wildcarded nicknames) from # # being used by normal users. In the future, this line will also support # # "jupiters", which basically prevent people from joining certain channels # # or masks of channels (prevents some bot hives). The format of this line # # is simple and should be easy to figure out based on the examples. # ############################################################################ Q::Reserved for services:ChanServ Q::Reserved for services:NickServ Q::Reserved for services:MemoServ Q::Reserved for services:OperServ Q::Reserved for services:HelpServ Q::Reserved for operators:DALnet Q::Reserved for operators:IRCop Q::Reserved for operators:Sysop* Q::Reserved for operators:Admin* Q::Reserved for operators:HelpOp* #[ Z: Lines - Connection Filters ]########################################## # Z:: # ############################################################################ # These lines filter certain IP addresses from your server. Let's say that # # you know that AT&T's IP addresses are 12.*.*.* (they are ;)), and you # # wanted all AT&T users to be unable to connect and chat. You'd use a Z: # # line. You could also use a Z: line to stop some lame server flooders for # # a while (you know, if only 12.34.56.* is flooding you). You can NOT use # # hostnames, nicknames, or idents. Z: lines ONLY match IP addresses. As # # with K: lines, there are no default ones. # ############################################################################ #[ P: Lines - Additional Ports ]############################################ # P::::: # ############################################################################ # With this line, you can make the server listen on different ports and on # # different adapters. The adapter address is simply the address of that # # adapter, as you would see in ipconfig (winipcfg on 9x/Me). If you leave # # the adapter address blank (P::::*:1234), it automatically binds to all # # adapters. It is also believed that if the adapter address is 127.0.0.1, # # it only binds to your local system (so you could connect on a different # # port from your own system). However, I'm not 100% sure (and haven't # # really tested it). At this time, Port Options must be * (that's a star). # # In the future, there'll be options like SSL, GZIP, and possibly P10. At # # this time, however, you need to put *. # #~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*# # Ex: P::192.168.0.1::*:99 -- binds to the adapter 192.168.0.1 on port 99 # ############################################################################ #[ Server Links (C: and N: lines) ]######################################### # C::::: # # N::::: # ############################################################################ # These lines enable servers to link to eachother. A C: line allows your # # IRC Operators to /connect to the server listed in the C: line. In most # # cases, it is required for linking. A N: line allows your server to # # accept connections from the server specified in the line. In all cases, # # it is required. If you are not sure how you'll be setting up your # # network, use both C: and N: lines. Both lines must have the same # # address, server name, and connection class. The password may be # # different if you wish, but make sure you set up the other end of the # # connection opposite. The password that the server expects when linking # # is the password in the N: line. The password that the server sends when # # linking is the password in the C: line. When you link multiple servers, # # the C: and N: lines must point to the opposite server. For example, if # # this server is server1.mychat.com and you want to link to # # server2.mychat.com, this server's C: and N: lines should refer to # # server2.mychat.com (C:blah:1234:server2.mychat.com......). # # server2.mychat.com's C: and N: lines should refer to this server. IRC # # Operators (with global/local routing privileges) can make one server # # connect to the other by typing /connect other_server_name_here. # #~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*# # Ex: C:127.0.0.1:1234:services.localhost:6667:100 # # N:127.0.0.1:1234:services.localhost::100 # ############################################################################ C:127.0.0.1:1234:services.localhost:6667:100 N:127.0.0.1:1234:services.localhost::100 #[ B: Lines - Bounce To Server ]############################################ # B::::: # ############################################################################ # B: lines list alternate servers that users matching the hostmask should # # use instead of this server. This is useful if you want to temporarily # # disable the server or redirect certain clients to servers that are # # geographically closer to them. If "Host Mask" is left blank, the server # # will redirect clients to the server specified when the server gets full. # # If you want to return a list of servers to the client, specify multiple # # servers with the same hostname mask. If a client matches more than one # # hostname mask, a list will be built. For example, if a client is # # "me.mychat.co.uk", a hostname mask of *.co.uk and a hostname mask of # # me.* will match the user. If this is the case, the user will be told of # # every server associated with all hostnames that the user matches (but # # not if there's a duplicate). The message from the first B: line the user # # matches will be the message sent to the user. # # # # NOTE: If a user isn't using IRCX during logon (mIRC doesn't), they will # # only get the first server listed. Only IRCX users will see a list of # # servers. The IRCX "REDIRECT" command permits multiple servers; IRC raw # # 010 doesn't. # #~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*# # Ex: B:*.co.uk:Please use our UK server:uk.mychat.com:6667 # # Ex: B::The server is full, please use server 2:server2.mychat.com:6667 # ############################################################################ #==========================================================================# # eXtended Configuration Section # #==========================================================================# #-#----------------------------------------------------------------------#-# #-# Note about eXtended Configuration Lines (X: lines): X: lines were #-# #-# created so we could have a simpler way to define extra features #-# #-# without cramming them on one line or using all of the letters #-# #-# (or worse, using a C-style configuration). The basic format of the #-# #-# X: line is: #-# #-# X:SECTION:PARAMETERS:PARAMETERS:... and so on. Most commands only #-# #-# have X:SECTION:PARAMETER and it's usually only 0 or 1. #-# #-#----------------------------------------------------------------------#-# #-{MACROS}-----------------------------------------------------------------+ # You can use some "macros" in some free text areas, like the custom auth | # notice. This is a list of them. | #==========================================================================+ # <$NET$> - Inserts the network name specified in the M: line | # <$COLON$> - Inserts a : (colon), since you can't use this character | # normally. | #-{MACROS}-----------------------------------------------------------------+ #[ /die and /restart passwords ]############################################ # This section sets the password that the commands /die and /restart # # expect to receive. They can only be one word long, and if MD5 password # # encryption is enabled, these passwords must be MD5 as well. The /die and # # /restart commands require the usermode +D and +R respectively before # # they can be used. # ############################################################################ X:DIEPASS:81b63b9d54b303edeaf9765a6915ee13 X:RESTARTPASS:8a7ef1c3e82395341b7000b79c239eb4 #[ X:DIE - Force configuration of your server ]############################# # X:DIE forces you to configure your server. If you don't open ircx.conf # # and change this, the server will fail to start and prevent users from # # connecting -- it will say "Server Misconfigured". Set X:DIE to ANYTHING # # except 1. If you've already made the mistake of starting ignitionServer # # without configuring it, you will have to hit Ctrl-Alt-Delete and kill # # the ignitionServer process. Under most circumstances, you can skip this # # step and just connect to the server at localhost and the server will # # automatically reload the configuration. If this does not happen, you # # must kill it as previously mentioned and then start it up again. Next # # time, read the readme before attempting to use it :) # ############################################################################ X:DIE:0 #[ Offline Mode ]########################################################### # Offline mode can be used in a network to temporarily disable a server # # for updates, floods, or other reasons. When the server is brought # # offline by rehashing the server, the users currently on the server are # # not removed from the server. So, this could be used to make a "private # # meeting" server. # # OFFLINEMODE: # # 0 - (default) disable offline mode # # 1 - enable offline mode # # OFFLINEMESSAGE - message to send to users when the server is offline # ############################################################################ X:OFFLINEMODE:0 X:OFFLINEMESSAGE:This server is offline. Sorry. #[ Custom Authentication Notice ]########################################### # When clients connect, they receive the standard "If you get errors due # # to ping timeouts..." message. By setting this, you can cause another # # notice to get sent with a custom message. Usually it's a "Welcome to X # # network, visit us at address" or something similar. # ############################################################################ X:CNOTICE:Welcome to the <$NET$> IRC Network, powered by ignitionServer<$COLON$> http<$COLON$>//www.ignition-project.com/ignition/server/ #[ DNS Masking ]############################################################ # X:MASKDNS provides security for your users by masking their DNS. # # Values: # # 0 - (default) no mask # # 1 - MD5 sum mask (makes DNS look like this: # # 421AA90E079FA326B6494F812AD13E79) # # 2 - Hostname mask. X:HOSTMASK must be set or it will use the default. # # See X:HOSTMASK for more information # ############################################################################ X:MASKDNS:0 #HIGHPROT & LOWPROT - Selects mode to be set on join for opers with P(High Prot) or p(Low Prot) #Options #Q - Auto Set +q on-oper-join #O - Auto set +o on-oper-join #V - Auto set +v on-oper-join #NORM - No mode set on-oper-join X:HIGHPROT:Q X:LOWPROT:O #HOSTMASK - Used for MASKDNS(option 2). Users will get mask of . e.g. DigiGuy.Users.ignition-project.com X:HOSTMASK:users.localhost #SERVERLOCATION - Lets you specify where the server is located (many times this is the same as the admin location.. however, this could be more generalized [like Oklahoma, US]) X:SERVERLOCATION:Unique Location, The World #CRYPT - PassWord encryption (Set to "0" for None or "MD5" for MD5 encryption, use /passcrypt or ignitionServer PassCrypt to generate password) X:CRYPT:MD5 #REMOTEPASS - Remote administration password -- coming soon :) [just ignore this] X:REMOTEPASS:098f6bcd4621d373cade4e832627b4f6 #ALLOWMULTIPLE - Allow multiple instances of ignitionServer; ADVANCED FEATURE! Only set to 1 if you know what you're doing. #notes: You should not set this to 1 unless you are wanting to run more than one copy of ignitionServer on the same machine. Additionally, the monitor # will not function as expected when this is on. Again, it is an ADVANCED FEATURE and is only designed for system administrators who know what they're doing. # (you could use this to bind different servers to different interfaces and essentially serve infinite servers on infinite IPs.. if you were a web host # for example) X:ALLOWMULTIPLE:1 #GAGMODE - Set how gag (usermode +z) functions # 0 - Do not show the user getting gagged that they are getting gagged (IRCX defined method) # 1 - Show the user getting gagged they are getting gagged # 2 - Do not show the user getting gagged and do not bounce messages (the user will not see any messages bounce and will likely blame it on the server) X:GAGMODE:0 #IRCXMETHOD - Set how to send IRCX-specific raws # 0 - Use "Transitional" compatibility -- for replies that have an IRCX equavilent, send the RFC1459 reply # 1 - Use "IRCX" compatibility -- for replies that have an IRCX equavilent, send RFC1459 clients the RFC1459 reply and IRCX clients the IRCX reply # 2 - Both -- send both the IRCX reply and the RFC1459 reply to all clients. Ensures the most compatibility, but causes some IRCX-compatible clients to show messages twice (mIRC for example) #- NOTE - #When setting MODE +k, it will always get sent. In this case, only both and IRCX/Strict have an effect (when setting PROP MEMBERKEY, however, it is normal) X:IRCXMETHOD:0 #REGCHANMODE - Set whether or not registered channels are handled as persistant # 0 - Registered channels always stay open # 1 - Registered channels never stay open # 2 - Registered channels with mode +R always stay open; all others do not X:REGCHANMODE:0 #ERRORLOG - Set options that enable or disable the error log (outputs to errorlog.txt) # 0 - Disable the error log (not reccommended) # 1 - Enable the error log (only logs fatal exceptions and regular errors; recommended) X:ERRORLOG:1 #AUTOVHOST - Automatically give operators VHosts if a VHost exists with the same username and password as the oper # 0 - Disable AutoVHost # 1 - Enable AutoVHost (if a VHost doesn't exist for a particular operator, they won't get a VHost) X:AUTOVHOST:1 #CREATEMODE - Control who can create channels # 0 - (default) All users can create channels # 1 - Only IRC operators can create channels # 2 - Only IRC operators and +r (registered/identified) users can create channels X:CREATEMODE:0 #MONITORIP - (advanced) Change the IP address that the server expects the monitor from. Mostly useful for Windows Server 2003 users. # Default: 127.0.0.1 # Change ONLY if you know what you're doing! X:MONITORIP:127.0.0.1 #STATICCHAN - Create static channels that can be automatically joined when users connect # Parameters: # X:STATICCHAN:#ChannelName:AutoJoin # If AutoJoin is 0, the channel is not automatically joined # If AutoJoin is 1, the channel is joined automatically when users connect # You can have more than one static channel, just add more than one X:STATICCHAN line. Here is an example: # X:STATICCHAN:#Lobby:1 # X:STATICCHAN:#Test:0 # Static channels should be used sparingly, because they aren't as dynamic as regular channels. Static channels do not have # owners/hosts/voices, but opers who have lowprot/highprot get whatever mode is associated with lowprot/highprot. For example, # if X:HIGHPROT: is set to Q, opers with +P will be an owner in a static channel. Basically, static channels are for channels # that you want to be mainly oper-controlled, and that you optionally want to be joined when people connect. A good use for static # channels are lobby channels. #LOGGING - Configure what stuff is logged # 0 - (default) log nothing # 1 - Log channel conversations # 2 - Log channel conversations and whispers # 3 - Log channel conversations, channel whispers, and private messages # WARNING: IT MAY BE ILLEGAL IN YOUR STATE OR COUNTRY # TO LOG CHATS. PLEASE CONSULT A LEGAL ADVISOR BEFORE # ENABLING THIS FEATURE. # NOTE: Only conversations and JOIN/PART/KICK are logged at this time. X:LOGGING:0 # Congratulations! You're done!