summaryrefslogtreecommitdiff
path: root/doc/example.quick.conf
diff options
context:
space:
mode:
Diffstat (limited to 'doc/example.quick.conf')
-rw-r--r--doc/example.quick.conf369
1 files changed, 369 insertions, 0 deletions
diff --git a/doc/example.quick.conf b/doc/example.quick.conf
new file mode 100644
index 0000000..65f0859
--- /dev/null
+++ b/doc/example.quick.conf
@@ -0,0 +1,369 @@
+/* doc/example.conf.quick - ircd-hybrid-8 Example configuration file
+ * Copyright (C) 2000-2012 Hybrid Development Team
+ *
+ * Written by ejb, wcampbel, db, leeh and others
+ *
+ * $Id$
+ */
+
+/* IMPORTANT NOTES:
+ *
+ * auth {} blocks MUST be specified in order of precedence. The first one
+ * that matches a user will be used. So place spoofs first, then specials,
+ * then general access, then restricted.
+ *
+ * Both shell style (#) and C style comments are supported.
+ *
+ * Files may be included by either:
+ * .include "filename"
+ * .include <filename>
+ *
+ * Times/durations are written as:
+ * 12 hours 30 minutes 1 second
+ *
+ * Valid units of time:
+ * month, week, day, hour, minute, second
+ *
+ * Valid units of size:
+ * megabyte/mbyte/mb, kilobyte/kbyte/kb, byte
+ *
+ * Sizes and times may be singular or plural.
+ */
+
+/* EFNET NOTE:
+ *
+ * This config file is NOT suitable for EFNet. EFNet admins should use
+ * example.efnet.conf
+ */
+
+serverinfo {
+ name = "hades.arpa";
+ sid = "_CHANGE_ME_";
+ description = "ircd-hybrid test server";
+ network_name = "MyNet";
+ network_desc = "This is My Network";
+ hub = no;
+ #vhost = "192.169.0.1";
+ #vhost6 = "3ffe:80e8:546::2";
+ max_clients = 512;
+ #rsa_private_key_file = "/usr/local/ircd/etc/rsa.key";
+ #ssl_certificate_file = "/usr/local/ircd/etc/cert.pem";
+ #ssl_server_method = tlsv1, sslv3;
+ #ssl_client_method = tlsv1;
+};
+
+/* admin {}: contains admin information about the server. (OLD A:) */
+admin {
+ name = "Smurf target";
+ description = "Main Server Administrator";
+ email = "<syn@packets.r.us>";
+};
+
+/* class {}: contain information about classes for users (OLD Y:) */
+class {
+ name = "users";
+ ping_time = 2 minutes;
+ number_per_ip = 2;
+ max_number = 100;
+ sendq = 100 kbytes;
+ recvq = 2560 bytes;
+};
+
+class {
+ name = "restricted";
+ ping_time = 1 minute 30 seconds;
+ number_per_ip = 1;
+ max_number = 100;
+ sendq = 60kb;
+ recvq = 2560 bytes;
+};
+
+class {
+ name = "opers";
+ ping_time = 5 minutes;
+ number_per_ip = 10;
+ max_number = 100;
+ sendq = 100kbytes;
+};
+
+class {
+ name = "server";
+ ping_time = 5 minutes;
+ ping_warning = 15 seconds;
+ connectfreq = 5 minutes;
+ max_number = 1;
+ sendq=2 megabytes;
+};
+
+/* listen {}: contain information about the ports ircd listens on (OLD P:) */
+listen {
+ port = 6665 .. 6669;
+
+ flags = ssl;
+ port = 6697;
+
+ host = "1.2.3.4";
+ port = 7000, 7001;
+
+ host = "3ffe:1234:a:b:c::d";
+ port = 7002;
+};
+
+/* auth {}: allow users to connect to the ircd (OLD I:) */
+auth {
+ user = "*@172.16.0.0/12";
+ user = "*test@123D:B567:*";
+ password = "letmein";
+ flags = need_password, spoof_notice, exceed_limit, kline_exempt,
+ gline_exempt, no_tilde;
+ spoof = "I.still.hate.packets";
+ class = "opers";
+};
+
+auth {
+ redirserv = "irc.fi";
+ redirport = 6667;
+ user = "*.fi";
+ class = "users";
+};
+
+auth {
+ user = "*@*";
+ class = "users";
+ flags = need_ident;
+};
+
+/* operator {}: defines ircd operators. (OLD O:)
+ * ircd-hybrid no longer supports local operators, privileges are
+ * controlled via flags.
+ */
+operator {
+ name = "sheep";
+ user = "*sheep@*";
+ user = "*@127.0.0.1";
+ password = "etcnjl8juSU1E";
+ encrypted = yes;
+ #rsa_public_key_file = "/usr/local/ircd/etc/oper.pub";
+ class = "opers";
+ flags = global_kill, remote, kline, unkline, gline, module,
+ xline, die, rehash, nick_changes, admin, set;
+};
+
+/* connect {}: controls servers we connect to (OLD C:, N:, H:, L:) */
+connect {
+ name = "irc.uplink.com";
+ host = "192.168.0.1";
+ send_password = "password";
+ accept_password = "anotherpassword";
+ encrypted = no;
+ port = 6666;
+ hub_mask = "*";
+ #leaf_mask = "*.uk";
+ class = "server";
+ flags = autoconn;
+};
+
+connect {
+ name = "ipv6.some.server";
+ host = "3ffd:dead:beef::1";
+ send_password = "password";
+ accept_password = "password";
+ port = 6666;
+
+ aftype = ipv6;
+ class = "server";
+};
+
+/* cluster{}: servers that share klines/unkline/xline/unxline/resv/unresv/locops
+ * automatically (OLD hyb6 SLAVE_SERVERS)
+ */
+cluster {
+ name = "*.arpa";
+ type = kline, unkline, locops, xline, resv;
+};
+
+/* shared {}: users that are allowed to remote kline (OLD U:) */
+shared {
+ name = "irc2.some.server";
+ user = "oper@my.host.is.spoofed";
+ type = all;
+};
+
+/* kill {}: users that are not allowed to connect (OLD K:)
+ * Oper issued klines will be added to the specified kline config
+ */
+kill {
+ user = "bad@*.hacked.edu";
+ reason = "Obviously hacked account";
+};
+
+/* deny {}: IPs that are not allowed to connect (before DNS/ident lookup)
+ * Oper issued dlines will be added to the specified dline config
+ */
+deny {
+ ip = "10.0.1.0/24";
+ reason = "Reconnecting vhosted bots";
+};
+
+/* exempt {}: IPs that are exempt from deny {} and Dlines. (OLD d:) */
+exempt {
+ ip = "192.168.0.0/16";
+};
+
+/* resv {}: nicks and channels users may not use/join (OLD Q:) */
+resv {
+ nick = "nickserv";
+ nick = "chanserv";
+ channel = "#services";
+ reason = "Clone bots";
+ nick = "clone*";
+};
+
+gecos {
+ name = "*sex*";
+ reason = "Possible spambot";
+};
+
+gecos {
+ name = "sub7server";
+ reason = "Trojan drone";
+};
+
+gecos {
+ name = "*http*";
+ reason = "Spambot";
+};
+
+channel {
+ restrict_channels = no;
+ knock_delay = 5 minutes;
+ knock_delay_channel = 1 minute;
+ max_chans_per_user = 25;
+ max_chans_per_oper = 50;
+ quiet_on_ban = yes;
+ max_bans = 25;
+ join_flood_count = 16;
+ join_flood_time = 8 seconds;
+ default_split_user_count = 0;
+ default_split_server_count = 0;
+ no_create_on_split = yes;
+ no_join_on_split = no;
+};
+
+serverhide {
+ flatten_links = no;
+ links_delay = 5 minutes;
+ hidden = no;
+ hide_servers = no;
+ hidden_name = "*.hidden.com";
+ hide_server_ips = no;
+};
+
+general {
+ kill_chase_time_limit = 90 seconds;
+ hide_spoof_ips = yes;
+ ignore_bogus_ts = no;
+
+ disable_auth = no;
+ disable_remote_commands = no;
+ default_floodcount = 10;
+ failed_oper_notice = yes;
+ dots_in_ident=2;
+ min_nonwildcard = 4;
+ min_nonwildcard_simple = 3;
+ max_accept = 20;
+ anti_nick_flood = yes;
+
+ max_nick_time = 20 seconds;
+ max_nick_changes = 5;
+
+ anti_spam_exit_message_time = 5 minutes;
+ ts_warn_delta = 30 seconds;
+ ts_max_delta = 5 minutes;
+
+ invisible_on_connect = yes;
+ warn_no_nline = yes;
+ stats_o_oper_only=yes;
+ stats_P_oper_only=no;
+ stats_i_oper_only=masked;
+ stats_k_oper_only=masked;
+ caller_id_wait = 1 minute;
+ pace_wait_simple = 1 second;
+ pace_wait = 10 seconds;
+ short_motd = no;
+ ping_cookie = no;
+ no_oper_flood = yes;
+ true_no_oper_flood = yes;
+ oper_pass_resv = yes;
+
+ /* REMOVE ME. The following line checks you've been reading. */
+ havent_read_conf = 1;
+
+ max_targets = 4;
+ message_locale = "standard";
+ oper_only_umodes = bots, cconn, debug, full, skill, nchange,
+ rej, spy, external, operwall, locops, unauth;
+
+ oper_umodes = bots, locops, servnotice, operwall, wallop;
+
+
+ #use_egd = yes;
+ #egdpool_path = "/var/run/egd-pool";
+ throttle_time = 10;
+};
+
+modules {
+ path = "/usr/local/ircd/lib/ircd-hybrid/modules";
+ path = "/usr/local/ircd/lib/ircd-hybrid/modules/autoload";
+ #module = "some_module.so";
+};
+
+/*
+ * log {}: contains information about logfiles.
+ */
+log {
+ /* Do you want to enable logging to ircd.log? */
+ use_logging = yes;
+
+ file {
+ type = oper;
+ name = "/home/ircd/var/log/oper.log";
+ size = unlimited;
+ };
+
+ file {
+ type = user;
+ name = "/home/ircd/var/log/user.log";
+ size = 50 megabytes;
+ };
+
+ file {
+ type = kill;
+ name = "/home/ircd/var/log/kill.log";
+ size = 50 megabytes;
+ };
+
+ file {
+ type = kline;
+ name = "/home/ircd/var/log/kline.log";
+ size = 50 megabytes;
+ };
+
+ file {
+ type = dline;
+ name = "/home/ircd/var/log/dline.log";
+ size = 50 megabytes;
+ };
+
+ file {
+ type = gline;
+ name = "/home/ircd/var/log/gline.log";
+ size = 50 megabytes;
+ };
+
+ file {
+ type = debug;
+ name = "/home/ircd/var/log/debug.log";
+ size = 50 megabytes;
+ };
+};