Advertisement
SentinelShadow

Anope services config

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