SHARE
TWEET

Untitled

a guest Jul 28th, 2019 7 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /* Configuration file for UnrealIRCd 4
  2.  *
  3.  * Simply copy this file to your conf/ directory, call it
  4.  * 'unrealircd.conf' and walk through it line by line (edit it!)
  5.  *
  6.  * Important: All lines, except the opening { line, end with an ;
  7.  * including };. This is very important, if you miss a ; somewhere then
  8.  * the configuration file parser will complain and your file will not
  9.  * be processed correctly!
  10.  * If this is your first experience with an UnrealIRCd configuration
  11.  * file then we really recommend you to read a little about the syntax,
  12.  * this only takes a few minutes and will help you a lot:
  13.  * https://www.unrealircd.org/docs/Configuration#Configuration_file_syntax
  14.  *
  15.  * UnrealIRCd 4 documentation (very extensive!):
  16.  * https://www.unrealircd.org/docs/UnrealIRCd_4_documentation
  17.  *
  18.  * Frequently Asked Questions:
  19.  * https://www.unrealircd.org/docs/FAQ
  20.  *
  21.  */
  22.  
  23. /* This is a comment, all text here is ignored (comment type #1) */
  24. // This is also a comment, this line is ignored (comment type #2)
  25. # This is also a comment, again this line is ignored (comment type #3)
  26.  
  27. /* UnrealIRCd makes heavy use of modules. Modules allow you to completely
  28.  * customize the featureset you wish to enable in UnrealIRCd.
  29.  * See: https://www.unrealircd.org/docs/Modules
  30.  *
  31.  * By using the include below we instruct the IRCd to read the file
  32.  * 'modules.default.conf' which will load more than 150 modules
  33.  * shipped with UnrealIRCd. In other words: this will simply load
  34.  * all the available features in UnrealIRCd.
  35.  * If you are setting up UnrealIRCd for the first time we suggest you
  36.  * use this. Then, when everything is up and running you can come
  37.  * back later to customize the list (if you wish).
  38.  */
  39. include "modules.default.conf";
  40.  
  41. /* Now let's include some other files as well:
  42.  * - help/help.conf for our on-IRC /HELPOP system
  43.  * - badwords.conf for channel and user mode +G
  44.  * - spamfilter.conf as an example for spamfilter usage
  45.  *   (commented out)
  46.  * - operclass.default.conf contains some good operclasses which
  47.  *   you can use in your oper blocks.
  48.  */
  49. include "help/help.conf";
  50. include "badwords.conf";
  51. //include "spamfilter.conf";
  52. include "operclass.default.conf";
  53.  
  54. /* This is the me { } block which basically says who we are.
  55.  * It defines our server name, some information line and an unique "sid".
  56.  * The server id (sid) must start with a digit followed by two digits or
  57.  * letters. The sid must be unique for your IRC network (each server should
  58.  * have it's own sid).
  59.  */
  60. me {
  61.     name "irc.madness.ninja";
  62.     info "Ninja Network";
  63.     sid "001";
  64. };
  65.  
  66. /* The admin { } block defines what users will see if they type /ADMIN.
  67.  * It normally contains information on how to contact the administrator.
  68.  */
  69. admin {
  70.     "Nita Octavian";
  71.     "ninja";
  72.     "ninja@madness.ninja";
  73. };
  74.  
  75. /* Clients and servers are put in class { } blocks, we define them here.
  76.  * Class blocks consist of the following items:
  77.  * - pingfreq: how often to ping a user / server (in seconds)
  78.  * - connfreq: how often we try to connect to this server (in seconds)
  79.  * - sendq: the maximum queue size for a connection
  80.  * - recvq: maximum receive queue from a connection (flood control)
  81.  */
  82.  
  83. /* Client class with good defaults */
  84. class clients
  85. {
  86.     pingfreq 90;
  87.     maxclients 1000;
  88.     sendq 200k;
  89.     recvq 8000;
  90. };
  91.  
  92. /* Special class for IRCOps with higher limits */
  93. class opers
  94. {
  95.     pingfreq 90;
  96.     maxclients 50;
  97.     sendq 1M;
  98.     recvq 8000;
  99. };
  100.  
  101. /* Server class with good defaults */
  102. class servers
  103. {
  104.     pingfreq 60;
  105.     connfreq 15; /* try to connect every 15 seconds */
  106.     maxclients 10; /* max servers */
  107.     sendq 20M;
  108. };
  109.  
  110. /* Allow blocks define which clients may connect to this server.
  111.  * This allows you to add a server password or restrict the server to
  112.  * specific IP's only. You also configure the maximum connections
  113.  * allowed per IP here.
  114.  * See also: https://www.unrealircd.org/docs/Allow_block
  115.  */
  116.  
  117. /* Allow everyone in, but only 3 connections per IP */
  118. allow {
  119.     ip *@*;
  120.     class clients;
  121.     maxperip 3;
  122. };
  123.  
  124. /* Example of a special allow block on a specific IP:
  125.  * Requires users on that IP to connect with a password. If the password
  126.  * is correct then it permits 20 connections on that IP.
  127.  */
  128. allow {
  129.     ip *@192.168.203.131;
  130.     class clients;
  131.     password "ninja";
  132.     maxperip 20;
  133. };
  134.  
  135. /* Oper blocks define your IRC Operators.
  136.  * IRC Operators are people who have "extra rights" compared to others,
  137.  * for example they may /KILL other people, initiate server linking,
  138.  * /JOIN channels even though they are banned, etc.
  139.  *
  140.  * For more information about becoming an IRCOp and how to do admin
  141.  * tasks, see: https://www.unrealircd.org/docs/IRCOp_guide
  142.  *
  143.  * For details regarding the oper { } block itself, see
  144.  * https://www.unrealircd.org/docs/Oper_block
  145.  */
  146.  
  147. /* Here is an example oper block for 'bobsmith' with password 'test'.
  148.  * You MUST change this!!
  149.  */
  150. oper ninja {
  151.     class opers;
  152.     mask *@*;
  153.     password "at";
  154.     /* Oper permissions are defined in an 'operclass' block.
  155.      * See https://www.unrealircd.org/docs/Operclass_block
  156.      * UnrealIRCd ships with a number of default blocks, see
  157.      * the article for a full list. We choose 'netadmin' here.
  158.      */
  159.     operclass netadmin;
  160.     swhois "is a Network Administrator";
  161.     vhost netadmin.mynet.org;
  162. };
  163.  
  164. /* Listen blocks define the ports where the server should listen on.
  165.  * In other words: the ports that clients and servers may use to
  166.  * connect to this server.
  167.  *
  168.  * Syntax:
  169.  * listen {
  170.  * {
  171.  *   ip <ip>;
  172.  *   port <port>;
  173.  *   options {
  174.  *     <options....>;
  175.  *   };
  176.  * };
  177.  */
  178.  
  179. /* Standard IRC port to Anope */
  180. listen {
  181.     ip *;
  182.     port 7000;
  183.     options { serversonly; };
  184. };
  185.  
  186. /* Standard IRC port 6667 */
  187. listen {
  188.     ip *;
  189.     port 6667;
  190. };
  191.  
  192. /* Standard IRC SSL/TLS port 6697 */
  193. listen {
  194.     ip *;
  195.     port 6697;
  196.     options { serversonly; };
  197. };
  198.  
  199. /* Special SSL/TLS servers-only port for linking */
  200. listen {
  201.     ip *;
  202.     port 6900;
  203.     options { serversonly; };
  204. };
  205.  
  206. /* NOTE: If you are on an IRCd shell with multiple IP's and you use
  207.  *       the above listen { } blocks then you will likely get an
  208.  *       'Address already in use' error and the ircd won't start.
  209.  *       This means you MUST bind to a specific IP instead of '*' like:
  210.  *       listen { ip 1.2.3.4; port 6667; };
  211.  *       Of course, replace the IP with the IP that was assigned to you.
  212.  */
  213.  
  214. /*
  215.  * Link blocks allow you to link multiple servers together to form a network.
  216.  * See https://www.unrealircd.org/docs/Tutorial:_Linking_servers
  217.  */
  218. link hub.madness.ninja
  219. {
  220.     incoming {
  221.         mask *@something;
  222.     };
  223.  
  224.     outgoing {
  225.         bind-ip *; /* or explicitly an IP */
  226.         hostname hub.madness.ninja;
  227.         port 6900;
  228.         options { ssl; };
  229.     };
  230.  
  231.     /* We use the SPKI fingerprint of the other server for authentication.
  232.      * Run './unrealircd spkifp' on the other side to get it.
  233.      * NOTE: requires UnrealIRCd 4.0.16 or later.
  234.      */
  235.     password "18IQhCX7zYqpnpqq2w6XeNheEeKbYTh2h1Z1/OHJ4CA=" { spkifp; };
  236.  
  237.     class servers;
  238. };
  239.  
  240. /* The link block for services is usually much simpler.
  241.  * For more information about what Services are,
  242.  * see https://www.unrealircd.org/docs/Services
  243.  */
  244. link services.madness.ninja
  245. {
  246.     incoming {
  247.         mask 192.168.203.131;
  248.     };
  249.  
  250.     password "at";
  251.  
  252.     class servers;
  253. };
  254.  
  255. /* U-lines give other servers (even) more power/commands.
  256.  * If you use services you must add them here.
  257.  * NEVER put the name of an UnrealIRCd server here!!!
  258.  */
  259. ulines {
  260.     services.madness.ninja;
  261. };
  262.  
  263. /* Here you can add a password for the IRCOp-only /DIE and /RESTART commands.
  264.  * This is mainly meant to provide a little protection against accidental
  265.  * restarts and server kills.
  266.  */
  267. drpass {
  268.     restart "restart";
  269.     die "die";
  270. };
  271.  
  272. /* The log block defines what should be logged and to what file.
  273.  * See also https://www.unrealircd.org/docs/Log_block
  274.  */
  275.  
  276. /* This is a good default, it logs almost everything */
  277. log "ircd.log" {
  278.     flags {
  279.         oper;
  280.         connects;
  281.         server-connects;
  282.         kills;
  283.         errors;
  284.         sadmin-commands;
  285.         chg-commands;
  286.         oper-override;
  287.         tkl;
  288.         spamfilter;
  289.     };
  290. };
  291.  
  292. /* With "aliases" you can create an alias like /SOMETHING to send a message to
  293.  * some user or bot. They are usually used for services.
  294.  *
  295.  * We have a number of pre-set alias files, check out the alias/ directory.
  296.  * As an example, here we include all aliases used for anope services.
  297.  */
  298. include "aliases/anope.conf";
  299.  
  300. /* Ban nick names so they cannot be used by regular users */
  301. ban nick {
  302.     mask "*C*h*a*n*S*e*r*v*";
  303.     reason "Reserved for Services";
  304. };
  305.  
  306. /* Ban ip.
  307.  * Note that you normally use /KLINE, /GLINE and /ZLINE for this.
  308.  */
  309. ban ip {
  310.     mask 195.86.232.81;
  311.     reason "Hate you";
  312. };
  313.  
  314. /* Ban server - if we see this server linked to someone then we delink */
  315. ban server {
  316.     mask eris.berkeley.edu;
  317.     reason "Get out of here.";
  318. };
  319.  
  320. /* Ban user - just as an example, you normally use /KLINE or /GLINE for this */
  321. ban user {
  322.     mask *tirc@*.saturn.bbn.com;
  323.     reason "Idiot";
  324. };
  325.  
  326. /* Ban realname allows you to ban clients based on their 'real name'
  327.  * or 'gecos' field.
  328.  */
  329. ban realname {
  330.     mask "Swat Team";
  331.     reason "mIRKFORCE";
  332. };
  333.  
  334. ban realname {
  335.     mask "sub7server";
  336.     reason "sub7";
  337. };
  338.  
  339. /* Ban and TKL exceptions. Allows you to exempt users / machines from
  340.  * KLINE, GLINE, etc.
  341.  * If you are an IRCOp with a static IP (and no untrusted persons on that IP)
  342.  * then we suggest you add yourself here. That way you can always get in
  343.  * even if you accidentally place a *LINE ban on yourself.
  344.  */
  345.  
  346. /* except ban protects you from KLINE and ZLINE */
  347. except ban {
  348.     mask *@192.0.2.1;
  349.     // you may add more mask entries here..
  350. };
  351.  
  352. /* except tkl with type 'all' protects you from GLINE, GZLINE, QLINE, SHUN */
  353. except tkl {
  354.     mask *@192.0.2.1;
  355.     type all;
  356. };
  357.  
  358. /* With deny dcc blocks you can ban filenames for DCC */
  359. deny dcc {
  360.     filename "*sub7*";
  361.     reason "Possible Sub7 Virus";
  362. };
  363.  
  364. /* deny channel allows you to ban a channel (mask) entirely */
  365. deny channel {
  366.     channel "*warez*";
  367.     reason "Warez is illegal";
  368.     class "clients";
  369. };
  370.  
  371. /* VHosts (Virtual Hosts) allow users to acquire a different host.
  372.  * See https://www.unrealircd.org/docs/Vhost_block
  373.  */
  374.  
  375. /* Example vhost which you can use. On IRC type: /VHOST test test
  376.  * NOTE: only people with an 'unrealircd.com' host may use it so
  377.  *       be sure to change the vhost::mask before you test.
  378.  */
  379. vhost {
  380.     vhost i.hate.microsefrs.com;
  381.     mask *@unrealircd.com;
  382.     login "test";
  383.     password "test";
  384. };
  385.  
  386. /* Blacklist blocks will query an external DNS Blacklist service
  387.  * whenever a user connects, to see if the IP address is known
  388.  * to cause drone attacks, is a known hacked machine, etc.
  389.  * Documentation: https://www.unrealircd.org/docs/Blacklist_block
  390.  * Or just have a look at the blocks below.
  391.  */
  392.  
  393. /* DroneBL, probably the most popular blacklist used by IRC Servers.
  394.  * See https://dronebl.org/ for their documentation and the
  395.  * meaning of the reply types. At time of writing we use types:
  396.  * 3: IRC Drone, 5: Bottler, 6: Unknown spambot or drone,
  397.  * 7: DDoS Drone, 8: SOCKS Proxy, 9: HTTP Proxy, 10: ProxyChain,
  398.  * 11: Web Page Proxy, 12: Open DNS Resolver, 13: Brute force attackers,
  399.  * 14: Open Wingate Proxy, 15: Compromised router / gateway,
  400.  * 16: Autorooting worms.
  401.  */
  402. blacklist dronebl {
  403.         dns {
  404.                 name dnsbl.dronebl.org;
  405.                 type record;
  406.                 reply { 3; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; };
  407.         };
  408.         action gline;
  409.         ban-time 24h;
  410.         reason "Proxy/Drone detected. Check https://dronebl.org/lookup?ip=$ip for details.";
  411. };
  412.  
  413. /* EFnetRBL, see https://rbl.efnetrbl.org/ for documentation
  414.  * and the meaning of the reply types.
  415.  * At time of writing: 1 is open proxy, 4 is TOR, 5 is drones/flooding.
  416.  *
  417.  * NOTE: If you want to permit TOR proxies on your server, then
  418.  *       you need to remove the '4;' below in the reply section.
  419.  */
  420. blacklist efnetrbl {
  421.         dns {
  422.                 name rbl.efnetrbl.org;
  423.                 type record;
  424.                 reply { 1; 4; 5; };
  425.         };
  426.         action gline;
  427.         ban-time 24h;
  428.         reason "Proxy/Drone/TOR detected. Check http://rbl.efnetrbl.org/?i=$ip for details.";
  429. };
  430.  
  431. /* You can include other configuration files */
  432. /* include "klines.conf"; */
  433.  
  434. /* Network configuration */
  435. set {
  436.     network-name        "MADNESS";
  437.     default-server      "irc.MADNESS.ninja";
  438.     services-server     "services.madness.ninja";
  439.     stats-server        "stats.MADNESS.ninja";
  440.     help-channel        "#Ninja";
  441.     hiddenhost-prefix   "Ninja";
  442.     prefix-quit         "Quit";
  443.  
  444.     /* Cloak keys should be the same at all servers on the network.
  445.      * They are used for generating masked hosts and should be kept secret.
  446.      * The keys should be 3 random strings of 50-100 characters
  447.      * and must consist of lowcase (a-z), upcase (A-Z) and digits (0-9).
  448.      * HINT: On *NIX, you can run './unrealircd gencloak' in your shell to let
  449.      *       UnrealIRCd generate 3 random strings for you.
  450.      */
  451.     cloak-keys {
  452.         "2daEte8S20Ol837A8to6Uqx4mR8T8PSdEo43E1612pyhenPbel8xlY7EgMW";
  453.         "lbidfAvXi44KBv8D2EXBW3k8Af73AY8eVKcOjt37o134BJsYOVKwK0";
  454.         "es7G4swhj88A7J2Uvd4L4aKGd11y1ol7HXpMv2VXAKYvTUh17BBB";
  455.     };
  456. };
  457.  
  458. /* Server specific configuration */
  459.  
  460. set {
  461.     kline-address "Shades@madness.ninja"; /* e-mail or URL shown when a user is banned */
  462.     modes-on-connect "+ixw"; /* when users connect, they will get these user modes */
  463.     modes-on-oper    "+xwgs"; /* when someone becomes IRCOp they'll get these modes */
  464.     oper-auto-join "#ninja"; /* IRCOps are auto-joined to this channel */
  465.     options {
  466.         hide-ulines; /* hide U-lines in /MAP and /LINKS */
  467.         show-connect-info; /* show "looking up your hostname" messages on connect */
  468.     };
  469.  
  470.     maxchannelsperuser 10; /* maximum number of channels a user may /JOIN */
  471.  
  472.     /* The minimum time a user must be connected before being allowed to
  473.      * use a QUIT message. This will hopefully help stop spam.
  474.      */
  475.     anti-spam-quit-message-time 10s;
  476.  
  477.     /* Or simply set a static quit, meaning any /QUIT reason is ignored */
  478.     /* static-quit "Client quit";   */
  479.  
  480.     /* static-part does the same for /PART */
  481.     /* static-part yes; */
  482.  
  483.     /* Which /STATS to restrict to opers only. We suggest to leave it to * (ALL) */
  484.     oper-only-stats "*";
  485.  
  486.     /* Anti flood protection */
  487.     anti-flood {
  488.         nick-flood 3:60;    /* 3 nick changes per 60 seconds (the default) */
  489.         connect-flood 3:60; /* 3 connection attempts per 60 seconds (the default) */
  490.         away-flood 4:120;   /* 4 times per 2 minutes you may use /AWAY (default) */
  491.     };
  492.  
  493.     /* Settings for spam filter */
  494.     spamfilter {
  495.         ban-time 1d; /* default duration of a *LINE ban set by spamfilter */
  496.         ban-reason "Spam/Advertising"; /* default reason */
  497.         virus-help-channel "#help"; /* channel to use for 'viruschan' action */
  498.         /* except "#help"; channel to exempt from Spamfilter */
  499.     };
  500. };
  501.  
  502. /* Finally, you may wish to have a MOTD (Message of the Day), this can be
  503.  * done by creating an 'ircd.motd' text file in your conf/ directory.
  504.  * This file will be shown to your users on connect.
  505.  * For more information see https://www.unrealircd.org/docs/MOTD_and_Rules
  506.  */
  507.  
  508. /*
  509.  * Problems or need more help?
  510.  * 1) https://www.unrealircd.org/docs/UnrealIRCd_4_documentation
  511.  * 2) https://www.unrealircd.org/docs/FAQ <- answers 80% of your questions!
  512.  * 3) If you are still having problems then you can get support:
  513.  *    - Forums: https://forums.unrealircd.org/
  514.  *    - IRC: irc.unrealircd.org (SSL on port 6697) / #unreal-support
  515.  *    Note that we require you to read the documentation and FAQ first!
  516.  */
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Not a member of Pastebin yet?
Sign Up, it unlocks many cool features!
 
Top