Advertisement
Guest User

Untitled

a guest
Nov 10th, 2014
485
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 38.31 KB | None | 0 0
  1. /*
  2. * In the documentation for each directive, one of the following will be
  3. * included to indicate whether an option is required:
  4. *
  5. * [REQUIRED]
  6. * Indicates a directive which must be given. Without it, Services will
  7. * not start.
  8. *
  9. * [RECOMMENDED]
  10. * Indicates a directive which may be omitted, but omitting it may cause
  11. * undesirable side effects.
  12. *
  13. * [OPTIONAL]
  14. * Indicates a directive which is optional. If not given, the feature
  15. * will typically be disabled. If this is not the case, more
  16. * information will be given in the documentation.
  17. *
  18. * [DISCOURAGED]
  19. * Indicates a directive which may cause undesirable side effects if
  20. * specified.
  21. *
  22. * [DEPRECATED]
  23. * Indicates a directive which will disappear in a future version of
  24. * Services, usually because its functionality has been either
  25. * superseded by that of other directives or incorporated into the main
  26. * program.
  27. */
  28.  
  29. /*
  30. * The services.host define is used in multiple different locations throughout the
  31. * configuration for services clients hostnames.
  32. */
  33. define
  34. {
  35. name = "services.host"
  36. value = "services.glx-alliance.com"
  37. }
  38.  
  39. /*
  40. * [REQUIRED] IRCd Config
  41. *
  42. * This section is used to set up Anope to connect to your IRC network.
  43. * This section can be included multiple times, and Anope will attempt to
  44. * connect to each server until it finally connects.
  45. *
  46. * Each uplink IRCd should have a corresponding configuration to allow Services
  47. * to link to it.
  48. *
  49. * An example configuration for InspIRCd that is compatible with the below uplink
  50. * and serverinfo configuration would look like:
  51. *
  52. * <link name="services.localhost.net"
  53. * ipaddr="127.0.0.1"
  54. * port="6667"
  55. * sendpass="mypassword"
  56. * recvpass="mypassword">
  57. * <uline server="services.localhost.net" silent="yes">
  58. * <bind address="127.0.0.1" port="7000" type="servers">
  59. *
  60. * An example configuration for UnrealIRCd that is compatible with the below uplink
  61. * and serverinfo configuration would look like:
  62. *
  63. * link services.localhost.net
  64. * {
  65. * username *;
  66. * hostname *;
  67. * bind-ip "127.0.0.1";
  68. * port 7000;
  69. * hub *;
  70. * password-connect "mypassword";
  71. * password-receive "mypassword";
  72. * class servers;
  73. * };
  74. * ulines { services.localhost.net; };
  75. * listen 127.0.0.1:7000;
  76. */
  77. uplink
  78. {
  79. /*
  80. * The IP or hostname of the IRC server you wish to connect Services to.
  81. * Usually, you will want to connect Services over 127.0.0.1 (aka localhost).
  82. *
  83. * NOTE: On some shell providers, this will not be an option.
  84. */
  85. host = "127.0.0.1"
  86.  
  87. /*
  88. * Enable if Services should connect using IPv6.
  89. */
  90. ipv6 = no
  91.  
  92. /*
  93. * Enable if Services should connect using SSL.
  94. * You must have an SSL module loaded for this to work.
  95. */
  96. ssl = no
  97.  
  98. /*
  99. * The port to connect to.
  100. * The IRCd *MUST* be configured to listen on this port, and to accept
  101. * server connections.
  102. *
  103. * Refer to your IRCd documentation for how this is to be done.
  104. */
  105. port = 7000
  106.  
  107. /*
  108. * The password to send to the IRC server for authentication.
  109. * This must match the link block on your IRCd.
  110. *
  111. * Refer to your IRCd documentation for more information on link blocks.
  112. */
  113. password = "akQfafekjAEFS3def4"
  114. }
  115.  
  116. /*
  117. * [REQUIRED] Server Information
  118. *
  119. * This section contains information about the Services server.
  120. */
  121. serverinfo
  122. {
  123. /*
  124. * The hostname that Services will be seen as, it must have no conflicts with any
  125. * other server names on the rest of your IRC network. Note that it does not have
  126. * to be an existing hostname, just one that isn't on your network already.
  127. */
  128. name = "services.localhost.net"
  129.  
  130. /*
  131. * The text which should appear as the server's information in /whois and similar
  132. * queries.
  133. */
  134. description = "Services for IRC Networks"
  135.  
  136. /*
  137. * The local address that Services will bind to before connecting to the remote
  138. * server. This may be useful for multihomed hosts. If omitted, Services will let
  139. * the Operating System choose the local address. This directive is optional.
  140. *
  141. * If you don't know what this means or don't need to use it, just leave this
  142. * directive commented out.
  143. */
  144. #localhost = "nowhere."
  145.  
  146. /*
  147. * What Server ID to use for this connection?
  148. * Note: This should *ONLY* be used for TS6/P10 IRCds. Refer to your IRCd documentation
  149. * to see if this is needed.
  150. */
  151. #id = "00A"
  152.  
  153. /*
  154. * The filename containing the Services process ID. The path is relative to the
  155. * services root directory.
  156. */
  157. pid = "data/services.pid"
  158.  
  159. /*
  160. * The filename containing the Message of the Day. The path is relative to the
  161. * services root directory.
  162. */
  163. motd = "conf/services.motd"
  164. }
  165.  
  166. /*
  167. * [REQUIRED] Protocol module
  168. *
  169. * This directive tells Anope which IRCd Protocol to speak when connecting.
  170. * You MUST modify this to match the IRCd you run.
  171. *
  172. * Supported:
  173. * - bahamut
  174. * - charybdis
  175. * - hybrid
  176. * - inspircd12
  177. * - inspircd20
  178. * - ngircd
  179. * - plexus
  180. * - ratbox
  181. * - unreal
  182. */
  183. module
  184. {
  185. name = "unreal"
  186.  
  187. /*
  188. * Some protocol modules can enforce mode locks server-side. This reduces the spam caused by
  189. * services immediately reversing mode changes for locked modes.
  190. *
  191. * If the protocol module you have loaded does not support this, this setting will have no effect.
  192. */
  193. #use_server_side_mlock = yes
  194.  
  195. /*
  196. * Some protocol modules can enforce topic locks server-side. This reduces the spam caused by
  197. * services immediately reversing topic changes.
  198. *
  199. * If the protocol module you have loaded does not support this, this setting will have no effect.
  200. */
  201. #use_server_side_topiclock = yes
  202. }
  203.  
  204. /*
  205. * [REQUIRED] Network Information
  206. *
  207. * This section contains information about the IRC network that Services will be
  208. * connecting to.
  209. */
  210. networkinfo
  211. {
  212. /*
  213. * This is the name of the network that Services will be running on.
  214. */
  215. networkname = "LocalNet"
  216.  
  217. /*
  218. * Set this to the maximum allowed nick length on your network.
  219. * Be sure to set this correctly, as setting this wrong can result in
  220. * Services being disconnected from the network.
  221. */
  222. nicklen = 31
  223.  
  224. /* Set this to the maximum allowed ident length on your network.
  225. * Be sure to set this correctly, as setting this wrong can result in
  226. * Services being disconnected from the network.
  227. */
  228. userlen = 10
  229.  
  230. /* Set this to the maximum allowed hostname length on your network.
  231. * Be sure to set this correctly, as setting this wrong can result in
  232. * Services being disconnected from the network.
  233. */
  234. hostlen = 64
  235.  
  236. /* Set this to the maximum allowed channel length on your network.
  237. */
  238. chanlen = 32
  239.  
  240. /* The maximum number of list modes settable on a channel (such as b, e, I).
  241. * Comment out or set to 0 to disable.
  242. */
  243. modelistsize = 100
  244.  
  245. /*
  246. * The characters allowed in hostnames. This is used for validating hostnames given
  247. * to services, such as BotServ bot hostnames and user vhosts. Changing this is not
  248. * recommended unless you know for sure your IRCd supports whatever characters you are
  249. * wanting to use. Telling services to set a vHost containing characters your IRCd
  250. * disallows could potentially break the IRCd and/or Services.
  251. *
  252. * It is recommended you DON'T change this.
  253. */
  254. vhost_chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.-"
  255.  
  256. /*
  257. * If set to true, allows vHosts to not contain dots (.).
  258. * Newer IRCds generally do not have a problem with this, but the same warning as
  259. * vhost_chars applies.
  260. *
  261. * It is recommended you DON'T change this.
  262. */
  263. allow_undotted_vhosts = false
  264.  
  265. /*
  266. * The characters that are not allowed to be at the very beginning or very ending
  267. * of a vHost. The same warning as vhost_chars applies.
  268. *
  269. * It is recommended you DON'T change this.
  270. */
  271. disallow_start_or_end = ".-"
  272. }
  273.  
  274. /*
  275. * [REQUIRED] Services Options
  276. *
  277. * This section contains various options which determine how Services will operate.
  278. */
  279. options
  280. {
  281. /*
  282. * On Linux/UNIX systems Anope can setuid and setgid to this user and group
  283. * after starting up. This is useful if Anope has to bind to privileged ports
  284. */
  285. #user = "anope"
  286. #group = "anope"
  287.  
  288. /*
  289. * The case mapping used by services. This must be set to a valid locale name
  290. * installed on your machine. Services use this case map to compare, with
  291. * case insensitivity, things such as nick names, channel names, etc.
  292. *
  293. * We provide two special casemaps shipped with Anope, ascii and rfc1459.
  294. *
  295. * This value should be set to what your IRCd uses, which is probably rfc1459,
  296. * however Anope has always used ascii for comparison, so the default is ascii.
  297. *
  298. * Changing this value once set is not recommended.
  299. */
  300. casemap = "ascii"
  301.  
  302. /*
  303. * This key is used to initiate the random number generator. This number
  304. * MUST be random as you want your passcodes to be random. Don't give this
  305. * key to anyone! Keep it private!
  306. *
  307. * NOTE: If you don't uncomment this or keep the default values, any talented
  308. * programmer would be able to easily "guess" random strings used to mask
  309. * information. Be safe, and come up with a 7-digit number.
  310. *
  311. * This directive is optional, but highly recommended.
  312. */
  313. #seed = 9866235
  314.  
  315. /*
  316. * If set, Services will perform more stringent checks on passwords. If this
  317. * isn't set, Services will only disallow a password if it is the same as the
  318. * entity (nickname name) with which it is associated. When set, however,
  319. * Services will also check that the password is at least five
  320. * characters long, and in the future will probably check other things
  321. * as well.
  322. *
  323. * This directive is optional, but recommended.
  324. */
  325. strictpasswords = yes
  326.  
  327. /*
  328. * Sets the number of invalid password tries before Services removes a user
  329. * from the network. If a user enters a number of invalid passwords equal to
  330. * the given amount for any Services function or combination of functions
  331. * during a single IRC session (subject to badpasstimeout, below), Services
  332. * will issues a /KILL for the user. If not given, Services will ignore
  333. * failed password attempts (though they will be logged in any case).
  334. *
  335. * This directive is optional, but recommended.
  336. */
  337. badpasslimit = 5
  338.  
  339. /*
  340. * Sets the time after which invalid passwords are forgotten about. If a user
  341. * does not enter any incorrect passwords in this amount of time, the incorrect
  342. * password count will reset to zero. If not given, the timeout will be
  343. * disabled, and the incorrect password count will never be reset until the user
  344. * disconnects.
  345. *
  346. * This directive is optional.
  347. */
  348. badpasstimeout = 1h
  349.  
  350. /*
  351. * Sets the delay between automatic database updates.
  352. */
  353. updatetimeout = 5m
  354.  
  355. /*
  356. * Sets the delay between checks for expired nicknames and channels.
  357. */
  358. expiretimeout = 30m
  359.  
  360. /*
  361. * Sets the timeout period for reading from the uplink.
  362. */
  363. readtimeout = 5s
  364.  
  365. /*
  366. * Sets the interval between sending warning messages for program errors via
  367. * WALLOPS/GLOBOPS.
  368. */
  369. warningtimeout = 4h
  370.  
  371. /*
  372. * Sets the (maximum) frequency at which the timeout list is checked. This,
  373. * combined with readtimeout above, determines how accurately timed events,
  374. * such as nick kills, occur; it also determines how much CPU time Services
  375. * will use doing this. Higher values will cause less accurate timing but
  376. * less CPU usage.
  377. *
  378. * Note that this value is not an absolute limit on the period between
  379. * checks of the timeout list; the previous may be as great as readtimeout
  380. * (above) during periods of inactivity.
  381. *
  382. * If this directive is not given, it will default to 0.
  383. */
  384. timeoutcheck = 3s
  385.  
  386. /*
  387. * If set, this will allow users to let Services send PRIVMSGs to them
  388. * instead of NOTICEs. Also see the defmsg option of nickserv:defaults,
  389. * which also toggles the default communication (PRIVMSG or NOTICE) to
  390. * use for unregistered users.
  391. *
  392. * This is a feature that is against the IRC RFC and should be used ONLY
  393. * if absolutely necessary.
  394. *
  395. * This directive is optional, and not recommended.
  396. */
  397. #useprivmsg = yes
  398.  
  399. /*
  400. * If set, will force Services to only respond to PRIVMSGs addresses to
  401. * Nick@ServerName - e.g. NickServ@localhost.net. This should be used in
  402. * conjunction with IRCd aliases. This directive is optional.
  403. *
  404. * This option will have no effect on some IRCds, such as TS6 IRCds.
  405. */
  406. #usestrictprivmsg = yes
  407.  
  408. /*
  409. * If set, Services will only show /stats o to IRC Operators. This directive
  410. * is optional.
  411. */
  412. #hidestatso = yes
  413.  
  414. /*
  415. * A space-separated list of ulined servers on your network, it is assumed that
  416. * the servers in this list are allowed to set channel modes and Services will
  417. * not attempt to reverse their mode changes.
  418. *
  419. * WARNING: Do NOT put your normal IRC user servers in this directive.
  420. *
  421. * This directive is optional.
  422. */
  423. #ulineservers = "stats.your.network"
  424.  
  425. /*
  426. * How long to wait between connection retries with the uplink(s).
  427. */
  428. retrywait = 60s
  429.  
  430. /*
  431. * If set, Services will hide commands that users don't have the privilege to execute
  432. * from HELP output.
  433. */
  434. hideprivilegedcommands = yes
  435.  
  436. /*
  437. * If set, Services will hide commands that users can't execute because they are not
  438. * logged in from HELP output.
  439. */
  440. hideregisteredcommands = yes
  441.  
  442. /* The regex engine to use, as provided by the regex modules.
  443. * Leave commented to disable regex matching.
  444. *
  445. * Note for this to work the regex module providing the regex engine must be loaded.
  446. */
  447. regexengine = "regex/pcre"
  448.  
  449. /*
  450. * A list of languages to load on startup that will be available in /nickserv set language.
  451. * Useful if you translate Anope to your language. (Explained further in docs/LANGUAGE).
  452. * Note that english should not be listed here because it is the base language.
  453. *
  454. * Removing .UTF-8 will instead use the default encoding for the language, eg. iso-8859-1 for western European languages.
  455. */
  456. languages = "ca_ES.UTF-8 de_DE.UTF-8 el_GR.UTF-8 es_ES.UTF-8 fr_FR.UTF-8 hu_HU.UTF-8 it_IT.UTF-8 nl_NL.UTF-8 pl_PL.UTF-8 pt_PT.UTF-8 ru_RU.UTF-8 tr_TR.UTF-8"
  457.  
  458. /*
  459. * Default language that non- and newly-registered nicks will receive messages in.
  460. * Set to "en" to enable English. Defaults to the language the system uses.
  461. */
  462. #defaultlanguage = "es_ES.UTF-8"
  463. }
  464.  
  465. /*
  466. * [OPTIONAL] BotServ
  467. *
  468. * Includes botserv.example.conf, which is necessary for BotServ functionality.
  469. *
  470. * Remove this block to disable BotServ.
  471. */
  472. include
  473. {
  474. type = "file"
  475. name = "botserv.example.conf"
  476. }
  477.  
  478. /*
  479. * [RECOMMENDED] ChanServ
  480. *
  481. * Includes chanserv.example.conf, which is necessary for ChanServ functionality.
  482. *
  483. * Remove this block to disable ChanServ.
  484. */
  485. include
  486. {
  487. type = "file"
  488. name = "chanserv.example.conf"
  489. }
  490.  
  491. /*
  492. * [RECOMMENDED] Global
  493. *
  494. * Includes global.example.conf, which is necessary for Global functionality.
  495. *
  496. * Remove this block to disable Global.
  497. */
  498. include
  499. {
  500. type = "file"
  501. name = "global.example.conf"
  502. }
  503.  
  504. /*
  505. * [OPTIONAL] HostServ
  506. *
  507. * Includes hostserv.example.conf, which is necessary for HostServ functionality.
  508. *
  509. * Remove this block to disable HostServ.
  510. */
  511. include
  512. {
  513. type = "file"
  514. name = "hostserv.example.conf"
  515. }
  516.  
  517. /*
  518. * [OPTIONAL] MemoServ
  519. *
  520. * Includes memoserv.example.conf, which is necessary for MemoServ functionality.
  521. *
  522. * Remove this block to disable MemoServ.
  523. */
  524. include
  525. {
  526. type = "file"
  527. name = "memoserv.example.conf"
  528. }
  529.  
  530. /*
  531. * [OPTIONAL] NickServ
  532. *
  533. * Includes nickserv.example.conf, which is necessary for NickServ functionality.
  534. *
  535. * Remove this block to disable NickServ.
  536. */
  537. include
  538. {
  539. type = "file"
  540. name = "nickserv.example.conf"
  541. }
  542.  
  543. /*
  544. * [RECOMMENDED] OperServ
  545. *
  546. * Includes operserv.example.conf, which is necessary for OperServ functionality.
  547. *
  548. * Remove this block to disable OperServ.
  549. */
  550. include
  551. {
  552. type = "file"
  553. name = "operserv.example.conf"
  554. }
  555.  
  556. /*
  557. * [RECOMMENDED] Logging Configuration
  558. *
  559. * This section is used for configuring what is logged and where it is logged to.
  560. * You may have multiple log blocks if you wish. Remember to properly secure any
  561. * channels you choose to have Anope log to!
  562. */
  563. log
  564. {
  565. /*
  566. * Target(s) to log to, which may be one of the following:
  567. * - a channel name
  568. * - a filename
  569. * - globops
  570. */
  571. target = "services.log"
  572.  
  573. /* Log to both services.log and the channel #services
  574. *
  575. * Note that some older IRCds, such as Ratbox, require services to be in the
  576. * log channel to be able to message it. To do this, configure service:channels to
  577. * join your logging channel.
  578. */
  579. #target = "services.log #services"
  580.  
  581. /*
  582. * The source(s) to only accept log messages from. Leave commented to allow all sources.
  583. * This can be a users name, a channel name, one of our clients (eg, OperServ), or a server name.
  584. */
  585. #source = ""
  586.  
  587. /*
  588. * The bot used to log generic messages which have no predefined sender if there
  589. * is a channel in the target directive.
  590. */
  591. bot = "Global"
  592.  
  593. /*
  594. * The number of days to keep logfiles, only useful if you are logging to a file.
  595. * Set to 0 to never delete old logfiles.
  596. *
  597. * Note that Anope must run 24 hours a day for this feature to work correctly.
  598. */
  599. logage = 7
  600.  
  601. /*
  602. * What types of log messages should be logged by this block. There are nine general categories:
  603. *
  604. * admin - Execution of admin commands (OperServ, etc).
  605. * override - A services operator using their powers to execute a command they couldn't normally.
  606. * commands - Execution of general commands.
  607. * servers - Server actions, linking, squitting, etc.
  608. * channels - Actions in channels such as joins, parts, kicks, etc.
  609. * users - User actions such as connecting, disconnecting, changing name, etc.
  610. * other - All other messages without a category.
  611. * rawio - Logs raw input and output from services
  612. * debug - Debug messages (log files can become VERY large from this).
  613. *
  614. * These options determine what messages from the categories should be logged. Wildcards are accepted, and
  615. * you can also negate values with a ~. For example, "~operserv/akill operserv/*" would log all operserv
  616. * messages except for operserv/akill. Note that processing stops at the first matching option, which
  617. * means "* ~operserv/*" would log everything because * matches everything.
  618. *
  619. * Valid admin, override, and command options are:
  620. * pesudo-serv/commandname (eg, operserv/akill, chanserv/set)
  621. *
  622. * Valid server options are:
  623. * connect, quit, sync, squit
  624. *
  625. * Valid channel options are:
  626. * create, destroy, join, part, kick, leave, mode
  627. *
  628. * Valid user options are:
  629. * connect, disconnect, quit, nick, ident, host, mode, maxusers, oper
  630. *
  631. * Rawio and debug are simple yes/no answers, there are no types for them.
  632. *
  633. * Note that modules may add their own values to these options.
  634. */
  635. admin = "*"
  636. override = "chanserv/* nickserv/* memoserv/set ~botserv/set botserv/*"
  637. commands = "~operserv/* *"
  638. servers = "*"
  639. #channels = "~mode *"
  640. users = "connect disconnect nick"
  641. other = "*"
  642. rawio = no
  643. debug = no
  644. }
  645.  
  646. /*
  647. * A log block to globops some useful things.
  648. */
  649. log
  650. {
  651. target = "globops"
  652. admin = "global/* operserv/mode operserv/kick operserv/akill operserv/s*line operserv/noop operserv/jupe operserv/oline operserv/set operserv/svsnick operserv/svsjoin operserv/svspart nickserv/getpass */drop"
  653. servers = "squit"
  654. users = "oper"
  655. other = "expire/* bados akill/*"
  656. }
  657.  
  658. /*
  659. * [RECOMMENDED] Oper Access Config
  660. *
  661. * This section is used to set up staff access to restricted oper only commands.
  662. * You may define groups of commands and privileges, as well as who may use them.
  663. *
  664. * This block is recommended, as without it you will be unable to access most oper commands.
  665. * It replaces the old ServicesRoot directive amongst others.
  666. *
  667. * The command names below are defaults and are configured in the *serv.conf's. If you configure
  668. * additional commands with permissions, such as commands from third party modules, the permissions
  669. * must be included in the opertype block before the command can be used.
  670. *
  671. * Available privileges:
  672. * botserv/administration - Can view and assign private BotServ bots
  673. * chanserv/administration - Can modify the settings of any channel (including changing of the owner!)
  674. * chanserv/access/modify - Can modify channel access and akick lists, and use /chanserv enforce
  675. * chanserv/auspex - Can see any information with /chanserv info
  676. * chanserv/no-register-limit - May register an unlimited number of channels and nicknames
  677. * chanserv/kick - Can kick and ban users from channels through ChanServ
  678. * memoserv/info - Can see any information with /memoserv info
  679. * memoserv/set-limit - Can set the limit of max stored memos on any user and channel
  680. * memoserv/no-limit - Can send memos through limits and throttles
  681. * nickserv/access - Can modify other users access and certificate lists
  682. * nickserv/alist - Can see the channel access list of other users
  683. * nickserv/auspex - Can see any information with /nickserv info
  684. * nickserv/confirm - Can confirm other users nicknames
  685. * nickserv/drop - Can drop other users nicks
  686. * operserv/config - Can modify services's configuration
  687. * protected - Can not be kicked from channels by Services
  688. *
  689. * Available commands:
  690. * botserv/bot/del botserv/bot/add botserv/bot/change botserv/set/private
  691. * botserv/set/nobot
  692. *
  693. * chanserv/access/list chanserv/drop chanserv/getkey chanserv/invite
  694. * chanserv/list chanserv/suspend chanserv/topic
  695. *
  696. * chanserv/saset/bantype chanserv/saset/description chanserv/saset/email chanserv/saset/keepmodes
  697. * chanserv/saset/founder chanserv/saset/keeptopic chanserv/saset/restricted
  698. * chanserv/saset/peace chanserv/saset/persist chanserv/saset/private
  699. * chanserv/saset/secure chanserv/saset/securefounder chanserv/saset/secureops
  700. * chanserv/saset/signkick chanserv/saset/successor chanserv/saset/topiclock
  701. * chanserv/saset/url chanserv/saset/noexpire chanserv/saset/autoop
  702. *
  703. * memoserv/sendall memoserv/staff
  704. *
  705. * nickserv/getpass nickserv/getemail nickserv/suspend nickserv/ajoin
  706. * nickserv/list
  707. *
  708. * nickserv/saset/autoop nickserv/saset/email nickserv/saset/greet nickserv/saset/password
  709. * nickserv/saset/display nickserv/saset/kill nickserv/saset/language nickserv/saset/message
  710. * nickserv/saset/private nickserv/saset/secure nickserv/saset/url nickserv/saset/noexpire
  711. * nickserv/saset/keepmodes
  712. *
  713. * hostserv/set hostserv/del hostserv/list
  714. *
  715. * global/global
  716. *
  717. * operserv/news operserv/stats operserv/kick operserv/exception operserv/seen
  718. * operserv/mode operserv/session operserv/modinfo operserv/ignore operserv/chanlist
  719. * operserv/chankill operserv/akill operserv/sqline operserv/snline operserv/userlist
  720. * operserv/oper operserv/config operserv/umode operserv/logsearch
  721. * operserv/modload operserv/jupe operserv/set operserv/noop
  722. * operserv/quit operserv/update operserv/reload operserv/restart
  723. * operserv/shutdown operserv/svs operserv/oline operserv/kill
  724. *
  725. * Firstly, we define 'opertypes' which are named whatever we want ('Network Administrator', etc).
  726. * These can contain commands for oper-only strings (see above) which grants access to that specific command,
  727. * and privileges (which grant access to more general permissions for the named area).
  728. * Wildcard entries are permitted for both, e.g. 'commands = "operserv/*"' for all OperServ commands.
  729. *
  730. * Below are some default example types, but this is by no means exhaustive,
  731. * and it is recommended that you configure them to your needs.
  732. */
  733.  
  734. opertype
  735. {
  736. /* The name of this opertype */
  737. name = "Helper"
  738.  
  739. /* What commands (see above) this opertype has */
  740. commands = "hostserv/*"
  741. }
  742.  
  743. opertype
  744. {
  745. /* The name of this opertype */
  746. name = "Services Operator"
  747.  
  748. /* What opertype(s) this inherits from. Seperate with a comma. */
  749. inherits = "Helper, Another Helper"
  750.  
  751. /* What commands (see above) this opertype may use */
  752. commands = "chanserv/list chanserv/suspend chanserv/topic memoserv/staff nickserv/list nickserv/suspend operserv/mode operserv/chankill operserv/akill operserv/session operserv/modinfo operserv/sqline operserv/oper operserv/kick operserv/ignore operserv/snline"
  753.  
  754. /* What privs (see above) this opertype has */
  755. privs = "chanserv/auspex chanserv/no-register-limit memoserv/* nickserv/auspex nickserv/confirm"
  756.  
  757. /*
  758. * Modes to be set on users when they identify to accounts linked to this opertype.
  759. *
  760. * This can be used to automatically oper users who identify for services operator accounts, and is
  761. * useful for setting modes such as Plexus's user mode +N.
  762. *
  763. * Note that some IRCds, such as InspIRCd, do not allow directly setting +o, and this will not work.
  764. */
  765. #modes = "+o"
  766. }
  767.  
  768. opertype
  769. {
  770. name = "Services Administrator"
  771.  
  772. inherits = "Services Operator"
  773.  
  774. commands = "chanserv/access/list chanserv/drop chanserv/getkey chanserv/saset/noexpire memoserv/sendall nickserv/saset/* nickserv/getemail operserv/news operserv/jupe operserv/svs operserv/stats operserv/oline operserv/noop operserv/forbid global/*"
  775.  
  776. privs = "*"
  777. }
  778.  
  779. opertype
  780. {
  781. name = "Services Root"
  782.  
  783. commands = "*"
  784.  
  785. privs = "*"
  786. }
  787.  
  788. /*
  789. * After defining different types of operators in the above opertype section, we now define who is in these groups
  790. * through 'oper' blocks, similar to ircd access.
  791. *
  792. * The default is to comment these out (so NOBODY will have Services access).
  793. * You probably want to add yourself and a few other people at minimum.
  794. *
  795. * As with all permissions, make sure to only give trustworthy people access to Services.
  796. */
  797.  
  798. #oper
  799. {
  800. /* The nickname of this services oper */
  801. #name = "nick1"
  802.  
  803. /* The opertype this person will have */
  804. type = "Services Root"
  805.  
  806. /* If set, the user must be an oper on the IRCd to gain their Services
  807. * oper privileges.
  808. */
  809. require_oper = yes
  810.  
  811. /* An optional password. If defined the user must login using "/msg OperServ LOGIN" first */
  812. #password = "secret"
  813.  
  814. /* An optional SSL fingerprint. If defined, it's required to be able to use this opertype. */
  815. #certfp = "ed3383b3f7d74e89433ddaa4a6e5b2d7"
  816.  
  817. /* An optional list of user@host masks. If defined the user must be connected from one of them */
  818. #host = "*@*.anope.org ident@*"
  819.  
  820. /* An optional vHost to set on users who identify for this oper block.
  821. * This will override HostServ vHosts, and may not be available on all IRCds
  822. */
  823. #vhost = "oper.mynet"
  824. }
  825.  
  826. #oper
  827. {
  828. name = "nick2"
  829. type = "Services Administrator"
  830. }
  831.  
  832. #oper
  833. {
  834. name = "nick3"
  835. type = "Helper"
  836. }
  837.  
  838. /*
  839. * [OPTIONAL] Mail Config
  840. *
  841. * This section contains settings related to the use of e-mail from Services.
  842. * If the usemail directive is set to yes, unless specified otherwise, all other
  843. * directives are required.
  844. *
  845. * NOTE: Users can find the IP of the machine services is running on by examining
  846. * mail headers. If you do not want your IP known, you should set up a mail relay
  847. * to strip the relevant headers.
  848. */
  849. mail
  850. {
  851. /*
  852. * If set, this option enables the mail commands in Services. You may choose
  853. * to disable it if you have no Sendmail-compatible mailer installed. Whilst
  854. * this directive (and entire block) is optional, it is required if
  855. * nickserv:registration is set to yes.
  856. */
  857. usemail = yes
  858.  
  859. /*
  860. * This is the command-line that will be used to call the mailer to send an
  861. * e-mail. It must be called with all the parameters needed to make it
  862. * scan the mail input to find the mail recipient; consult your mailer
  863. * documentation.
  864. *
  865. * Postfix users must use the compatible sendmail utility provided with
  866. * it. This one usually needs no parameters on the command-line. Most
  867. * sendmail applications (or replacements of it) require the -t option
  868. * to be used.
  869. */
  870. sendmailpath = "/usr/sbin/sendmail -t"
  871.  
  872. /*
  873. * This is the e-mail address from which all the e-mails are to be sent from.
  874. * It should really exist.
  875. */
  876. sendfrom = "services@localhost.net"
  877.  
  878. /*
  879. * This controls the minimum amount of time a user must wait before sending
  880. * another e-mail after they have sent one. It also controls the minimum time
  881. * a user must wait before they can receive another e-mail.
  882. *
  883. * This feature prevents users from being mail bombed using Services and
  884. * it is highly recommended that it be used.
  885. *
  886. * This directive is optional, but highly recommended.
  887. */
  888. delay = 5m
  889.  
  890. /*
  891. * If set, Services will not attempt to put quotes around the TO: fields
  892. * in e-mails.
  893. *
  894. * This directive is optional, and as far as we know, it's only needed
  895. * if you are using ESMTP or QMail to send out e-mails.
  896. */
  897. #dontquoteaddresses = yes
  898.  
  899. /*
  900. * The subject and message of emails sent to users when they register accounts.
  901. */
  902. registration_subject = "Nickname registration for %n"
  903. registration_message = "Hi,
  904.  
  905. You have requested to register the nickname %n on %N.
  906. Please type \" /msg NickServ CONFIRM %c \" to complete registration.
  907.  
  908. If you don't know why this mail was sent to you, please ignore it silently.
  909.  
  910. %N administrators."
  911.  
  912. /*
  913. * The subject and message of emails sent to users when they request a new password.
  914. */
  915. reset_subject = "Reset password request for %n"
  916. reset_message = "Hi,
  917.  
  918. You have requested to have the password for %n reset.
  919. To reset your password, type \" /msg NickServ CONFIRM %n %c \"
  920.  
  921. If you don't know why this mail was sent to you, please ignore it silently.
  922.  
  923. %N administrators."
  924.  
  925. /*
  926. * The subject and message of emails sent to users when they request a new email address.
  927. */
  928. emailchange_subject = "Email confirmation"
  929. emailchange_message = "Hi,
  930.  
  931. You have requested to change your email address to %e.
  932. Please type \" /msg NickServ CONFIRM %c \" to confirm this change.
  933.  
  934. If you don't know why this mail was sent to you, please ignore it silently.
  935.  
  936. %N administrators."
  937.  
  938. /*
  939. * The subject and message of emails sent to users when they receive a new memo.
  940. */
  941. memo_subject = "New memo"
  942. memo_message = "Hi %n,
  943.  
  944. You've just received a new memo from %s. This is memo number %d.
  945.  
  946. Memo text:
  947.  
  948. %t"
  949. }
  950.  
  951. /*
  952. * [REQUIRED] Database configuration.
  953. *
  954. * This section is used to configure databases used by Anope.
  955. * You should at least load one database method, otherwise any data you
  956. * have will not be stored!
  957. */
  958.  
  959. /*
  960. * [DEPRECATED] db_old
  961. *
  962. * This is the old binary database format from late Anope 1.7.x, Anope 1.8.x, and
  963. * early Anope 1.9.x. This module only loads these databases, and will NOT save them.
  964. * You should only use this to upgrade old databases to a newer database format by loading
  965. * other database modules in addition to this one, which will be used when saving databases.
  966. */
  967. #module
  968. {
  969. name = "db_old"
  970.  
  971. /*
  972. * This is the encryption type used by the databases. This must be set correctly or
  973. * your passwords will not work. Valid options are: md5, oldmd5, sha1, and plain.
  974. * You must also be sure to load the correct encryption module below in the Encryption
  975. * Modules section so that your passwords work.
  976. */
  977. #hash = "md5"
  978. }
  979.  
  980. /*
  981. * [RECOMMENDED] db_flatfile
  982. *
  983. * This is the default flatfile database format.
  984. */
  985. module
  986. {
  987. name = "db_flatfile"
  988.  
  989. /*
  990. * The database name db_flatfile should use
  991. */
  992. database = "anope.db"
  993.  
  994. /*
  995. * Sets the number of days backups of databases are kept. If you don't give it,
  996. * or if you set it to 0, Services won't backup the databases.
  997. *
  998. * NOTE: Services must run 24 hours a day for this feature to work.
  999. *
  1000. * This directive is optional, but recommended.
  1001. */
  1002. keepbackups = 3
  1003.  
  1004. /*
  1005. * Allows Services to continue file write operations (i.e. database saving)
  1006. * even if the original file cannot be backed up. Enabling this option may
  1007. * allow Services to continue operation under conditions where it might
  1008. * otherwise fail, such as a nearly-full disk.
  1009. *
  1010. * NOTE: Enabling this option can cause irrecoverable data loss under some
  1011. * conditions, so make CERTAIN you know what you're doing when you enable it!
  1012. *
  1013. * This directive is optional, and you are discouraged against enabling it.
  1014. */
  1015. #nobackupokay = yes
  1016.  
  1017. /*
  1018. * If enabled, services will fork a child process to save databases.
  1019. *
  1020. * This is only useful with very large databases, with hundreds
  1021. * of thousands of objects, that have a noticeable delay from
  1022. * writing databases.
  1023. *
  1024. * If your database is large enough cause a noticeable delay when
  1025. * saving you should consider a more powerful alternative such
  1026. * as db_sql or db_redis, which incrementally update their
  1027. * databases asynchronously in real time.
  1028. */
  1029. fork = no
  1030. }
  1031.  
  1032. /*
  1033. * db_sql and db_sql_live
  1034. *
  1035. * db_sql module allows saving and loading databases using one of the SQL engines.
  1036. * This module loads the databases once on startup, then incrementally updates
  1037. * objects in the database as they are changed within Anope in real time. Changes
  1038. * to the SQL tables not done by Anope will have no effect and will be overwritten.
  1039. *
  1040. * db_sql_live module allows saving and loading databases using one of the SQL engines.
  1041. * This module reads and writes to SQL in real time. Changes to the SQL tables
  1042. * will be immediately reflected into Anope. This module should not be loaded
  1043. * in conjunction with db_sql.
  1044. *
  1045. */
  1046. #module
  1047. {
  1048. name = "db_sql"
  1049. #name = "db_sql_live"
  1050.  
  1051. /*
  1052. * The SQL service db_sql(_live) should use, these are configured in modules.conf.
  1053. * For MySQL, this should probably be mysql/main.
  1054. */
  1055. engine = "sqlite/main"
  1056.  
  1057. /*
  1058. * An optional prefix to prepended to the name of each created table.
  1059. * Do not use the same prefix for other programs.
  1060. */
  1061. #prefix = "anope_db_"
  1062.  
  1063. /* Whether or not to import data from another database module in to SQL on startup.
  1064. * If you enable this, be sure that the database services is configured to use is
  1065. * empty and that another database module to import from is loaded before db_sql.
  1066. * After you enable this and do a database import you should disable it for
  1067. * subsequent restarts.
  1068. *
  1069. * Note that you can not import databases using db_sql_live. If you want to import
  1070. * databases and use db_sql_live you should import them using db_sql, then shut down
  1071. * and start services with db_sql_live.
  1072. */
  1073. import = false
  1074. }
  1075.  
  1076. /*
  1077. * db_redis.
  1078. *
  1079. * This module allows using Redis (http://redis.io) as a database backend.
  1080. * This module requires that m_redis is loaded and configured properly.
  1081. *
  1082. * Redis 2.8 supports keyspace notifications which allows Redis to push notifications
  1083. * to Anope about outside modifications to the database. This module supports this and
  1084. * will internally reflect any changes made to the database immediately once notified.
  1085. * See docs/REDIS for more information regarding this.
  1086. */
  1087. #module
  1088. {
  1089. name = "db_redis"
  1090.  
  1091. /*
  1092. * Redis database to use. This must be configured with m_redis.
  1093. */
  1094. engine = "redis/main"
  1095. }
  1096.  
  1097. /*
  1098. * [RECOMMENDED] Encryption modules.
  1099. *
  1100. * The encryption modules are used when dealing with passwords. This determines how
  1101. * the passwords are stored in the databases, and does not add any security as
  1102. * far as transmitting passwords over the network goes.
  1103. *
  1104. * Without any encryption modules loaded users will not be able to authenticate unless
  1105. * there is another module loaded that provides authentication checking, such as
  1106. * m_ldap_authentication or m_sql_authentication.
  1107. *
  1108. * With enc_none, passwords will be stored in plain text, allowing for passwords
  1109. * to be recovered later but it isn't secure and therefore is not recommended.
  1110. *
  1111. * The other encryption modules use one-way encryption, so the passwords can not
  1112. * be recovered later if those are used.
  1113. *
  1114. * The first encryption module loaded is the primary encryption module. All new passwords are
  1115. * encrypted by this module. Old passwords stored in another encryption method are
  1116. * automatically re-encrypted by the primary encryption module on next identify.
  1117. *
  1118. * NOTE: enc_old is Anope's previous (broken) MD5 implementation which is present in
  1119. * versions prior to Anope 1.7.17. If your databases were made using that module,
  1120. * use this and not enc_md5.
  1121. *
  1122. * NOTE: enc_sha1 relies on how the OS stores 2+ byte data internally, and is
  1123. * potentially broken when moving between 2 different OSes, such as moving from
  1124. * Linux to Windows. It is recommended that you use enc_sha256 instead if you want
  1125. * to use an SHA-based encryption. If you choose to do so, it is also recommended
  1126. * that you first try to get everyone's passwords converted to enc_sha256 before
  1127. * switching OSes by placing enc_sha256 at the beginning of the list.
  1128. *
  1129. */
  1130.  
  1131. #module { name = "enc_bcrypt" }
  1132. module { name = "enc_sha256" }
  1133. #module { name = "enc_md5" }
  1134. #module { name = "enc_sha1" }
  1135.  
  1136. /*
  1137. * When using enc_none, passwords will be stored without encryption. This isn't secure
  1138. * therefore it is not recommended.
  1139. */
  1140. #module { name = "enc_none" }
  1141.  
  1142. /*
  1143. * enc_old is Anope's previous (broken) MD5 implementation used from 1.4.x to 1.7.16.
  1144. * If your databases were made using that module, load it here to allow conversion to the primary
  1145. * encryption method.
  1146. */
  1147. #module { name = "enc_old" }
  1148.  
  1149.  
  1150. /* Extra (optional) modules. */
  1151. include
  1152. {
  1153. type = "file"
  1154. name = "modules.example.conf"
  1155. }
  1156.  
  1157. /*
  1158. * Chanstats module.
  1159. * Requires a MySQL Database.
  1160. */
  1161. #include
  1162. {
  1163. type = "file"
  1164. name = "chanstats.example.conf"
  1165. }
  1166.  
  1167. /*
  1168. * IRC2SQL Gateway
  1169. * This module collects data about users, channels and servers. It doesn't build stats
  1170. * itself, however, it gives you the database, it's up to you how you use it.
  1171. *
  1172. * Requires a MySQL Database and MySQL version 5.5 or higher
  1173. */
  1174. #include
  1175. {
  1176. type = "file"
  1177. name = "irc2sql.example.conf"
  1178. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement