Advertisement
Guest User

Untitled

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