loadmodule "src/modules/commands.so"; loadmodule "src/modules/cloak.so"; include "help.conf"; include "badwords.channel.conf"; include "badwords.message.conf"; include "badwords.quit.conf"; include "spamfilter.conf"; drpass { restart "*********"; die "*********"; }; class clients { pingfreq 180; maxclients 500; sendq 100000; recvq 8000; }; class servers { pingfreq 90; maxclients 100; /* Max servers we can have linked at a time */ sendq 1000000; connfreq 100; /* How many seconds between each connection attempt */ }; class administrators { pingfreq 180; maxclients 999; sendq 100000; recvq 30000; }; class operators { pingfreq 180; maxclients 999; sendq 100000; recvq 30000; }; /* * NEW: me {} * OLD: M:Line * me {} defines the name, description and unreal server numeric for * this server. Syntax is as follows: * me { * name "server.name"; * info "Server Description"; * numeric (server numeric*); * }; * If linking, this numeric may not be used by any other server on the network. */ me { name "Lockheed.il.us.BoltIRC.co.nr"; info "The Bolt will stike you from the heavens"; numeric 1; }; /* * NEW: admin {} * OLD: A:Line * Admin gives information on the server admin. you * may put as many lines under admin { as you wish. * Syntax is as follows: * admin { * "first line"; * "second line"; * [etc] * }; */ admin { "Jan Stankiewicz"; "Stanko"; "Jan.Stankiewicz@hotmail.com"; }; oper Stanko { class clients; from { userhost Stanko@administrator.BoltIRC.co.nr; userhost Stanko@cliente-60708.iberbanda.es; }; password "****************"; flags { netadmin; can_zline; can_gzline; can_gkline; global; can_override; can_setq; can_die; helpop; can_localroute; can_globalroute; can_localkill; can_globalkill; can_kline; can_unkline; can_localnotice; can_addline; can_dccdeny; get_host; get_umodew; can_rehash; }; }; /* * NEW: class {} * OLD: Y:line (old was confusing) * These define settings for classes. A class is a group setting for * connections. Example, server connections, instead of going to a client's * class, you direct it to the server class. Syntax is as follows * class (class name) * { * pingfreq (how often to ping a user/server in seconds); * maxclients (how many connections for this class); * sendq (maximum send queue from a connection); * recvq (maximum receive queue from a connection [flood control]); * }; */ class clients { pingfreq 90; maxclients 500; sendq 100000; recvq 8000; }; class servers { pingfreq 90; maxclients 10; /* Max servers we can have linked at a time */ sendq 1000000; connfreq 100; /* How many seconds between each connection attempt */ }; /* * NEW: allow {} * OLD: I:Line * This defines allowing of connections... * Basically for clients, it allows them to connect so you can have some * control and/or set a password. * Syntax is as follows: * allow { * ip (ip mask to allow); * hostname (host mask); * class (class to send them to [see class {}]); * password "(password)"; (optional) * maxperip (how many connections per ip); (optional) * }; */ allow { ip *@*; hostname *@*; class clients; maxperip 2; }; /* * NEW: allow channel {} * OLD: chrestrict * Allows a user to join a channel... * like an except from deny channel. * Syntax: * allow channel { * channel "channel name"; * }; */ allow channel { channel "#Stanko"; }; /* * NEW: oper {} * OLD: O:Line * Defines an IRC Operator * IRC operators are there to keep sanity to the server and usually keep it * maintained and connected to the network. * The syntax is as follows: * oper (login) { * class (class to put them in, if different from I, moves them to new * class); * from { * userhost (ident@host); * userhost (ident@host); * }; * flags * { * (flags here*); * }; * OR * flags "old type flags, like OAaRD"; * }; */ /* For a list of oper flags, see doc/unreal32docs.html#operblock * [HIGHLY recommended to read] */ /* * NEW: listen {} * OLD: P:Line * This defines a port for the ircd to bind to, to * allow users/servers to connect to the server. * Syntax is as follows: * listen (ip number):(port number) * { * options { * (options here); * }; * }; * or for a plain * listen: listen (ip):(port); * * NOTICE: for ipv6 ips (3ffe:b80:2:51d::2 etc), use listen [ip]:port; * * That works also. */ /* Options for listen: OLD | NEW S serversonly C clientsonly J java s ssl * standard */ listen 66.160.197.251:6697 { options { clientsonly; }; }; listen 66.160.197.251:6666; listen 66.160.197.251:6667; /* NOTE: If you are on an IRCd shell with multiple IP's you are * likely to get 'Address already in use' errors in your log * and the ircd won't start. This means you MUST bind * to a specific IP instead of '*', so for example: * listen 1.2.3.4:6667; * Obviously, replace the IP with the IP that was assigned to you. */ ulines { services.BoltIRC.co.nr; stats.BoltIRC.co.nr; }; log "ircd.log" { /* Delete the log file and start a new one when it reaches 2MB, leave this out to always use the same log */ maxsize 2097152; flags { oper; kline; connects; server-connects; kills; errors; sadmin-commands; chg-commands; oper-override; spamfilter; }; }; // This points the command /nickserv to the user NickServ who is connected to the set::services-server server alias NickServ { target "NickServ"; type services; }; // If you want the command to point to the same nick as the command, you can leave the nick entry out //alias ChanServ { type services; }; // Points the /statserv command to the user StatServ on the set::stats-server server //alias StatServ { type stats; }; // Points the /superbot command to the user SuperBot //alias SuperBot { type normal; }; /* Standard aliases */ alias NickServ { type services; }; alias ChanServ { type services; }; alias OperServ { type services; }; alias HelpServ { type services; }; alias StatServ { type stats; }; alias "identify" { format "^#" { target "chanserv"; type services; parameters "IDENTIFY %1-"; }; format "^[^#]" { target "nickserv"; type services; parameters "IDENTIFY %1-"; }; type command; }; /* Standard aliases */ alias "services" { format "^#" { target "chanserv"; type services; parameters "%1-"; }; format "^[^#]" { target "nickserv"; type services; parameters "%1-"; }; type command; }; alias "identify" { format "^#" { target "chanserv"; type services; parameters "IDENTIFY %1-"; }; format "^[^#]" { target "nickserv"; type services; parameters "IDENTIFY %1-"; }; type command; }; /* This is an example of a real command alias */ /* This maps /GLINEBOT to /GLINE 2d etc... */ alias "glinebot" { format ".+" { command "gline"; type real; parameters "%1 2d Bots are not allowed on this server, please read the faq at http://www.example.com/faq/123"; }; type command; }; /* * NEW: ban nick {} * OLD: Q:Line * Bans a nickname, so it can't be used. * Syntax is as follows: * ban nick { * mask "(nick to ban)"; * reason "(reason)"; * }; */ ban nick { mask "*C*h*a*n*S*e*r*v*"; reason "Reserved for Services"; }; ban server { mask eris.berkeley.edu; reason "Get out of here."; }; ban realname { mask "Swat Team"; reason "mIRKFORCE"; }; ban realname { mask "sub7server"; reason "sub7"; }; /* * NEW: deny dcc {} * OLD: dccdeny.conf * Use this to block dcc send's... stops * viruses better. * Syntax: * deny dcc * { * filename "file to block (ie, *exe)"; * reason "reason"; * }; */ deny dcc { filename "*sub7*"; reason "Possible Sub7 Virus"; }; /* * NEW: deny channel {} * OLD: N/A (NEW) * This blocks channels from being joined. * Syntax: * deny channel { * channel "(channel)"; * reason "reason"; * }; */ /* You can include other configuration files */ /* include "klines.conf"; */ /* Network configuration */ set { network-name "BoltIRC"; default-server "irc.BoltIRC.co.nr"; services-server "services.BoltIRC.co.nr"; stats-server "stats.BoltIRC.co.nr"; help-channel "#BoltIRC"; hiddenhost-prefix "cloaked-"; /* prefix-quit "no"; */ /* Cloak keys should be the same at all servers on the network. * They are used for generating masked hosts and should be kept secret. * The keys should be 3 random strings of 5-100 characters * (10-20 chars is just fine) and must consist of lowcase (a-z), * upcase (A-Z) and digits (0-9) [see first key example]. */ cloak-keys { "aoAr1HnR6gl3sJ7hVz4Zb7x4YwpW"; "3jdggGFds3agGHfJJj3idjdidjsjd"; "4GFG3Ffjfmnro3GGjdjdGFGFncnfd"; }; /* on-oper host */ hosts { local "localoperator.BoltIRC.co.nr"; global "operator.BoltIRC.co.nr"; coadmin "coadministrator.BoltIRC.co.nr"; admin "administrator.BoltIRC.co.nr"; servicesadmin "administrator.BoltIRC.co.nr"; netadmin "administrator.BoltIRC.co.nr"; host-on-oper-up "yes"; }; }; /* Server specific configuration */ set { kline-address "jan.stankiewicz@hotmail.com"; modes-on-connect "+ixw"; modes-on-oper "+xwgs"; oper-auto-join "#Staff"; options { hide-ulines; /* You can enable ident checking here if you want */ /* identd-check; */ show-connect-info; }; maxchannelsperuser 3330; /* The minimum time a user must be connected before being allowed to use a QUIT message, * This will hopefully help stop spam */ anti-spam-quit-message-time 10s; /* Make the message in static-quit show in all quits - meaning no custom quits are allowed on local server */ /* static-quit "Client quit"; */ /* You can also block all part reasons by uncommenting this and say 'yes', * or specify some other text (eg: "Bye bye!") to always use as a comment.. */ /* static-part yes; */ /* This allows you to make certain stats oper only, use * for all stats, * leave it out to allow users to see all stats. Type '/stats' for a full list. * Some admins might want to remove the 'kGs' to allow normal users to list * klines, glines and shuns. */ oper-only-stats "okfGsMRUEelLCXzdD"; /* Throttling: this example sets a limit of 3 connection attempts per 60s (per host). */ throttle { connections 53; period 3s; }; /* Anti flood protection */ anti-flood { nick-flood 3:60; /* 3 nickchanges per 60 seconds (the default) */ }; /* Spam filter */ spamfilter { ban-time 1d; /* default duration of a *line ban set by spamfilter */ ban-reason "Spam/Advertising"; /* default reason */ virus-help-channel "#help"; /* channel to use for 'viruschan' action */ /* except "#help"; channel to exempt from filtering */ }; };