Advertisement
Guest User

Untitled

a guest
Dec 18th, 2011
219
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 20.00 KB | None | 0 0
  1. /*
  2. * example.conf by Daniel Hawton AKA Osiris (osiris@unrealircd.org).
  3. * $Id$
  4. *
  5. * Works for Unreal3.2 and up
  6. *
  7. * Okay guys. This is the new example.conf. Its look is much like C++, kinda.
  8. * Anyway it is time to go over this. It's hard to pick up at first, but
  9. * with some pratice and reading you'll understand.
  10. *
  11. * Just copy this file to your main unrealircd dir and call it 'unrealircd.conf'.
  12. *
  13. * NOTE: All lines, except the opening { line, end in an ;, including the
  14. * closing } line. The IRCd will ignore commented lines.
  15. *
  16. * PLEASE READ doc/unreal32docs.html! The online version is also available at:
  17. * www.vulnscan.org/UnrealIRCd/unreal32docs.html
  18. * It contains a lot information about the configfile: gives information about
  19. * every block, variable, etc..
  20. * If you try to edit this file without reading the documentation properly
  21. * then you are pretty much guaranteed to fail!
  22. */
  23.  
  24. /* Type of comments */
  25. #Comment type 1 (Shell type)
  26. // Comment type 2(C++ style)
  27. /* Comment type 3 (C Style) */
  28. #those lines are ignored by the ircd.
  29.  
  30. /*
  31. * UnrealIRCd supports modules, loading some of them is required.
  32. * You need at least the commands module and a cloaking module.
  33. */
  34.  
  35. /* FOR *NIX, uncomment the following 2lines: */
  36. loadmodule "src/modules/commands.so";
  37. loadmodule "src/modules/cloak.so";
  38.  
  39. /* FOR Windows, uncomment the following 2 lines: */
  40. //loadmodule "modules/commands.dll";
  41. //loadmodule "modules/cloak.dll";
  42.  
  43. /*
  44. * You can also include other configuration files.
  45. * help.conf contains all the /helpop text. The badwords.*.conf
  46. * files contain all the badword entries for mode +G...
  47. * spamfilter.conf contains some good rules for current trojans.
  48. * You probably want to include them:
  49. */
  50. include "help.conf";
  51. include "badwords.channel.conf";
  52. include "badwords.message.conf";
  53. include "badwords.quit.conf";
  54. include "spamfilter.conf";
  55.  
  56. /*
  57. * NEW: me {}
  58. * OLD: M:Line
  59. * me {} defines the name, description and unreal server numeric for
  60. * this server. Syntax is as follows:
  61. * me {
  62. * name "server.name";
  63. * info "Server Description";
  64. * numeric (server numeric*);
  65. * };
  66. * If linking, this numeric may not be used by any other server on the network.
  67. */
  68. me
  69. {
  70. name "irc.serverprotect.org";
  71. info "ServerProtect IRC";
  72. numeric 1;
  73. };
  74.  
  75. /*
  76. * NEW: admin {}
  77. * OLD: A:Line
  78. * Admin gives information on the server admin. you
  79. * may put as many lines under admin { as you wish.
  80. * Syntax is as follows:
  81. * admin {
  82. * "first line";
  83. * "second line";
  84. * [etc]
  85. * };
  86. */
  87. admin {
  88. "Chris Stanley";
  89. "eNkrypt";
  90. "Chris@StanleyWebSolutions.com";
  91. };
  92.  
  93. /*
  94. * NEW: class {}
  95. * OLD: Y:line (old was confusing)
  96. * These define settings for classes. A class is a group setting for
  97. * connections. Example, server connections, instead of going to a client's
  98. * class, you direct it to the server class. Syntax is as follows
  99. * class (class name)
  100. * {
  101. * pingfreq (how often to ping a user/server in seconds);
  102. * maxclients (how many connections for this class);
  103. * sendq (maximum send queue from a connection);
  104. * recvq (maximum receive queue from a connection [flood control]);
  105. * };
  106. */
  107.  
  108. class clients
  109. {
  110. pingfreq 90;
  111. maxclients 500;
  112. sendq 100000;
  113. recvq 8000;
  114. };
  115.  
  116. class servers
  117. {
  118. pingfreq 90;
  119. maxclients 10; /* Max servers we can have linked at a time */
  120. sendq 1000000;
  121. connfreq 100; /* How many seconds between each connection attempt */
  122. };
  123.  
  124. /*
  125. * NEW: allow {}
  126. * OLD: I:Line
  127. * This defines allowing of connections...
  128. * Basically for clients, it allows them to connect so you can have some
  129. * control and/or set a password.
  130. * Syntax is as follows:
  131. * allow {
  132. * ip (ip mask to allow);
  133. * hostname (host mask);
  134. * class (class to send them to [see class {}]);
  135. * password "(password)"; (optional)
  136. * maxperip (how many connections per ip); (optional)
  137. * };
  138. */
  139.  
  140. allow {
  141. ip *@*;
  142. hostname *@*;
  143. class clients;
  144. maxperip 5;
  145. };
  146.  
  147. /* Passworded allow line */
  148. allow {
  149. ip *@255.255.255.255;
  150. hostname *@*.passworded.ugly.people;
  151. class clients;
  152. password "f00Ness";
  153. maxperip 1;
  154. };
  155.  
  156. /*
  157. * NEW: allow channel {}
  158. * OLD: chrestrict
  159. * Allows a user to join a channel...
  160. * like an except from deny channel.
  161. * Syntax:
  162. * allow channel {
  163. * channel "channel name";
  164. * };
  165. */
  166. allow channel {
  167. channel "#WarezSucks";
  168. };
  169.  
  170. /*
  171. * NEW: oper {}
  172. * OLD: O:Line
  173. * Defines an IRC Operator
  174. * IRC operators are there to keep sanity to the server and usually keep it
  175. * maintained and connected to the network.
  176. * The syntax is as follows:
  177. * oper (login) {
  178. * class (class to put them in, if different from I, moves them to new
  179. * class);
  180. * from {
  181. * userhost (ident@host);
  182. * userhost (ident@host);
  183. * };
  184. * flags
  185. * {
  186. * (flags here*);
  187. * };
  188. * OR
  189. * flags "old type flags, like OAaRD";
  190. * };
  191. */
  192.  
  193.  
  194. /* For a list of oper flags, see doc/unreal32docs.html#operblock
  195. * [HIGHLY recommended to read]
  196. */
  197.  
  198. oper eNkrypt {
  199. class clients;
  200. from {
  201. userhost *;
  202. };
  203. password "$$";
  204. flags
  205. {
  206. netadmin;
  207. can_zline;
  208. can_gzline;
  209. can_gkline;
  210. global;
  211. };
  212. };
  213.  
  214. /*
  215. * NEW: listen {}
  216. * OLD: P:Line
  217. * This defines a port for the ircd to bind to, to
  218. * allow users/servers to connect to the server.
  219. * Syntax is as follows:
  220. * listen (ip number):(port number)
  221. * {
  222. * options {
  223. * (options here);
  224. * };
  225. * };
  226. * or for a plain
  227. * listen: listen (ip):(port);
  228. *
  229. * NOTICE: for ipv6 ips (3ffe:b80:2:51d::2 etc), use listen [ip]:port;
  230. *
  231. * That works also.
  232. */
  233.  
  234. /* Options for listen:
  235. OLD | NEW
  236. S serversonly
  237. C clientsonly
  238. J java
  239. s ssl
  240. * standard
  241. */
  242.  
  243. /* NOTE ON SSL PORTS: SSL ports are pretty non-standardized,
  244. * besides numerous high-SSL ports, some people say you should run
  245. * it at 994 because that's the official SSL port.. but that
  246. * requires root! Besides, port 194 is the official irc port and
  247. * have you ever seen an ircd running on that?
  248. * So, our suggestion is to use port 6697 for SSL, this is used by
  249. * quite some networks and is recognized by for example StunTour.
  250. * You are free to open up as many SSL ports as you want, but
  251. * by (also) using 6697 you help the world standardize a bit ;).
  252. */
  253. listen *:6697
  254. {
  255. options
  256. {
  257. ssl;
  258. clientsonly;
  259. };
  260. };
  261.  
  262. listen *:8067;
  263. listen *:6667;
  264.  
  265. /* NOTE: If you are on an IRCd shell with multiple IP's you are
  266. * likely to get 'Address already in use' errors in your log
  267. * and the ircd won't start. This means you MUST bind
  268. * to a specific IP instead of '*', so for example:
  269. * listen 1.2.3.4:6667;
  270. * Obviously, replace the IP with the IP that was assigned to you.
  271. */
  272.  
  273. /*
  274. * NEW: link {}
  275. * OLD: C/N:Lines
  276. * This defines an okay for a server connection.
  277. * NOTE: BOTH SERVERS NEED A LINK {} SETTING TO CONNECT PROPERLY!
  278. * Syntax is as follows:
  279. * link (server name)
  280. * {
  281. * username (username, * works too);
  282. * hostname (ip number/hostmask);
  283. * bind-ip (What IP to bind to when connecting, or *);
  284. * port (port to connect to, if any);
  285. * hub (If this is a hub, * works, or servermasks it may bring in);
  286. * [or leaf *;]
  287. * password-connect "(pass to send)";
  288. * password-receive "(pass we should receive)";
  289. * class (class to direct servers into);
  290. * options {
  291. * (options here*);
  292. * };
  293. * // If we use SSL, we can choose what cipher to use in SSL mode
  294. * // Retrieve a list by "openssl ciphers", separate ciphers with :'s
  295. *
  296. * ciphers "DES-CBC3-MD5";
  297. *
  298. * };
  299. */
  300.  
  301. /*
  302. options:
  303. OLD | NEW
  304. S ssl
  305. Z zip
  306. N/A autoconnect
  307. N/A quarantine
  308. N/A nodnscache
  309. */
  310. link services.protectserver.org
  311. {
  312. username *;
  313. hostname 127.0.0.1;
  314. bind-ip *;
  315. port 7029;
  316. hub *;
  317. password-connect "services";
  318. password-receive "services";
  319. class servers;
  320. options {
  321. };
  322. };
  323. /*
  324. link hub.mynet.com
  325. {
  326. username *;
  327. hostname 1.2.3.4;
  328. bind-ip *;
  329. port 7029;
  330. hub *;
  331. password-connect "LiNk";
  332. password-receive "LiNk";
  333. class servers;
  334. options {
  335. /* Note: You should not use autoconnect when linking services */
  336. autoconnect;
  337. ssl;
  338. zip;
  339. };
  340. };
  341. */
  342. /*
  343. *
  344. * NEW: ulines {}
  345. * OLD: U:Line
  346. * U-lines give servers more power/commands, this should ONLY be set
  347. * for services/stats servers and NEVER for normal UnrealIRCd servers!
  348. * Syntax is as follows:
  349. * ulines {
  350. * (server to uline);
  351. * (server to uline);
  352. * [etc]
  353. * };
  354. */
  355. ulines {
  356. services.serverprotect.org;
  357. stats.serverprotect.org;
  358. };
  359.  
  360. /*
  361. * NEW: drpass {}
  362. * OLD: X:Line
  363. * This defines the passwords for /die and /restart.
  364. * Syntax is as follows:
  365. * drpass {
  366. * restart "(password for restarting)";
  367. * die "(password for die)";
  368. * };
  369. */
  370. drpass {
  371. restart "$$";
  372. die "$$";
  373. };
  374.  
  375. /*
  376. * NEW: log {} OLD: N/A Tells the ircd where and what to log(s). You can have
  377. * as many as you wish.
  378. *
  379. * FLAGS: errors, kills, tkl, connects, server-connects, oper
  380. *
  381. * Syntax:
  382. * log "log file"
  383. * {
  384. * flags
  385. * {
  386. * flag;
  387. * flag;
  388. * etc..
  389. * };
  390. * };
  391. */
  392.  
  393. log "ircd.log" {
  394. /* Delete the log file and start a new one when it reaches 2MB, leave this out to always use the
  395. same log */
  396. maxsize 2097152;
  397. flags {
  398. oper;
  399. connects;
  400. server-connects;
  401. kills;
  402. errors;
  403. sadmin-commands;
  404. chg-commands;
  405. oper-override;
  406. spamfilter;
  407. };
  408. };
  409.  
  410. /*
  411. * NEW: alias {}
  412. * OLD: N/A
  413. * This allows you to set command aliases such as /nickserv, /chanserv etc
  414. * FLAGS: services, stats, normal
  415. *
  416. * Syntax:
  417. * alias "name" {
  418. * target "points to";
  419. * type aliastype;
  420. * };
  421. *
  422. * [NOTE: You could also include a pre-defined alias file here, see doc/unreal32docs.html section 2.9]
  423. */
  424.  
  425. // This points the command /nickserv to the user NickServ who is connected to the set::services-server server
  426. /*alias NickServ {
  427. target "NickServ";
  428. type services;
  429. };*/
  430.  
  431. // If you want the command to point to the same nick as the command, you can leave the nick entry out
  432. //alias ChanServ { type services; };
  433.  
  434. // Points the /statserv command to the user StatServ on the set::stats-server server
  435. //alias StatServ { type stats; };
  436.  
  437. // Points the /superbot command to the user SuperBot
  438. //alias SuperBot { type normal; };
  439.  
  440.  
  441. /* Standard aliases */
  442. alias NickServ { type services; };
  443. alias ChanServ { type services; };
  444. alias OperServ { type services; };
  445. alias HelpServ { type services; };
  446. alias StatServ { type stats; };
  447.  
  448. /*
  449. * NEW: alias {}
  450. * OLD: N/A
  451. * This allows you to set command aliases such as /identify, /services, etc
  452. *
  453. * Syntax:
  454. * alias "name" {
  455. * format "format string" {
  456. * target "points to";
  457. * type aliastype;
  458. * parameters "parameters to send";
  459. * };
  460. * type command;
  461. * };
  462. */
  463. /* This is shown seperately because even though it has teh same name as the previous directive, it is very
  464. * different in syntax, although it provides a similar function and relys on the standard aliases to work.
  465. */
  466. /*
  467. alias "identify" {
  468. format "^#" {
  469. target "chanserv";
  470. type services;
  471. parameters "IDENTIFY %1-";
  472. };
  473. format "^[^#]" {
  474. target "nickserv";
  475. type services;
  476. parameters "IDENTIFY %1-";
  477. };
  478. type command;
  479. };
  480. */
  481. /* The alias::format directive is a regular expression. The first format matches the /identify command when
  482. * the first character is a #. It then passes this along to the chanserv alias with the parameters IDENTIFY
  483. * %1-. The second format matches then /identify command when the first character is not a #. It then
  484. * passes the command to the nickserv alias with parameters IDENTIFY %1-.
  485. */
  486.  
  487. /* The alias::format::parameters is similar to scripting languages. %N (where N is a number) represents a
  488. * parameter sent to the command (in this case /identify). If you specify %N- it means all parameters from
  489. * N until the last parameter in the string. You may also specify %n which is replaced by
  490. * the user's nickname.
  491. */
  492.  
  493. /* Standard aliases */
  494. alias "services" {
  495. format "^#" {
  496. target "chanserv";
  497. type services;
  498. parameters "%1-";
  499. };
  500. format "^[^#]" {
  501. target "nickserv";
  502. type services;
  503. parameters "%1-";
  504. };
  505. type command;
  506. };
  507.  
  508. alias "identify" {
  509. format "^#" {
  510. target "chanserv";
  511. type services;
  512. parameters "IDENTIFY %1-";
  513. };
  514. format "^[^#]" {
  515. target "nickserv";
  516. type services;
  517. parameters "IDENTIFY %1-";
  518. };
  519. type command;
  520. };
  521.  
  522. /* This is an example of a real command alias */
  523. /* This maps /GLINEBOT to /GLINE <parameter> 2d etc... */
  524. alias "glinebot" {
  525. format ".+" {
  526. command "gline";
  527. type real;
  528. parameters "%1 2d Bots are not allowed on this server, please read the faq at http://www.example.com/faq/123";
  529. };
  530. type command;
  531. };
  532.  
  533. /*
  534. * NEW: files {}
  535. * OLD: include/config.h
  536. *
  537. * This block overrides the IRCd's default paths for loading things
  538. * like the MOTD, saving its PID, or writing/loading its tunefile. The
  539. * existence of this block allows one UnrealIRCd installation to
  540. * support multiple running instances when combined with the -c
  541. * commandline option.
  542. *
  543. * As usual, relative paths are interpreted relative to the directory
  544. * where UnrealIRCd would find unrealircd.conf if -c is _not_
  545. * specified on the commandline.
  546. */
  547. files
  548. {
  549. /* The Message Of The Day shown to users who log in: */
  550. /* motd ircd.motd; */
  551.  
  552. /*
  553. * A short MOTD. If this file exists, it will be displayed to
  554. * the user in place of the MOTD. Users can still view the
  555. * full MOTD by using the /MOTD command.
  556. */
  557. /* shortmotd ircd.smotd; */
  558.  
  559. /* Shown when an operator /OPERs up */
  560. /* opermotd oper.motd; */
  561.  
  562. /* Services MOTD append. */
  563. /* svsmotd ircd.svsmotd; */
  564.  
  565. /* Bot MOTD */
  566. /* botmotd bot.motd; */
  567.  
  568. /* Shown upon /RULES */
  569. /* rules ircd.rules; */
  570.  
  571. /*
  572. * Where the IRCd stores and loads a few values which should
  573. * be persistent across server restarts. Must point to an
  574. * existing file which the IRCd has permission to alter or to
  575. * a file in a folder within which the IRCd may create files.
  576. */
  577. /* tunefile ircd.tune; */
  578.  
  579. /* Where to save the IRCd's pid. Should be writable by the IRCd. */
  580. /* pidfile ircd.pid; */
  581. };
  582.  
  583. /*
  584. * NEW: tld {}
  585. * OLD: T:Line
  586. * This sets a different motd and rules files
  587. * depending on the clients hostmask.
  588. * Syntax is as follows:
  589. * tld {
  590. * mask (ident@host);
  591. * motd "(motd file)";
  592. * rules "(rules file)";
  593. * };
  594. */
  595. /*
  596. tld {
  597. mask *@*.fr;
  598. motd "ircd.motd.fr";
  599. rules "ircd.rules.fr";
  600. };
  601. */
  602. /* note: you can just delete the example block above,
  603. * in which case the defaults motd/rules files (ircd.motd, ircd.rules)
  604. * will be used for everyone.
  605. */
  606.  
  607. /*
  608. * NEW: ban nick {}
  609. * OLD: Q:Line
  610. * Bans a nickname, so it can't be used.
  611. * Syntax is as follows:
  612. * ban nick {
  613. * mask "(nick to ban)";
  614. * reason "(reason)";
  615. * };
  616. */
  617. ban nick {
  618. mask "*C*h*a*n*S*e*r*v*";
  619. reason "Reserved for Services";
  620. };
  621. /*
  622. * NEW: ban ip {}
  623. * OLD: Z:Line
  624. * Bans an ip from connecting to the network.
  625. * Syntax:
  626. * ban ip { mask (ip number/hostmask); reason "(reason)"; };
  627. */
  628. ban ip {
  629. mask 195.86.232.81;
  630. reason "Delinked server";
  631. };
  632. /*
  633. * NEW: ban server {}
  634. * OLD: Server Q:Line
  635. * Disables a server from connecting to the network.
  636. * if the server links to a remote server, local server
  637. * will disconnect from the network.
  638. * Syntax is as follows:
  639. * ban server {
  640. * mask "(server name)";
  641. * reason "(reason to give)";
  642. * };
  643. */
  644.  
  645. ban server {
  646. mask eris.berkeley.edu;
  647. reason "Get out of here.";
  648. };
  649. /*
  650. * NEW: ban user {}
  651. * OLD: K:Line
  652. * This makes it so a user from a certain mask can't connect
  653. * to your server.
  654. * Syntax:
  655. * ban user { mask (hostmask/ip number); reason "(reason)"; };
  656. */
  657.  
  658. ban user {
  659. mask *tirc@*.saturn.bbn.com;
  660. reason "Idiot";
  661. };
  662.  
  663. /*
  664. * NEW: ban realname {}
  665. * OLD: n:Line
  666. * This bans a certain realname from being used.
  667. * Syntax:
  668. * ban realname {
  669. * mask "(real name)";
  670. * reason "(reason)";
  671. * };
  672. */
  673.  
  674. ban realname {
  675. mask "Swat Team";
  676. reason "mIRKFORCE";
  677. };
  678.  
  679. ban realname {
  680. mask "sub7server";
  681. reason "sub7";
  682. };
  683.  
  684. /*
  685. * NOTE FOR ALL BANS, they may be repeated for addition entries!
  686. *
  687. * NEW: except ban {}
  688. * OLD: E:Line
  689. * This makes it so you can't get banned.
  690. * Syntax:
  691. * except ban { mask (ident@host); };
  692. * Repeat the except ban {} as many times
  693. * as you want for different hosts.
  694. */
  695.  
  696. except ban {
  697. /* don't ban stskeeps */
  698. mask *stskeeps@212.*;
  699. };
  700.  
  701. /*
  702. * NEW: deny dcc {}
  703. * OLD: dccdeny.conf
  704. * Use this to block dcc send's... stops
  705. * viruses better.
  706. * Syntax:
  707. * deny dcc
  708. * {
  709. * filename "file to block (ie, *exe)";
  710. * reason "reason";
  711. * };
  712. */
  713. deny dcc {
  714. filename "*sub7*";
  715. reason "Possible Sub7 Virus";
  716. };
  717.  
  718. /*
  719. * NEW: deny channel {}
  720. * OLD: N/A (NEW)
  721. * This blocks channels from being joined.
  722. * Syntax:
  723. * deny channel {
  724. * channel "(channel)";
  725. * reason "reason";
  726. * };
  727. */
  728. deny channel {
  729. channel "*warez*";
  730. reason "Warez is illegal";
  731. };
  732.  
  733. /*
  734. * NEW: vhost {}
  735. * OLD: Vhost.conf file
  736. * This sets a fake ip for non-opers, or
  737. * opers too lazy to /sethost :P
  738. * Syntax:
  739. * vhost {
  740. * vhost (vhost.com);
  741. * from {
  742. * userhost (ident@host to allow to use it);
  743. * };
  744. * login (login name);
  745. * password (password);
  746. * };
  747. * then to use this vhost, do /vhost (login) (password) in IRC
  748. */
  749. vhost {
  750. vhost i.hate.microsefrs.com;
  751. from {
  752. userhost *@*.image.dk;
  753. };
  754. login stskeeps;
  755. password moocowsrulemyworld;
  756. };
  757.  
  758. /* Server specific configuration */
  759.  
  760. set {
  761. network-name "eNkrypt Net";
  762. kline-address "Chris@StanleyWebSolutions.com";
  763. default-server "irc.serverprotect.org";
  764. services-server "services.serverprotect.org";
  765. stats-server "stats.serverprotect.org";
  766. help-channel "#help";
  767. hiddenhost-prefix "hidden";
  768. /* prefix-quit "no"; */
  769. /* Cloak keys should be the same at all servers on the network.*/
  770. /* [..etc..]
  771. */
  772. cloak-keys {
  773. "$$";
  774. "$$;
  775. "$$";
  776. };
  777. /* on-oper host */
  778. hosts {
  779. local "locop.serverprotect.org";
  780. global "ircop.serverprotect.org";
  781. coadmin "coadmin.serverprotect.org";
  782. admin "admin.serverprotect.org";
  783. servicesadmin "csops.serverprotect.org";
  784. netadmin "netadmin.serverprotect.org";
  785. host-on-oper-up "no";
  786. };
  787. modes-on-connect "+ixw";
  788. modes-on-oper "+xwgs";
  789. oper-auto-join "#opers";
  790. options {
  791. hide-ulines;
  792. /* You can enable ident checking here if you want */
  793. /* identd-check; */
  794. show-connect-info;
  795. };
  796.  
  797. maxchannelsperuser 10;
  798. /* The minimum time a user must be connected before being allowed to use a QUIT message,
  799. * This will hopefully help stop spam */
  800. anti-spam-quit-message-time 10s;
  801. /* Make the message in static-quit show in all quits - meaning no
  802. custom quits are allowed on local server */
  803. /* static-quit "Client quit"; */
  804.  
  805. /* You can also block all part reasons by uncommenting this and say 'yes',
  806. * or specify some other text (eg: "Bye bye!") to always use as a comment.. */
  807. /* static-part yes; */
  808.  
  809. /* This allows you to make certain stats oper only, use * for all stats,
  810. * leave it out to allow users to see all stats. Type '/stats' for a full list.
  811. * Some admins might want to remove the 'kGs' to allow normal users to list
  812. * klines, glines and shuns.
  813. */
  814. oper-only-stats "okfGsMRUEelLCXzdD";
  815.  
  816. /* Throttling: this example sets a limit of 3 connection attempts per 60s (per host). */
  817. throttle {
  818. connections 3;
  819. period 60s;
  820. };
  821.  
  822. /* Anti flood protection */
  823. anti-flood {
  824. nick-flood 3:60; /* 3 nickchanges per 60 seconds (the default) */
  825. };
  826.  
  827. /* Spam filter */
  828. spamfilter {
  829. ban-time 1d; /* default duration of a *line ban set by spamfilter */
  830. ban-reason "Spam/Advertising"; /* default reason */
  831. virus-help-channel "#help"; /* channel to use for 'viruschan' action */
  832. /* except "#help"; channel to exempt from filtering */
  833. };
  834. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement