# Set the name of the server, its numeric, and the server info field serverinfo { name "test.server.undernet.org"; capacity 6124; numeric 18; description "A test server for the next generation"; # this is an optional parameter to specify where outbound # connections should originate from addr "18.177.0.118"; } # Select a seed from /dev/random or the appropriate local alternative. # If /dev/random doesn't exist, use a seed # Note: on Linux, /dev/urandom should probably be used--it won't block. seedfile "/dev/random"; # Let's set up some logging logging { syslog daemon; # set the syslog facility to daemon logpath "/home/irc/logs" # path prepended to log file names log kill syslog notice; # log kills to syslog at priority "notice" log squit syslog notice; log connect syslog debug; log oper file "opers.log"; # log /opers to file "opers.log" log gline file "gline.log"; nolog users; # turn off logging for users (default, but illustrative) pid "ircd.pid"; } binpath "/home/irc/bin/ircd"; # binary to exec() when we /restart libpath "/home/irc/lib"; # directory to chdir() to on start-up # Here's an authorization record--defines who is permitted on the server # and what special information needs to be remembered about them. auth everyone { host "*@*"; # hosts this auth record matches maxusers 1200; # Max users for this auth record perhost 2; # Maximum of 2 users per host on this server global 3; # Maximum of 2 users per host on the entire network ping 120; # ping them once every 120 seconds if link inactive sendq 270000; # max sendq for everyone in the auth record } # Here's another one for miters people auth miters { host "*@*.mit.edu"; host "*@18.*"; maxusers 1200; perhost 1; global 1; ping 300; sendq 120000; } # And here's a back door for my operators--perhaps to be used in an emergency auth opers { host "*@*"; unset ident; # no identd unset banable; # no denial rules unset limit; # ignore any limits set ipspoof; # hostname is spoofed to protect the guilty password "MybacKd004!"; # password-only access motd "opers.motd"; # a special MOTD for opers } port { accept opers; # auth records are tried in order listed accept miters; accept everyone; port 6660-6669 "18.177.0.118"; # ports to open port 6660-6669 "18.177.0.119"; } port { set hide; accept opers; port 7000; # IP is optional and defaults to 0.0.0.0 } port { set hide; set serveronly; port 4400 "18.177.0.118"; } # allow channel hacks and glines server uworld.undernet.org { set channelhack; set gline; } server uworld2.undernet.org { set channelhack; set gline; } server uworld.eu.undernet.org { set channelhack; set gline; } # allow channel hacks only server channels.undernet.org { set channelhack; } server channels2.undernet.org { set channelhack; } # here's some link class definitions for servers (only) class hubs { limit 2; # Max connection attempts per class freq 600; # Connect frequency ping 300; # how often to ping them sendq 2700000; # sendq } # Here's a hub link server santaclara.ca.us.undernet.org { class hubs; # this is in the hubs link class link 4400 "205.158.23.3"; # link address password "toysrus"; # link password set auto; # we'll auto to it set hub; # it's a hub } server dallas-r.tx.us.undernet.org { class hubs; link 4400 "204.178.73.175"; password "areyouready?"; set auto; set hub; deny "linked(santaclara.ca.us.undernet.org)"; # a d-line } # here's a leaf server vancouver.bc.ca.undernet.org { link 4400 "199.60.228.129"; password "toylink"; set auto; denyoper "linked(santaclara.ca.us.undernet.org)"; # a D-line } # here's a set of default flags for opers # # the part before the '.' specifies the namespace the flags are from-- # not necessary inside the user record itself, but we don't otherwise # know the namespace here. The part after the '.' is a label. flagset user.oper { set kill; # allow kills... set kline; # allow kline/unkline set gline; # allow local glines set rehash; # can use /rehash set restart; # can use /restart set die; # can use /die set wallops; # can use /wallops set connect; # can use /connect and /squit set stats; # can use /stats set info; # can use /info set opernotice; # can see oper-only notices set massmsg; # can use mass messages } # here's an operator user Kev { default oper; # a set of flags for the user cryptpass "J/7oDe78NhQ+/"; # password must be given to activate host "*.mit.edu"; # must be from the listed hosts host "*.ne.mediaone.net"; host "18.*"; host "168.159.*"; } # nick jupes user Uworld { set juped; } user Uworld2 { set juped; } user EUworld { set juped; } user X { set juped; } user W { set juped; } # File deny records are kept in; this can be modified from online denyfile "klines.conf";