/* The channel block contains options pertaining to channels */ channel { use_invex = yes; use_except = yes; use_knock = yes; knock_delay = 1 minute; knock_delay_channel = 1 minute; max_chans_per_user = 25; quiet_on_ban = yes; max_bans = 100; default_split_user_count = 15000; default_split_server_count = 25; no_create_on_split = yes; no_join_on_split = no; invite_ops_only = yes; burst_topicwho = yes; }; /* The serverhide block contains the options regarding serverhiding */ serverhide { /* flatten links: this option will show all servers in /links appear * that they are linked to this current server * * EFnet Note: While this is not a requirement on EFnet, it * may be a good idea. Except, its useless * unless the entire net runs it. */ flatten_links = no; /* links delay: how often to update the links file when it is * flattened. */ links_delay = 5 minutes; /* hidden: hide this server from a /links output on servers that * support it. this allows hub servers to be hidden etc. */ hidden = no; /* disable hidden: prevent servers hiding themselves from a * /links ouput. */ disable_hidden = no; }; /* The general block contains many of the options that were once compiled * in options in config.h. The general block is read at start time. */ general { /* floodcount: the default value of floodcount that is configurable * via /quote set floodcount. This is the amount of lines a user * may send to any other user/channel in one second. */ default_floodcount = 25; /* failed oper notice: send a notice to all opers on the server when * someone tries to OPER and uses the wrong password, host or ident. */ failed_oper_notice = yes; /* dots in ident: the amount of '.' characters permitted in an ident * reply before the user is rejected. */ dots_in_ident=2; /* dot in ipv6: ircd-hybrid-6.0 and earlier will disallow hosts * without a '.' in them. this will add one to the end. only needed * for older servers. */ dot_in_ip6_addr = no; /* min nonwildcard: the minimum non wildcard characters in k/d/g lines * placed via the server. klines hand placed are exempt from limits. * wildcard chars: '.' '*' '?' '@' */ min_nonwildcard = 3; /* max accept: maximum allowed /accept's for +g usermode */ max_accept = 20; /* nick flood: enable the nickflood control code */ anti_nick_flood = yes; /* nick flood: the nick changes allowed in the specified period */ max_nick_time = 20 seconds; max_nick_changes = 5; /* anti spam time: the minimum time a user must be connected before * custom quit messages are allowed. */ anti_spam_exit_message_time = 5 minutes; /* ts delta: the time delta allowed between server clocks before * a warning is given, or before the link is dropped. all servers * should run ntpdate/rdate to keep clocks in sync */ ts_warn_delta = 30 seconds; ts_max_delta = 5 minutes; /* client exit: prepend a users quit message with "Client exit: " */ client_exit = yes; /* kline reason: show the user the reason why they are k/d/glined * on exit. may give away who set k/dline when set via tcm. */ kline_with_reason = yes; /* kline connection closed: make the users quit message on channels * to be "Connection closed", instead of the kline reason. */ kline_reason = "Connection closed"; /* non redundant klines: flag and ignore redundant klines */ non_redundant_klines = yes; /* warn no nline: warn opers about servers that try to connect but * we dont have a connect {} block for. Twits with misconfigured * servers can get really annoying with this enabled. */ warn_no_nline = yes; /* stats o oper only: make stats o (opers) oper only */ stats_o_oper_only=yes; /* stats P oper only: make stats P (ports) oper only */ stats_P_oper_only=yes; /* stats i oper only: make stats i (auth {}) oper only. set to: * yes: show users no auth blocks, made oper only. * masked: show users first matching auth block * no: show users all auth blocks. */ stats_i_oper_only=yes; /* stats k/K oper only: make stats k/K (klines) oper only. set to: * yes: show users no auth blocks, made oper only * masked: show users first matching auth block * no: show users all auth blocks. */ stats_k_oper_only=yes; /* caller id wait: time between notifying a +g user that somebody * is messaging them. */ caller_id_wait = 1 minute; /* pace wait simple: time between use of less intensive commands * (HELP, remote WHOIS, WHOWAS) */ pace_wait_simple = 1 second; /* pace wait: time between more intensive commands * (ADMIN, INFO, LIST, LUSERS, MOTD, STATS, VERSION) */ pace_wait = 10 seconds; /* short motd: send clients a notice telling them to read the motd * instead of forcing a motd to clients who may simply ignore it. */ short_motd = no; /* ping cookies: require clients to respond exactly to a ping command, * can help block certain types of drones and FTP PASV mode spoofing. */ ping_cookie = no; /* no oper flood: increase flood limits for opers. */ no_oper_flood = yes; /* glines: enable glines, network wide temp klines * * EFnet Note: This feature is required for European EFnet servers * and is used by several North American servers. As * such, it has been left on by default. If you * do not want your server to participate in G:Lines * you should disable this. */ glines = yes; /* gline time: the amount of time a gline will remain before expiring */ gline_time = 2 day; gline_min_cidr = 20; /* idletime: the maximum amount of time a user may idle before * they are disconnected */ idletime = 0; /* maximum links: the maximum amount of servers to connect to for * connect blocks without a valid class. */ /*maximum_links = 1;*/ /* logfiles: the logfiles to use for user connects, /oper uses, * and failed /oper. These files must exist for logging to be used. */ /* max targets: the maximum amount of targets in a single * PRIVMSG/NOTICE. set to 999 NOT 0 for unlimited. */ max_targets = 4; /* client flood: maximum number of lines in a clients queue before * they are dropped for flooding. */ client_flood = 100; /* usermodes configurable: a list of usermodes for the options below * * +b - bots - See bot and drone flooding notices * +c - cconn - Client connection/quit notices * +d - debug - See debugging notices * +f - full - See I: line full notices * +g - callerid - Server Side Ignore (for privmsgs etc) * +i - invisible - Not shown in NAMES or WHO unless you share a * a channel * +k - skill - See server generated KILL messages * +l - locops - See LOCOPS messages * +n - nchange - See client nick changes * +r - rej - See rejected client notices * +s - servnotice - See general server notices * +u - unauth - See unauthorized client notices * +w - wallop - See server generated WALLOPS * +x - external - See remote server connection and split notices * +y - spy - See LINKS, STATS, TRACE notices etc. * +z - operwall - See oper generated WALLOPS */ /* oper only umodes: usermodes only opers may set */ oper_only_umodes = bots, cconn, debug, full, skill, nchange, rej, spy, external, operwall, locops, unauth; /* oper umodes: default usermodes opers get when they /oper */ oper_umodes = locops, servnotice, operwall, wallop, cconn, spy, external; /* servlink path: path to 'servlink' program used by ircd to handle * encrypted/compressed server <-> server links. * * only define if servlink is not in same directory as ircd itself. */ #servlink_path = "/usr/local/ircd/bin/servlink"; /* default cipher: default cipher to use for cryptlink when none is * specified in connect block. */ #default_cipher_preference = "BF/256"; /* use egd: if your system does not have *random devices yet you * want to use OpenSSL and encrypted links, enable this. Beware - * EGD is *very* CPU intensive when gathering data for its pool */ #use_egd = yes; /* egdpool path: path to EGD pool. Not necessary for OpenSSL >= 0.9.7 * which automatically finds the path. */ #egdpool_path = "/var/run/egd-pool"; /* compression level: level of compression for compressed links between * servers. * * values are between: 1 (least compression, fastest) * and: 9 (most compression, slowest). */ compression_level = 9; burst_away = no; reject_ban_time = 1 minute; reject_after_count = 3; reject_duration = 15 minutes; kline_delay = 5; hide_spoof_ips = yes; }; modules { /* module path: paths to search for modules specified below and * in /modload. */ path = "/home/ircd/ircd/modules"; path = "/home/ircd/ircd/modules/autoload"; /* module: the name of a module to load on startup/rehash */ #module = "some_module.so"; }; shared { oper = "*@*.efnet.nl", "irc.efnet.nl"; flags = xline, unxline, kline, unkline, resv, unresv; oper = "*@*", "*"; flags = tkline, unkline, txline, unxline, tresv, unresv; };