*/
/* Extensions */
+#loadmodule "extensions/chm_adminonly.so";
+loadmodule "extensions/chm_operonly.so";
+#loadmodule "extensions/chm_sslonly.so";
#loadmodule "extensions/chm_operonly_compat.so";
#loadmodule "extensions/chm_quietunreg_compat.so";
#loadmodule "extensions/chm_sslonly_compat.so";
#loadmodule "extensions/createauthonly.so";
-#loadmodule "extensions/extb_account.so";
-#loadmodule "extensions/extb_canjoin.so";
-#loadmodule "extensions/extb_channel.so";
-#loadmodule "extensions/extb_extgecos.so";
-#loadmodule "extensions/extb_oper.so";
-#loadmodule "extensions/extb_realname.so";
+loadmodule "extensions/extb_account.so";
+loadmodule "extensions/extb_canjoin.so";
+loadmodule "extensions/extb_channel.so";
+loadmodule "extensions/extb_extgecos.so";
+loadmodule "extensions/extb_oper.so";
+loadmodule "extensions/extb_realname.so";
#loadmodule "extensions/extb_server.so";
#loadmodule "extensions/extb_ssl.so";
#loadmodule "extensions/hurt.so";
-#loadmodule "extensions/ip_cloaking.so";
+loadmodule "extensions/ip_cloaking.so";
#loadmodule "extensions/m_findforwards.so";
-#loadmodule "extensions/m_identify.so";
+loadmodule "extensions/m_identify.so";
+loadmodule "extensions/m_mkpasswd.so";
+loadmodule "extensions/m_webirc.so";
+#loadmodule "extensions/m_adminwall.so";
+#loadmodule "extensions/m_oaccept.so";
+#loadmodule "extensions/m_opme.so";
+#loadmodule "extensions/m_ojoin.so";
+#loadmodule "extensions/m_omode.so";
+#loadmodule "extensions/m_olist.so";
+#loadmodule "extensions/m_force.so";
#loadmodule "extensions/no_oper_invis.so";
-#loadmodule "extensions/sno_farconnect.so";
-#loadmodule "extensions/sno_globalkline.so";
-#loadmodule "extensions/sno_globaloper.so";
+loadmodule "extensions/sno_farconnect.so";
+loadmodule "extensions/sno_globalkline.so";
+loadmodule "extensions/sno_globaloper.so";
#loadmodule "extensions/sno_whois.so";
serverinfo {
name = "hades.arpa";
sid = "42X";
- description = "charybdis test server";
+ description = "shadowircd test server";
network_name = "AthemeNET";
network_desc = "Your IRC network.";
hub = yes;
/* ssl_dh_params: DH parameters, generate with openssl dhparam -out dh.pem 1024 */
ssl_dh_params = "etc/dh.pem";
- /* ssld_count: number of ssld processes you want to start, if you have a really busy
- * server, using N-1 where N is the number of cpu/cpu cores you have might be useful
+ /* ssld_count: number of ssld processes you want to start, if you
+ * have a really busy server, using N-1 where N is the number of
+ * cpu/cpu cores you have might be useful. A number greater than one
+ * can also be useful in case of bugs in ssld and because ssld needs
+ * two file descriptors per SSL connection.
*/
ssld_count = 1;
*/
spoof = "I.still.hate.packets";
+ /* autojoin: Channel (or channels, comma-seperated) to join users
+ * in this auth block to on connect. Note that this won't join
+ * the user through any bans or otherwise restrictive chmodes.
+ */
+ autojoin = "#shadowircd,#test";
+
+ /* autojoin_opers : Channel (or channels, comma-seperated) to join
+ * opers to on oper-up.
+ */
+ autojoin_opers = "#opers,#help";
+
/* Possible flags in auth:
*
* encrypted | password is encrypted with mkpasswd
class = "opers";
};
+/* Example WEBIRC authblock */
+auth {
+ /* user: webirc@IP.OF.YOUR.WEBIRC . the webirc@ part is required */
+ user = "webirc@192.168.1.1";
+
+ /* password: password the webirc client sends in the WEBIRC command.
+ * You can use a encrypted password here (see above auth block).
+ */
+ password = "<password>";
+
+ /* spoof: This is required to keep it what it is currently if you
+ * want the webirc client to show the users' real host as their
+ * host on IRC.
+ */
+ spoof = "webirc.";
+ class = "users";
+};
+
auth {
user = "*@*";
class = "users";
privset "admin" {
extends = "global_op";
- privs = oper:admin, oper:die, oper:rehash, oper:spy;
+ privs = oper:admin, oper:die, oper:rehash, oper:spy, oper:override;
};
operator "god" {
*/
#umodes = locops, servnotice, operwall, wallop;
+ /* fingerprint: if specified, the oper's client certificate
+ * fingerprint will be checked against the specified fingerprint
+ * below.
+ */
+ #fingerprint = "c77106576abf7f9f90cca0f63874a60f2e40a64b";
+
/* snomask: specific server notice mask on oper up.
* If this is specified an oper will not be given oper_snomask.
*/
snomask = "+Zbfkrsuy";
+ /* vhost: defines the vhost that this oper will get on oper up.
+ * this must be a valid hostmask. If this is specified the oper
+ * will not be given default_operhost.
+ */
+ vhost = "is.an.oper";
+
+ /* swhois: defines an additional line that will be displayed
+ * whenever someone does /whois on the oper in question.
+ */
+ swhois = "is wearing pants.";
+
+ /* operstring: defines a custom operstring for this oper,
+ * which will be shown in whois instead of default_operstring
+ * or default_adminstring.
+ */
+ operstring = "is a lazy IRC Operator";
+
/* flags: misc options for the operator. You may prefix an option
* with ~ to disable it, e.g. ~encrypted.
*
};
channel {
+ autochanmodes = "nt";
+ exemptchanops = "NT";
+ use_halfop = yes;
+ use_admin = yes;
use_invex = yes;
use_except = yes;
use_knock = yes;
use_forward = yes;
+ use_local_channels = yes;
knock_delay = 5 minutes;
knock_delay_channel = 1 minute;
max_chans_per_user = 15;
burst_topicwho = yes;
kick_on_split_riding = no;
only_ascii_channels = no;
+ cycle_host_change = yes;
+ host_in_topic = yes;
resv_forcepart = yes;
+ kick_no_rejoin_time = 30 seconds;
};
serverhide {
target = "MemoServ";
};
+alias "HostServ" {
+ target = "HostServ";
+};
+
+alias "BotServ" {
+ target = "BotServ";
+};
+
alias "NS" {
target = "NickServ";
};
target = "MemoServ";
};
+alias "HS" {
+ target = "HostServ";
+};
+
+alias "BS" {
+ target = "BotServ";
+};
+
general {
hide_error_messages = opers;
hide_spoof_ips = yes;
/*
- * default_umodes: umodes to enable on connect.
- * If you have enabled the ip_cloaking module, and you want
- * to make use of it, add +h to this option, i.e.:
- * default_umodes = "+ih";
+ * default umodes: umodes to set upon connection
+ * If you have enabled the ip_cloaking extension, and you wish for
+ * incoming clients to be cloaked upon connection, +x must be in
+ * the umode string below.
*/
- default_umodes = "+i";
+ default_umodes = "+ix";
default_operstring = "is an IRC Operator";
default_adminstring = "is a Server Administrator";
+ default_operhost = "staff.testnet.net";
servicestring = "is a Network Service";
disable_fake_channels = no;
tkline_expire_notices = no;
map_oper_only = no;
operspy_admin_only = no;
operspy_dont_care_user_info = no;
+ secret_channels_in_whois = no;
caller_id_wait = 1 minute;
pace_wait_simple = 1 second;
pace_wait = 10 seconds;
reject_duration = 5 minutes;
throttle_duration = 60;
throttle_count = 4;
+ expire_override_time = 5 minutes;
};
modules {