Reference

exaconf(2)

# 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";