Guest User

Untitled

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