Advertisement
Guest User

Untitled

a guest
Jul 28th, 2019
523
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. "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. */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement