Advertisement
Guest User

Untitled

a guest
Apr 12th, 2018
300
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 15.91 KB | None | 0 0
  1. /* doc/example.conf - brief example configuration file
  2. *
  3. * Copyright (C) 2000-2002 Hybrid Development Team
  4. * Copyright (C) 2002-2005 ircd-ratbox development team
  5. * Copyright (C) 2005-2006 charybdis development team
  6. *
  7. * $Id: example.conf 3582 2007-11-17 21:55:48Z jilles $
  8. *
  9. * See reference.conf for more information.
  10. */
  11.  
  12. /* Extensions */
  13. #loadmodule "extensions/chm_adminonly.so";
  14. loadmodule "extensions/chm_operonly.so";
  15. #loadmodule "extensions/chm_sslonly.so";
  16. #loadmodule "extensions/chm_operonly_compat.so";
  17. #loadmodule "extensions/chm_quietunreg_compat.so";
  18. #loadmodule "extensions/chm_sslonly_compat.so";
  19. #loadmodule "extensions/createauthonly.so";
  20. loadmodule "extensions/extb_account.so";
  21. loadmodule "extensions/extb_canjoin.so";
  22. loadmodule "extensions/extb_channel.so";
  23. loadmodule "extensions/extb_extgecos.so";
  24. loadmodule "extensions/extb_oper.so";
  25. loadmodule "extensions/extb_realname.so";
  26. #loadmodule "extensions/extb_server.so";
  27. #loadmodule "extensions/extb_ssl.so";
  28. #loadmodule "extensions/hurt.so";
  29. loadmodule "extensions/ip_cloaking.so";
  30. #loadmodule "extensions/ip_cloaking_old.so";
  31. #loadmodule "extensions/m_findforwards.so";
  32. loadmodule "extensions/m_identify.so";
  33. loadmodule "extensions/m_mkpasswd.so";
  34. loadmodule "extensions/m_webirc.so";
  35. #loadmodule "extensions/m_cycle.so";
  36. #loadmodule "extensions/m_oaccept.so";
  37. #loadmodule "extensions/m_opme.so";
  38. #loadmodule "extensions/m_ojoin.so";
  39. #loadmodule "extensions/m_omode.so";
  40. #loadmodule "extensions/m_olist.so";
  41. #loadmodule "extensions/m_okick.so";
  42. #loadmodule "extensions/m_forcejoin.so";
  43. #loadmodule "extensions/m_forcepart.so";
  44. #loadmodule "extensions/m_forcenick.so";
  45. #loadmodule "extensions/m_forcequit.so";
  46. #loadmodule "extensions/no_oper_invis.so";
  47. #loadmodule "extensions/show_whois.so";
  48. loadmodule "extensions/sno_farconnect.so";
  49. loadmodule "extensions/sno_globalkline.so";
  50. loadmodule "extensions/sno_globaloper.so";
  51.  
  52. serverinfo {
  53. name = "cola.foxatomic.net";
  54. sid = "32X";
  55. description = "FoxAtomic Public Server";
  56. network_name = "FoxAtomicNET";
  57. helpchan = "#help";
  58. helpurl = "http://www.mynet.net/help";
  59. hub = yes;
  60.  
  61. /* ssl_private_key: our ssl private key */
  62. ssl_private_key = "etc/ssl.key";
  63.  
  64. /* ssl_cert: certificate for our ssl server */
  65. ssl_cert = "etc/ssl.pem";
  66.  
  67. /* ssl_dh_params: DH parameters, generate with openssl dhparam -out dh.pem 1024 */
  68. ssl_dh_params = "etc/dh.pem";
  69.  
  70. /* ssl_cipher_list: A list of ciphers, dependent on your TLS backend */
  71. #ssl_cipher_list = "EECDH+HIGH:EDH+HIGH:HIGH:!aNULL";
  72.  
  73. /* ssld_count: number of ssld processes you want to start, if you
  74. * have a really busy server, using N-1 where N is the number of
  75. * cpu/cpu cores you have might be useful. A number greater than one
  76. * can also be useful in case of bugs in ssld and because ssld needs
  77. * two file descriptors per SSL connection.
  78. */
  79. ssld_count = 1;
  80.  
  81. /* default max clients: the default maximum number of clients
  82. * allowed to connect. This can be changed once ircd has started by
  83. * issuing:
  84. * /quote set maxclients <limit>
  85. */
  86. default_max_clients = 1024;
  87. };
  88.  
  89. admin {
  90. name = "Lazy admin (lazya)";
  91. description = "AthemeNET client server";
  92. email = "nobody@127.0.0.1";
  93. };
  94.  
  95. log {
  96. fname_userlog = "logs/userlog";
  97. #fname_fuserlog = "logs/fuserlog";
  98. fname_operlog = "logs/operlog";
  99. #fname_foperlog = "logs/foperlog";
  100. fname_serverlog = "logs/serverlog";
  101. #fname_klinelog = "logs/klinelog";
  102. fname_killlog = "logs/killlog";
  103. fname_operspylog = "logs/operspylog";
  104. #fname_ioerrorlog = "logs/ioerror";
  105. };
  106.  
  107. /* class {} blocks MUST be specified before anything that uses them. That
  108. * means they must be defined before auth {} and before connect {}.
  109. */
  110. class "users" {
  111. ping_time = 2 minutes;
  112. number_per_ident = 10;
  113. number_per_ip = 10;
  114. number_per_ip_global = 50;
  115. cidr_ipv4_bitlen = 24;
  116. cidr_ipv6_bitlen = 64;
  117. number_per_cidr = 200;
  118. max_number = 3000;
  119. sendq = 400 kbytes;
  120. };
  121.  
  122. class "opers" {
  123. ping_time = 5 minutes;
  124. number_per_ip = 10;
  125. max_number = 1000;
  126. sendq = 1 megabyte;
  127. };
  128.  
  129. class "server" {
  130. ping_time = 5 minutes;
  131. connectfreq = 5 minutes;
  132. max_number = 1;
  133. sendq = 4 megabytes;
  134. };
  135.  
  136. listen {
  137. /* If you want to listen on a specific IP only, specify host.
  138. * host definitions apply only to the following port line.
  139. */
  140. #host = "159.65.31.80";
  141. port = 5000, 6665 .. 6669;
  142. sslport = 6697;
  143.  
  144. /* Listen on IPv6 (if you used host= above). */
  145. #host = "3ffe:1234:a:b:c::d";
  146. #port = 5000, 6665 .. 6669;
  147. #sslport = 9999;
  148. };
  149.  
  150. /* auth {}: allow users to connect to the ircd (OLD I:)
  151. * auth {} blocks MUST be specified in order of precedence. The first one
  152. * that matches a user will be used. So place spoofs first, then specials,
  153. * then general access, then restricted.
  154. */
  155. auth {
  156. /* user: the user@host allowed to connect. Multiple IPv4/IPv6 user
  157. * lines are permitted per auth block. This is matched against the
  158. * hostname and IP address (using :: shortening for IPv6 and
  159. * prepending a 0 if it starts with a colon) and can also use CIDR
  160. * masks.
  161. */
  162. user = "*@172.16.0.0/12";
  163. user = "*test@123D:B567:*";
  164.  
  165. /* auth_user: The username (authenticated via SASL or PASS) allowed
  166. * to connect. You are able to put multiple auth_user lines. If people
  167. * are authenticating via SASL in this way, it is recommended to comment
  168. * out the password option below. You will also *NEED* to specify a user
  169. * line above auth_user, this can safely be "*@*", however.
  170. */
  171. auth_user = "jilles";
  172. auth_user = "jdhore";
  173.  
  174. /* password: an optional password that is required to use this block.
  175. * By default this is not encrypted, specify the flag "encrypted" in
  176. * flags = ...; below if it is.
  177. */
  178. password = "letmein";
  179.  
  180. /* spoof: fake the users user@host to be be this. You may either
  181. * specify a host or a user@host to spoof to. This is free-form,
  182. * just do everyone a favour and dont abuse it. (OLD I: = flag)
  183. */
  184. spoof = "I.still.hate.packets";
  185.  
  186. /* autojoin: Channel (or channels, comma-seperated) to join users
  187. * in this auth block to on connect. Note that this won't join
  188. * the user through any bans or otherwise restrictive chmodes.
  189. */
  190. autojoin = "#Lounge";
  191.  
  192.  
  193. /* Possible flags in auth:
  194. *
  195. * encrypted | password is encrypted with mkpasswd
  196. * spoof_notice | give a notice when spoofing hosts
  197. * exceed_limit (old > flag) | allow user to exceed class user limits
  198. * kline_exempt (old ^ flag) | exempt this user from k/g/xlines&dnsbls
  199. * dnsbl_exempt | exempt this user from dnsbls
  200. * spambot_exempt | exempt this user from spambot checks
  201. * shide_exempt | exempt this user from serverhiding
  202. * jupe_exempt | exempt this user from generating
  203. * warnings joining juped channels
  204. * resv_exempt | exempt this user from resvs
  205. * flood_exempt | exempt this user from flood limits
  206. * USE WITH CAUTION.
  207. * no_tilde (old - flag) | don't prefix ~ to username if no ident
  208. * need_ident (old + flag) | require ident for user in this class
  209. * need_ssl | require SSL/TLS for user in this class
  210. * need_sasl | require SASL id for user in this class
  211. */
  212. flags = kline_exempt, exceed_limit;
  213.  
  214. /* class: the class the user is placed in */
  215. class = "opers";
  216. };
  217.  
  218. /* Example WEBIRC authblock */
  219. auth {
  220. /* user: webirc@IP.OF.YOUR.WEBIRC . the webirc@ part is required */
  221. user = "webirc@159.65.31.80";
  222.  
  223. /* password: password the webirc client sends in the WEBIRC command.
  224. * You can use a encrypted password here (see above auth block).
  225. */
  226. password = "<lionpassword>";
  227.  
  228. /* spoof: This is required to keep it what it is currently if you
  229. * want the webirc client to show the users' real host as their
  230. * host on IRC.
  231. */
  232. spoof = "webirc.";
  233. class = "users";
  234. };
  235.  
  236. auth {
  237. user = "*@*";
  238. class = "users";
  239. };
  240.  
  241. /* privset {} blocks MUST be specified before anything that uses them. That
  242. * means they must be defined before operator {}.
  243. */
  244. privset "local_op" {
  245. privs = oper:local_kill, oper:operwall;
  246. };
  247.  
  248. privset "server_bot" {
  249. extends = "local_op";
  250. privs = oper:kline, oper:remoteban, snomask:nick_changes;
  251. };
  252.  
  253. privset "global_op" {
  254. extends = "local_op";
  255. privs = oper:global_kill, oper:routing, oper:kline, oper:unkline, oper:xline,
  256. oper:resv, oper:mass_notice, oper:remoteban;
  257. };
  258.  
  259. privset "admin" {
  260. extends = "global_op";
  261. privs = oper:admin, oper:die, oper:rehash, oper:spy, oper:override;
  262. };
  263.  
  264. };
  265.  
  266. connect "services.foxatomic.net" {
  267. host = "*";
  268. send_password = "lionpassword";
  269. accept_password = "lionpassword";
  270. port = 5000;
  271. hub_mask = "*";
  272. class = "server";
  273. flags = topicburst;
  274.  
  275. #fingerprint = "c77106576abf7f9f90cca0f63874a60f2e40a64b";
  276.  
  277. /* If the connection is IPv6, uncomment below.
  278. * Use 0::1, not ::1, for IPv6 localhost. */
  279. #aftype = ipv6;
  280. };
  281.  
  282. connect "london.foxatomic.net" {
  283. host = "*";
  284. send_password = "lionpassword";
  285. accept_password = "lionpassword";
  286. port = 6667;
  287. hub_mask = "*";
  288. class = "server";
  289. flags = topicburst;
  290.  
  291. #fingerprint = "c77106576abf7f9f90cca0f63874a60f2e40a64b";
  292.  
  293. /* If the connection is IPv6, uncomment below.
  294. * Use 0::1, not ::1, for IPv6 localhost. */
  295. #aftype = ipv6;
  296. };
  297.  
  298.  
  299.  
  300. service {
  301. name = "services.foxatomic.net";
  302. };
  303. cluster {
  304. name = "*";
  305. flags = kline, tkline, unkline, xline, txline, unxline, resv, tresv, unresv;
  306. };
  307.  
  308. shared {
  309. oper = "*@*", "*";
  310. flags = all;
  311. };
  312.  
  313. /* exempt {}: IPs that are exempt from Dlines and rejectcache. (OLD d:) */
  314. exempt {
  315. ip = "127.0.0.1";
  316. };
  317.  
  318. channel {
  319. #disabledmodes = "ME";
  320. autochanmodes = "nt";
  321. autotopic = "Please set a topic, and if necessary, register this channel.";
  322. admin_on_channel_create = no;
  323. exemptchanops = "NT";
  324. use_halfop = yes;
  325. use_admin = yes;
  326. use_owner = yes;
  327. use_knock = yes;
  328. use_local_channels = yes;
  329. knock_delay = 5 minutes;
  330. knock_delay_channel = 1 minute;
  331. max_chans_per_user = 15;
  332. max_bans = 100;
  333. max_bans_large = 500;
  334. default_split_user_count = 0;
  335. default_split_server_count = 0;
  336. no_create_on_split = no;
  337. no_join_on_split = no;
  338. burst_topicwho = yes;
  339. kick_on_split_riding = no;
  340. only_ascii_channels = no;
  341. cycle_host_change = yes;
  342. host_in_topic = yes;
  343. resv_forcepart = yes;
  344. channel_target_change = yes;
  345. };
  346.  
  347. serverhide {
  348. flatten_links = yes;
  349. links_delay = 5 minutes;
  350. hidden = no;
  351. disable_hidden = no;
  352. };
  353.  
  354. /* These are the blacklist settings.
  355. * You can have multiple combinations of host and rejection reasons.
  356. * They are used in pairs of one host/rejection reason.
  357. *
  358. * These settings should be adequate for most networks, and are (presently)
  359. * required for use on AthemeNet.
  360. *
  361. * Word to the wise: Do not use blacklists like SPEWS for blocking IRC
  362. * connections.
  363. *
  364. * As of charybdis 2.1.3, you can do some keyword substitution on the rejection
  365. * reason. The available keyword substitutions are:
  366. *
  367. * ${ip} - the user's IP
  368. * ${host} - the user's canonical hostname
  369. * ${dnsbl-host} - the dnsbl hostname the lookup was done against
  370. * ${nick} - the user's nickname
  371. * ${network-name} - the name of the network
  372. *
  373. * Note: AHBL (the providers of the below *.ahbl.org BLs) request that they be
  374. * contacted, via email, at admins@2mbit.com before using these BLs.
  375. * See <http://www.ahbl.org/services.php> for more information.
  376. */
  377. blacklist {
  378. host = "rbl.efnetrbl.org";
  379. reject_reason = "${nick}, your IP (${ip}) is listed in EFnet's RBL. For assistance, see http://efnetrbl.org/?i=${ip}";
  380.  
  381. host = "dnsbl.dronebl.org";
  382. reject_reason = "${nick}, your IP (${ip}) is listed in DroneBL. For assistance, see http://dronebl.org/lookup_branded.do?ip=${ip}&network=${network-name}";
  383.  
  384. host = "torexit.dan.me.uk";
  385. reject_reason = "${nick}, your IP (${ip}) is listed as a TOR exit node. In order to protect ${network-name} from TOR-based abuse, we are not allowing TOR exit nodes to connect to our network.";
  386.  
  387. host = "dnsbl.foxatomic.net";
  388. reject_reason = "${nick}, your IP (${ip}) is listed in FoxAtomic DNSBL. There is currently no page you may seek assistance by. Email adam@foxatomic.net for help.";
  389. };
  390.  
  391. alias "NickServ" {
  392. target = "NickServ";
  393. };
  394.  
  395. alias "ChanServ" {
  396. target = "ChanServ";
  397. };
  398.  
  399. alias "OperServ" {
  400. target = "OperServ";
  401. };
  402.  
  403. alias "MemoServ" {
  404. target = "MemoServ";
  405. };
  406.  
  407. alias "HostServ" {
  408. target = "HostServ";
  409. };
  410.  
  411. alias "BotServ" {
  412. target = "BotServ";
  413. };
  414.  
  415. alias "InfoServ" {
  416. target = "InfoServ";
  417. };
  418.  
  419. alias "GroupServ" {
  420. target = "GroupServ";
  421. };
  422.  
  423. alias "NS" {
  424. target = "NickServ";
  425. };
  426.  
  427. alias "CS" {
  428. target = "ChanServ";
  429. };
  430.  
  431. alias "OS" {
  432. target = "OperServ";
  433. };
  434.  
  435. alias "MS" {
  436. target = "MemoServ";
  437. };
  438.  
  439. alias "HS" {
  440. target = "HostServ";
  441. };
  442.  
  443. alias "BS" {
  444. target = "BotServ";
  445. };
  446.  
  447. alias "IS" {
  448. target = "InfoServ";
  449. };
  450.  
  451. alias "GS" {
  452. target = "GroupServ";
  453. };
  454.  
  455. general {
  456. hide_error_messages = opers;
  457. hide_spoof_ips = yes;
  458.  
  459. /*
  460. * default umodes: umodes to set upon connection
  461. * If you have enabled the ip_cloaking extension, and you wish for
  462. * incoming clients to be cloaked upon connection, +x must be in
  463. * the umode string below.
  464. */
  465. default_umodes = "+ix";
  466.  
  467. default_operstring = "is an IRC Operator";
  468. default_adminstring = "is a Server Administrator";
  469. default_operhost = "staff.testnet.net";
  470. #static_quit = "I like turtles!";
  471. servicestring = "is a Network Service";
  472.  
  473. /*
  474. * Nick of the network's SASL agent. Used to check whether services are here,
  475. * SASL credentials are only sent to its server. Needs to be a service.
  476. *
  477. * Defaults to SaslServ if unspecified.
  478. */
  479. sasl_service = "SaslServ";
  480.  
  481. disable_fake_channels = no;
  482. hide_channel_below_users = 3;
  483. tkline_expire_notices = no;
  484. default_floodcount = 10;
  485. failed_oper_notice = yes;
  486. dots_in_ident=2;
  487. min_nonwildcard = 4;
  488. min_nonwildcard_simple = 3;
  489. max_accept = 100;
  490. max_monitor = 100;
  491. anti_nick_flood = yes;
  492. max_nick_time = 20 seconds;
  493. max_nick_changes = 5;
  494. anti_spam_exit_message_time = 1 minutes;
  495. use_part_messages = yes;
  496. ts_warn_delta = 30 seconds;
  497. ts_max_delta = 5 minutes;
  498. client_exit = yes;
  499. collision_fnc = yes;
  500. global_snotices = yes;
  501. dline_with_reason = yes;
  502. kline_delay = 0 seconds;
  503. kline_with_reason = yes;
  504. kline_reason = "K-Lined";
  505. custom_cloak = "cloaked";
  506. identify_service = "NickServ@services.int";
  507. identify_command = "IDENTIFY";
  508. non_redundant_klines = yes;
  509. warn_no_nline = yes;
  510. use_propagated_bans = yes;
  511. stats_e_disabled = no;
  512. stats_c_oper_only=no;
  513. stats_h_oper_only=no;
  514. stats_y_oper_only=no;
  515. stats_o_oper_only=yes;
  516. stats_P_oper_only=no;
  517. stats_i_oper_only=masked;
  518. stats_k_oper_only=masked;
  519. map_oper_only = no;
  520. links_oper_only = no;
  521. operspy_admin_only = no;
  522. operspy_dont_care_user_info = no;
  523. secret_channels_in_whois = no;
  524. caller_id_wait = 1 minute;
  525. pace_wait_simple = 1 second;
  526. pace_wait = 10 seconds;
  527. short_motd = no;
  528. ping_cookie = no;
  529. connect_timeout = 30 seconds;
  530. default_ident_timeout = 5;
  531. disable_auth = no;
  532. no_oper_flood = yes;
  533. true_no_oper_flood = no;
  534. max_targets = 4;
  535. client_flood = 20;
  536. use_whois_actually = no;
  537. oper_only_umodes = operwall, locops, servnotice;
  538. oper_umodes = locops, servnotice, operwall, wallop;
  539. oper_snomask = "+s";
  540. burst_away = yes;
  541. nick_delay = 0 seconds; # 15 minutes if you want to enable this
  542. reject_ban_time = 1 minute;
  543. reject_after_count = 3;
  544. reject_duration = 5 minutes;
  545. throttle_duration = 60;
  546. throttle_count = 4;
  547. static_parts = no;
  548. static_part_reason = " ";
  549. expire_override_time = 5 minutes;
  550. hide_opers = no;
  551. };
  552.  
  553. modules {
  554. path = "modules";
  555. path = "modules/autoload";
  556. };
  557. .include "opers.conf"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement