Guest User

Untitled

a guest
Dec 28th, 2017
357
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 37.54 KB | None | 0 0
  1. #-------------------------------------------------------------------------------
  2. #
  3. # Rippled Server Instance Configuration Example
  4. #
  5. #-------------------------------------------------------------------------------
  6. #
  7. # Contents
  8. #
  9. # 1. Server
  10. #
  11. # 2. Peer Protocol
  12. #
  13. # 3. Ripple Protocol
  14. #
  15. # 4. HTTPS Client
  16. #
  17. # 5. Database
  18. #
  19. # 6. Diagnostics
  20. #
  21. # 7. Voting
  22. #
  23. # 8. Example Settings
  24. #
  25. #-------------------------------------------------------------------------------
  26. #
  27. # Purpose
  28. #
  29. # This file documents and provides examples of all rippled server process
  30. # configuration options. When the rippled server instance is launched, it
  31. # looks for a file with the following name:
  32. #
  33. # rippled.cfg
  34. #
  35. # For more information on where the rippled server instance searches for
  36. # the file please visit the Ripple wiki. Specifically, the section explaining
  37. # the --conf command line option:
  38. #
  39. # https://ripple.com/wiki/Rippled#--conf.3Dpath
  40. #
  41. # This file should be named rippled.cfg. This file is UTF-8 with Dos, UNIX,
  42. # or Mac style end of lines. Blank lines and lines beginning with '#' are
  43. # ignored. Undefined sections are reserved. No escapes are currently defined.
  44. #
  45. # Notation
  46. #
  47. # In this document a simple BNF notation is used. Angle brackets denote
  48. # required elements, square brackets denote optional elements, and single
  49. # quotes indicate string literals. A vertical bar separating 1 or more
  50. # elements is a logical "or"; Any one of the elements may be chosen.
  51. # Parenthesis are notational only, and used to group elements, they are not
  52. # part of the syntax unless they appear in quotes. White space may always
  53. # appear between elements, it has no effect on values.
  54. #
  55. # <key> A required identifier
  56. # '=' The equals sign character
  57. # | Logical "or"
  58. # ( ) Used for grouping
  59. #
  60. #
  61. # An identifier is a string of upper or lower case letters, digits, or
  62. # underscores subject to the requirement that the first character of an
  63. # identifier must be a letter. Identifiers are not case sensitive (but
  64. # values may be).
  65. #
  66. # Some configuration sections contain key/value pairs. A line containing
  67. # a key/value pair has this syntax:
  68. #
  69. # <identifier> '=' <value>
  70. #
  71. # Depending on the section and key, different value types are possible:
  72. #
  73. # <integer> A signed integer
  74. # <unsigned> An unsigned integer
  75. # <flag> A boolean. 1 = true/yes/on, 0 = false/no/off.
  76. #
  77. # Consult the documentation on the key in question to determine the possible
  78. # value types.
  79. #
  80. #
  81. #
  82. #-------------------------------------------------------------------------------
  83. #
  84. # 1. Server
  85. #
  86. #----------
  87. #
  88. #
  89. #
  90. # rippled offers various server protocols to clients making inbound
  91. # connections. The listening ports rippled uses are "universal" ports
  92. # which may be configured to handshake in one or more of the available
  93. # supported protocols. These universal ports simplify administration:
  94. # A single open port can be used for multiple protocols.
  95. #
  96. # NOTE At least one server port must be defined in order
  97. # to accept incoming network connections.
  98. #
  99. #
  100. # [server]
  101. #
  102. # A list of port names and key/value pairs. A port name must start with a
  103. # letter and contain only letters and numbers. The name is not case-sensitive.
  104. # For each name in this list, rippled will look for a configuration file
  105. # section with the same name and use it to create a listening port. The
  106. # name is informational only; the choice of name does not affect the function
  107. # of the listening port.
  108. #
  109. # Key/value pairs specified in this section are optional, and apply to all
  110. # listening ports unless the port overrides the value in its section. They
  111. # may be considered default values.
  112. #
  113. # Suggestion:
  114. #
  115. # To avoid a conflict with port names and future configuration sections,
  116. # we recommend prepending "port_" to the port name. This prefix is not
  117. # required, but suggested.
  118. #
  119. # This example defines two ports with different port numbers and settings:
  120. #
  121. # [server]
  122. # port_public
  123. # port_private
  124. # port = 80
  125. #
  126. # [port_public]
  127. # ip=0.0.0.0
  128. # port = 443
  129. # protocol=peer,https
  130. #
  131. # [port_private]
  132. # ip=127.0.0.1
  133. # protocol=http
  134. #
  135. # When rippled is used as a command line client (for example, issuing a
  136. # server stop command), the first port advertising the http or https
  137. # protocol will be used to make the connection.
  138. #
  139. #
  140. #
  141. # [<name>]
  142. #
  143. # A series of key/value pairs that define the settings for the port with
  144. # the corresponding name. These keys are possible:
  145. #
  146. # ip = <IP-address>
  147. #
  148. # Required. Determines the IP address of the network interface to bind
  149. # to. To bind to all available interfaces, uses 0.0.0.0
  150. #
  151. # port = <number>
  152. #
  153. # Required. Sets the port number to use for this port.
  154. #
  155. # protocol = [ http, https, peer ]
  156. #
  157. # Required. A comma-separated list of protocols to support:
  158. #
  159. # http JSON-RPC over HTTP
  160. # https JSON-RPC over HTTPS
  161. # ws Websockets
  162. # wss Secure Websockets
  163. # peer Peer Protocol
  164. #
  165. # Restrictions:
  166. #
  167. # Only one port may be configured to support the peer protocol.
  168. # A port cannot have websocket and non websocket protocols at the
  169. # same time. It is possible have both Websockets and Secure Websockets
  170. # together in one port.
  171. #
  172. # NOTE If no ports support the peer protocol, rippled cannot
  173. # receive incoming peer connections or become a superpeer.
  174. #
  175. # limit = <number>
  176. #
  177. # Optional. An integer value that will limit the number of connected
  178. # clients that the port will accept. Once the limit is reached, new
  179. # connections will be refused until other clients disconnect.
  180. # Omit or set to 0 to allow unlimited numbers of clients.
  181. #
  182. # user = <text>
  183. # password = <text>
  184. #
  185. # When set, these credentials will be required on HTTP/S requests.
  186. # The credentials must be provided using HTTP's Basic Authentication
  187. # headers. If either or both fields are empty, then no credentials are
  188. # required. IP address restrictions, if any, will be checked in addition
  189. # to the credentials specified here.
  190. #
  191. # When acting in the client role, rippled will supply these credentials
  192. # using HTTP's Basic Authentication headers when making outbound HTTP/S
  193. # requests.
  194. #
  195. # admin = [ IP, IP, IP, ... ]
  196. #
  197. # A comma-separated list of IP addresses.
  198. #
  199. # When set, grants administrative command access to the specified IP
  200. # addresses. These commands may be issued over http, https, ws, or wss
  201. # if configured on the port. If unspecified, the default is to not allow
  202. # administrative commands.
  203. #
  204. # *SECURITY WARNING*
  205. # 0.0.0.0 may be specified to allow access from any IP address. It must
  206. # be the only address specified and cannot be combined with other IPs.
  207. # Use of this address can compromise server security, please consider its
  208. # use carefully.
  209. #
  210. # admin_user = <text>
  211. # admin_password = <text>
  212. #
  213. # When set, clients must provide these credentials in the submitted
  214. # JSON for any administrative command requests submitted to the HTTP/S,
  215. # WS, or WSS protocol interfaces. If administrative commands are
  216. # disabled for a port, these credentials have no effect.
  217. #
  218. # When acting in the client role, rippled will supply these credentials
  219. # in the submitted JSON for any administrative command requests when
  220. # invoking JSON-RPC commands on remote servers.
  221. #
  222. # secure_gateway = [ IP, IP, IP, ... ]
  223. #
  224. # A comma-separated list of IP addresses.
  225. #
  226. # When set, allows the specified IP addresses to pass HTTP headers
  227. # containing username and remote IP address for each session. If a
  228. # non-empty username is passed in this way, then resource controls
  229. # such as often resulting in "tooBusy" errors will be lifted. However,
  230. # administrative RPC commands such as "stop" will not be allowed.
  231. # The HTTP headers that secure_gateway hosts can set are X-User and
  232. # X-Forwarded-For. Only the X-User header affects resource controls.
  233. # However, both header values are logged to help identify user activity.
  234. # If no X-User header is passed, or if its value is empty, then
  235. # resource controls will default to those for non-administrative users.
  236. #
  237. # The secure_gateway IP addresses are intended to represent
  238. # proxies. Since rippled trusts these hosts, they must be
  239. # responsible for properly authenticating the remote user.
  240. #
  241. # The same IP address cannot be used in both "admin" and "secure_gateway"
  242. # lists for the same port. In this case, rippled will abort with an error
  243. # message to the console shortly after startup
  244. #
  245. # ssl_key = <filename>
  246. # ssl_cert = <filename>
  247. # ssl_chain = <filename>
  248. #
  249. # Use the specified files when configuring SSL on the port.
  250. #
  251. # NOTE If no files are specified and secure protocols are selected,
  252. # rippled will generate an internal self-signed certificate.
  253. #
  254. # The files have these meanings:
  255. #
  256. # ssl_key
  257. #
  258. # Specifies the filename holding the SSL key in PEM format.
  259. #
  260. # ssl_cert
  261. #
  262. # Specifies the path to the SSL certificate file in PEM format.
  263. # This is not needed if the chain includes it.
  264. #
  265. # ssl_chain
  266. #
  267. # If you need a certificate chain, specify the path to the
  268. # certificate chain here. The chain may include the end certificate.
  269. #
  270. # ssl_ciphers = <cipherlist>
  271. #
  272. # Control the ciphers which the server will support over SSL on the port,
  273. # specified using the OpenSSL "cipher list format".
  274. #
  275. # NOTE If unspecified, rippled will automatically configure a modern
  276. # cipher suite. This default suite should be widely supported.
  277. #
  278. # You should not modify this string unless you have a specific
  279. # reason and cryptographic expertise. Incorrect modification may
  280. # keep rippled from connecting to other instances of rippled or
  281. # prevent RPC and WebSocket clients from connecting.
  282. #
  283. # send_queue_limit = = [1..65535]
  284. #
  285. # A Websocket will disconnect when its send queue exceeds this limit.
  286. # The default is 100. A larger value may help with erratic disconnects but
  287. # may adversely affect server performance.
  288. #
  289. # WebSocket permessage-deflate extension options
  290. #
  291. # These settings configure the optional permessage-deflate extension
  292. # options and may appear on any port configuration entry. They are meaningful
  293. # only to ports which have enabled a WebSocket protocol.
  294. #
  295. # permessage_deflate = <flag>
  296. #
  297. # Determines if permessage_deflate extension negotiations are enabled.
  298. # When enabled, clients may request the extension and the server will
  299. # offer the enabled extension in response.
  300. #
  301. # client_max_window_bits = [9..15]
  302. # server_max_window_bits = [9..15]
  303. # client_no_context_takeover = <flag>
  304. # server_no_context_takeover = <flag>
  305. #
  306. # These optional settings control options related to the permessage-deflate
  307. # extension negotiation. For precise definitions of these fields please see
  308. # the RFC 7692, "Compression Extensions for WebSocket":
  309. # https://tools.ietf.org/html/rfc7692
  310. #
  311. # compress_level = [0..9]
  312. #
  313. # When set, determines the amount of compression attempted, where 0 is
  314. # the least amount and 9 is the most amount. Higher levels require more
  315. # CPU resources. Levels 1 through 3 use a fast compression algorithm,
  316. # while levels 4 through 9 use a more compact algorithm which uses more
  317. # CPU resources. If unspecified, a default of 3 is used.
  318. #
  319. # memory_level = [1..9]
  320. #
  321. # When set, determines the relative amount of memory used to hold
  322. # intermediate compression data. Higher numbers can give better compression
  323. # ratios at the cost of higher memory and CPU resources.
  324. #
  325. # [rpc_startup]
  326. #
  327. # Specify a list of RPC commands to run at startup.
  328. #
  329. # Examples:
  330. # { "command" : "server_info" }
  331. # { "command" : "log_level", "partition" : "ripplecalc", "severity" : "trace" }
  332. #
  333. #
  334. #
  335. # [websocket_ping_frequency]
  336. #
  337. # <number>
  338. #
  339. # The amount of time to wait in seconds, before sending a websocket 'ping'
  340. # message. Ping messages are used to determine if the remote end of the
  341. # connection is no longer available.
  342. #
  343. #
  344. #
  345. #-------------------------------------------------------------------------------
  346. #
  347. # 2. Peer Protocol
  348. #
  349. #-----------------
  350. #
  351. # These settings control security and access attributes of the Peer to Peer
  352. # server section of the rippled process. Peer Protocol implements the
  353. # Ripple Payment protocol. It is over peer connections that transactions
  354. # and validations are passed from to machine to machine, to determine the
  355. # contents of validated ledgers.
  356. #
  357. #
  358. #
  359. # [ips]
  360. #
  361. # List of hostnames or ips where the Ripple protocol is served. For a starter
  362. # list, you can either copy entries from: https://ripple.com/ripple.txt or if
  363. # you prefer you can specify r.ripple.com 51235
  364. #
  365. # One IPv4 address or domain names per line is allowed. A port may must be
  366. # specified after adding a space to the address. By convention, if known,
  367. # IPs are listed in from most to least trusted.
  368. #
  369. # Examples:
  370. # 192.168.0.1
  371. # 192.168.0.1 3939
  372. # r.ripple.com 51235
  373. #
  374. # This will give you a good, up-to-date list of addresses:
  375. #
  376. # [ips]
  377. # r.ripple.com 51235
  378. #
  379. # The default is: [ips_fixed] addresses (if present) or r.ripple.com 51235
  380. #
  381. #
  382. # [ips_fixed]
  383. #
  384. # List of IP addresses or hostnames to which rippled should always attempt to
  385. # maintain peer connections with. This is useful for manually forming private
  386. # networks, for example to configure a validation server that connects to the
  387. # Ripple network through a public-facing server, or for building a set
  388. # of cluster peers.
  389. #
  390. # One IPv4 address or domain names per line is allowed. A port must be
  391. # specified after adding a space to the address.
  392. #
  393. #
  394. #
  395. # [peer_private]
  396. #
  397. # 0 or 1.
  398. #
  399. # 0: Request peers to broadcast your address. Normal outbound peer connections [default]
  400. # 1: Request peers not broadcast your address. Only connect to configured peers.
  401. #
  402. #
  403. #
  404. # [peers_max]
  405. #
  406. # The largest number of desired peer connections (incoming or outgoing).
  407. # Cluster and fixed peers do not count towards this total. There are
  408. # implementation-defined lower limits imposed on this value for security
  409. # purposes.
  410. #
  411. #
  412. #
  413. # [node_seed]
  414. #
  415. # This is used for clustering. To force a particular node seed or key, the
  416. # key can be set here. The format is the same as the validation_seed field.
  417. # To obtain a validation seed, use the validation_create command.
  418. #
  419. # Examples: RASH BUSH MILK LOOK BAD BRIM AVID GAFF BAIT ROT POD LOVE
  420. # shfArahZT9Q9ckTf3s1psJ7C7qzVN
  421. #
  422. #
  423. #
  424. # [cluster_nodes]
  425. #
  426. # To extend full trust to other nodes, place their node public keys here.
  427. # Generally, you should only do this for nodes under common administration.
  428. # Node public keys start with an 'n'. To give a node a name for identification
  429. # place a space after the public key and then the name.
  430. #
  431. #
  432. #
  433. # [sntp_servers]
  434. #
  435. # IP address or domain of NTP servers to use for time synchronization.
  436. #
  437. # These NTP servers are suitable for rippled servers located in the United
  438. # States:
  439. # time.windows.com
  440. # time.apple.com
  441. # time.nist.gov
  442. # pool.ntp.org
  443. #
  444. #
  445. #
  446. # [overlay]
  447. #
  448. # Controls settings related to the peer to peer overlay.
  449. #
  450. # A set of key/value pair parameters to configure the overlay.
  451. #
  452. # public_ip = <IP-address>
  453. #
  454. # If the server has a known, fixed public IPv4 address,
  455. # specify that IP address here in dotted decimal notation.
  456. # Peers will use this information to reject attempt to proxy
  457. # connections to or from this server.
  458. #
  459. # ip_limit = <number>
  460. #
  461. # The maximum number of incoming peer connections allowed by a single
  462. # IP that isn't classified as "private" in RFC1918. The implementation
  463. # imposes some hard and soft upper limits on this value to prevent a
  464. # single host from consuming all inbound slots. If the value is not
  465. # present the server will autoconfigure an appropriate limit.
  466. #
  467. #
  468. #
  469. # [transaction_queue] EXPERIMENTAL
  470. #
  471. # This section is EXPERIMENTAL, and should not be
  472. # present for production configuration settings.
  473. #
  474. # A set of key/value pair parameters to tune the performance of the
  475. # transaction queue.
  476. #
  477. # ledgers_in_queue = <number>
  478. #
  479. # The queue will be limited to this <number> of average ledgers'
  480. # worth of transactions. If the queue fills up, the transactions
  481. # with the lowest fee levels will be dropped from the queue any
  482. # time a transaction with a higher fee level is added.
  483. # Default: 20.
  484. #
  485. # minimum_queue_size = <number>
  486. #
  487. # The queue will always be able to hold at least this <number> of
  488. # transactions, regardless of recent ledger sizes or the value of
  489. # ledgers_in_queue. Default: 2000.
  490. #
  491. # retry_sequence_percent = <number>
  492. #
  493. # If a client replaces a transaction in the queue (same sequence
  494. # number as a transaction already in the queue), the new
  495. # transaction's fee must be more than <number> percent higher
  496. # than the original transaction's fee, or meet the current open
  497. # ledger fee to be considered. Default: 25.
  498. #
  499. # multi_txn_percent = <number>
  500. #
  501. # If a client submits multiple transactions (different sequence
  502. # numbers), later transactions must pay a fee at least <number>
  503. # percent higher than the transaction with the previous sequence
  504. # number.
  505. # Default: -90.
  506. #
  507. # minimum_escalation_multiplier = <number>
  508. #
  509. # At ledger close time, the median fee level of the transactions
  510. # in that ledger is used as a multiplier in escalation
  511. # calculations of the next ledger. This minimum value ensures that
  512. # the escalation is significant. Default: 500.
  513. #
  514. # minimum_txn_in_ledger = <number>
  515. #
  516. # Minimum number of transactions that must be allowed into the
  517. # ledger at the minimum required fee before the required fee
  518. # escalates. Default: 5.
  519. #
  520. # minimum_txn_in_ledger_standalone = <number>
  521. #
  522. # Like minimum_txn_in_ledger when rippled is running in standalone
  523. # mode. Default: 1000.
  524. #
  525. # target_txn_in_ledger = <number>
  526. #
  527. # Number of transactions allowed into the ledger at the minimum
  528. # required fee that the queue will "work toward" as long as
  529. # consensus stays healthy. The limit will grow quickly until it
  530. # reaches or exceeds this number. After that the limit may still
  531. # change, but will stay above the target. If consensus is not
  532. # healthy, the limit will be clamped to this value or lower.
  533. # Default: 50.
  534. #
  535. # maximum_txn_in_ledger = <number>
  536. #
  537. # (Optional) Maximum number of transactions that will be allowed
  538. # into the ledger at the minimum required fee before the required
  539. # fee escalates. Default: no maximum.
  540. #
  541. # maximum_txn_per_account = <number>
  542. #
  543. # Maximum number of transactions that one account can have in the
  544. # queue at any given time. Default: 10.
  545. #
  546. # minimum_last_ledger_buffer = <number>
  547. #
  548. # If a transaction has a LastLedgerSequence, it must be at least
  549. # this much larger than the current open ledger sequence number.
  550. # Default: 2.
  551. #
  552. # zero_basefee_transaction_feelevel = <number>
  553. #
  554. # So we don't deal with infinite fee levels, treat any transaction
  555. # with a 0 base fee (ie. SetRegularKey password recovery) as
  556. # having this fee level.
  557. # Default: 256000.
  558. #
  559. #
  560. #-------------------------------------------------------------------------------
  561. #
  562. # 3. Ripple Protocol
  563. #
  564. #-------------------
  565. #
  566. # These settings affect the behavior of the server instance with respect
  567. # to Ripple payment protocol level activities such as validating and
  568. # closing ledgers or adjusting fees in response to server overloads.
  569. #
  570. #
  571. #
  572. # [node_size]
  573. #
  574. # Tunes the servers based on the expected load and available memory. Legal
  575. # sizes are "tiny", "small", "medium", "large", and "huge". We recommend
  576. # you start at the default and raise the setting if you have extra memory.
  577. # The default is "tiny".
  578. #
  579. #
  580. #
  581. # [ledger_history]
  582. #
  583. # The number of past ledgers to acquire on server startup and the minimum to
  584. # maintain while running.
  585. #
  586. # To serve clients, servers need historical ledger data. Servers that don't
  587. # need to serve clients can set this to "none". Servers that want complete
  588. # history can set this to "full".
  589. #
  590. # This must be less than or equal to online_delete (if online_delete is used)
  591. #
  592. # The default is: 256
  593. #
  594. #
  595. #
  596. # [fetch_depth]
  597. #
  598. # The number of past ledgers to serve to other peers that request historical
  599. # ledger data (or "full" for no limit).
  600. #
  601. # Servers that require low latency and high local performance may wish to
  602. # restrict the historical ledgers they are willing to serve. Setting this
  603. # below 32 can harm network stability as servers require easy access to
  604. # recent history to stay in sync. Values below 128 are not recommended.
  605. #
  606. # The default is: full
  607. #
  608. #
  609. #
  610. # [validation_seed]
  611. #
  612. # To perform validation, this section should contain either a validation seed
  613. # or key. The validation seed is used to generate the validation
  614. # public/private key pair. To obtain a validation seed, use the
  615. # validation_create command.
  616. #
  617. # Examples: RASH BUSH MILK LOOK BAD BRIM AVID GAFF BAIT ROT POD LOVE
  618. # shfArahZT9Q9ckTf3s1psJ7C7qzVN
  619. #
  620. #
  621. #
  622. # [validator_token]
  623. #
  624. # This is an alternative to [validation_seed] that allows rippled to perform
  625. # validation without having to store the validator keys on the network
  626. # connected server. The field should contain a single token in the form of a
  627. # base64-encoded blob.
  628. # An external tool is available for generating validator keys and tokens.
  629. #
  630. #
  631. #
  632. # [validator_key_revocation]
  633. #
  634. # If a validator's secret key has been compromised, a revocation must be
  635. # generated and added to this field. The revocation notifies peers that it is
  636. # no longer safe to trust the revoked key. The field should contain a single
  637. # revocation in the form of a base64-encoded blob.
  638. # An external tool is available for generating and revoking validator keys.
  639. #
  640. #
  641. #
  642. # [validators_file]
  643. #
  644. # Path or name of a file that contains the validation public keys of nodes
  645. # to always accept as validators as well as the minimum number of validators
  646. # needed to accept consensus.
  647. #
  648. # The contents of the file should include a [validators] and/or
  649. # [validator_list_sites] and [validator_list_keys] entries.
  650. # [validators] should be followed by a list of validation public keys of
  651. # nodes, one per line.
  652. # [validator_list_sites] should be followed by a list of URIs each serving a
  653. # list of recommended validators.
  654. # [validator_list_keys] should be followed by a list of keys belonging to
  655. # trusted validator list publishers. Validator lists fetched from configured
  656. # sites will only be considered if the list is accompanied by a valid
  657. # signature from a trusted publisher key.
  658. #
  659. # Specify the file by its name or path.
  660. # Unless an absolute path is specified, it will be considered relative to
  661. # the folder in which the rippled.cfg file is located.
  662. #
  663. # Examples:
  664. # /home/ripple/validators.txt
  665. # C:/home/ripple/validators.txt
  666. #
  667. # Example content:
  668. # [validators]
  669. # n949f75evCHwgyP4fPVgaHqNHxUVN15PsJEZ3B3HnXPcPjcZAoy7
  670. # n9MD5h24qrQqiyBC8aeqqCWvpiBiYQ3jxSr91uiDvmrkyHRdYLUj
  671. # n9L81uNCaPgtUJfaHh89gmdvXKAmSt5Gdsw2g1iPWaPkAHW5Nm4C
  672. # n9KiYM9CgngLvtRCQHZwgC2gjpdaZcCcbt3VboxiNFcKuwFVujzS
  673. # n9LdgEtkmGB9E2h3K4Vp7iGUaKuq23Zr32ehxiU8FWY7xoxbWTSA
  674. #
  675. #
  676. #
  677. # [path_search]
  678. # When searching for paths, the default search aggressiveness. This can take
  679. # exponentially more resources as the size is increased.
  680. #
  681. # The default is: 7
  682. #
  683. # [path_search_fast]
  684. # [path_search_max]
  685. # When searching for paths, the minimum and maximum search aggressiveness.
  686. #
  687. # If you do not need pathfinding, you can set path_search_max to zero to
  688. # disable it and avoid some expensive bookkeeping.
  689. #
  690. # The default for 'path_search_fast' is 2. The default for 'path_search_max' is 10.
  691. #
  692. # [path_search_old]
  693. #
  694. # For clients that use the legacy path finding interfaces, the search
  695. # aggressiveness to use. The default is 7.
  696. #
  697. #
  698. #
  699. # [fee_default]
  700. #
  701. # Sets the base cost of a transaction in drops. Used when the server has
  702. # no other source of fee information, such as signing transactions offline.
  703. #
  704. #
  705. #
  706. # [workers]
  707. #
  708. # Configures the number of threads for processing work submitted by peers
  709. # and clients. If not specified, then the value is automatically determined
  710. # by factors including the number of system processors and whether this
  711. # node is a validator.
  712. #
  713. #
  714. #-------------------------------------------------------------------------------
  715. #
  716. # 4. HTTPS Client
  717. #
  718. #----------------
  719. #
  720. # The rippled server instance uses HTTPS GET requests in a variety of
  721. # circumstances, including but not limited to contacting trusted domains to
  722. # fetch information such as mapping an email address to a Ripple Payment
  723. # Network address.
  724. #
  725. # [ssl_verify]
  726. #
  727. # 0 or 1.
  728. #
  729. # 0. HTTPS client connections will not verify certificates.
  730. # 1. Certificates will be checked for HTTPS client connections.
  731. #
  732. # If not specified, this parameter defaults to 1.
  733. #
  734. #
  735. #
  736. # [ssl_verify_file]
  737. #
  738. # <pathname>
  739. #
  740. # A file system path leading to the certificate verification file for
  741. # HTTPS client requests.
  742. #
  743. #
  744. #
  745. # [ssl_verify_dir]
  746. #
  747. # <pathname>
  748. #
  749. #
  750. # A file system path leading to a file or directory containing the root
  751. # certificates that the server will accept for verifying HTTP servers.
  752. # Used only for outbound HTTPS client connections.
  753. #
  754. #
  755. #
  756. #-------------------------------------------------------------------------------
  757. #
  758. # 5. Database
  759. #
  760. #------------
  761. #
  762. # rippled creates 4 SQLite database to hold bookkeeping information
  763. # about transactions, local credentials, and various other things.
  764. # It also creates the NodeDB, which holds all the objects that
  765. # make up the current and historical ledgers.
  766. #
  767. # The size of the NodeDB grows in proportion to the amount of new data and the
  768. # amount of historical data (a configurable setting) so the performance of the
  769. # underlying storage media where the NodeDB is placed can significantly affect
  770. # the performance of the server.
  771. #
  772. # Partial pathnames will be considered relative to the location of
  773. # the rippled.cfg file.
  774. #
  775. # [node_db] Settings for the Node Database (required)
  776. #
  777. # Format (without spaces):
  778. # One or more lines of case-insensitive key / value pairs:
  779. # <key> '=' <value>
  780. # ...
  781. #
  782. # Example:
  783. # type=nudb
  784. # path=db/nudb
  785. #
  786. # The "type" field must be present and controls the choice of backend:
  787. #
  788. # type = NuDB
  789. #
  790. # NuDB is a high-performance database written by Ripple Labs and optimized
  791. # for rippled and solid-state drives.
  792. #
  793. # NuDB maintains its high speed regardless of the amount of history
  794. # stored. Online delete may be selected, but is not required. NuDB is
  795. # available on all platforms that rippled runs on.
  796. #
  797. # type = RocksDB
  798. #
  799. # RocksDB is an open-source, general-purpose key/value store - see
  800. # http://rocksdb.org/ for more details.
  801. #
  802. # RocksDB is an alternative backend for systems that don't use solid-state
  803. # drives. Because RocksDB's performance degrades as it stores more data,
  804. # keeping full history is not advised, and using online delete is
  805. # recommended. RocksDB is not available on Windows.
  806. #
  807. # The RocksDB backend also provides these optional parameters:
  808. #
  809. # compression 0 for none, 1 for Snappy compression
  810. #
  811. #
  812. #
  813. # Required keys:
  814. # path Location to store the database (all types)
  815. #
  816. # Optional keys:
  817. #
  818. # These keys are possible for any type of backend:
  819. #
  820. # online_delete Minimum value of 256. Enable automatic purging
  821. # of older ledger information. Maintain at least this
  822. # number of ledger records online. Must be greater
  823. # than or equal to ledger_history.
  824. #
  825. # advisory_delete 0 for disabled, 1 for enabled. If set, then
  826. # require administrative RPC call "can_delete"
  827. # to enable online deletion of ledger records.
  828. #
  829. # Notes:
  830. # The 'node_db' entry configures the primary, persistent storage.
  831. #
  832. # The 'import_db' is used with the '--import' command line option to
  833. # migrate the specified database into the current database given
  834. # in the [node_db] section.
  835. #
  836. # [import_db] Settings for performing a one-time import (optional)
  837. # [database_path] Path to the book-keeping databases.
  838. #
  839. # There are 4 bookkeeping SQLite database that the server creates and
  840. # maintains. If you omit this configuration setting, it will default to
  841. # creating a directory called "db" located in the same place as your
  842. # rippled.cfg file. Partial pathnames will be considered relative to
  843. # the location of the rippled executable.
  844. #
  845. #
  846. #
  847. #
  848. #-------------------------------------------------------------------------------
  849. #
  850. # 6. Diagnostics
  851. #
  852. #---------------
  853. #
  854. # These settings are designed to help server administrators diagnose
  855. # problems, and obtain detailed information about the activities being
  856. # performed by the rippled process.
  857. #
  858. #
  859. #
  860. # [debug_logfile]
  861. #
  862. # Specifies where a debug logfile is kept. By default, no debug log is kept.
  863. # Unless absolute, the path is relative the directory containing this file.
  864. #
  865. # Example: debug.log
  866. #
  867. #
  868. #
  869. # [insight]
  870. #
  871. # Configuration parameters for the Beast. Insight stats collection module.
  872. #
  873. # Insight is a module that collects information from the areas of rippled
  874. # that have instrumentation. The configuration parameters control where the
  875. # collection metrics are sent. The parameters are expressed as key = value
  876. # pairs with no white space. The main parameter is the choice of server:
  877. #
  878. # "server"
  879. #
  880. # Choice of server to send metrics to. Currently the only choice is
  881. # "statsd" which sends UDP packets to a StatsD daemon, which must be
  882. # running while rippled is running. More information on StatsD is
  883. # available here:
  884. # https://github.com/b/statsd_spec
  885. #
  886. # When server=statsd, these additional keys are used:
  887. #
  888. # "address" The UDP address and port of the listening StatsD server,
  889. # in the format, n.n.n.n:port.
  890. #
  891. # "prefix" A string prepended to each collected metric. This is used
  892. # to distinguish between different running instances of rippled.
  893. #
  894. # If this section is missing, or the server type is unspecified or unknown,
  895. # statistics are not collected or reported.
  896. #
  897. # Example:
  898. #
  899. # [insight]
  900. # server=statsd
  901. # address=192.168.0.95:4201
  902. # prefix=my_validator
  903. #
  904. #-------------------------------------------------------------------------------
  905. #
  906. # 7. Voting
  907. #
  908. #----------
  909. #
  910. # The vote settings configure settings for the entire Ripple network.
  911. # While a single instance of rippled cannot unilaterally enforce network-wide
  912. # settings, these choices become part of the instance's vote during the
  913. # consensus process for each voting ledger.
  914. #
  915. # [voting]
  916. #
  917. # A set of key/value pair parameters used during voting ledgers.
  918. #
  919. # reference_fee = <drops>
  920. #
  921. # The cost of the reference transaction fee, specified in drops.
  922. # The reference transaction is the simplest form of transaction.
  923. # It represents an XRP payment between two parties.
  924. #
  925. # If this parameter is unspecified, rippled will use an internal
  926. # default. Don't change this without understanding the consequences.
  927. #
  928. # Example:
  929. # reference_fee = 10 # 10 drops
  930. #
  931. # account_reserve = <drops>
  932. #
  933. # The account reserve requirement is specified in drops. The portion of an
  934. # account's XRP balance that is at or below the reserve may only be
  935. # spent on transaction fees, and not transferred out of the account.
  936. #
  937. # If this parameter is unspecified, rippled will use an internal
  938. # default. Don't change this without understanding the consequences.
  939. #
  940. # Example:
  941. # account_reserve = 20000000 # 20 XRP
  942. #
  943. # owner_reserve = <drops>
  944. #
  945. # The owner reserve is the amount of XRP reserved in the account for
  946. # each ledger item owned by the account. Ledger items an account may
  947. # own include trust lines, open orders, and tickets.
  948. #
  949. # If this parameter is unspecified, rippled will use an internal
  950. # default. Don't change this without understanding the consequences.
  951. #
  952. # Example:
  953. # owner_reserve = 5000000 # 5 XRP
  954. #
  955. #-------------------------------------------------------------------------------
  956. #
  957. # 8. Example Settings
  958. #
  959. #--------------------
  960. #
  961. # Administrators can use these values as a starting point for configuring
  962. # their instance of rippled, but each value should be checked to make sure
  963. # it meets the business requirements for the organization.
  964. #
  965. # Server
  966. #
  967. # These example configuration settings create these ports:
  968. #
  969. # "peer"
  970. #
  971. # Peer protocol open to everyone. This is required to accept
  972. # incoming rippled connections. This does not affect automatic
  973. # or manual outgoing Peer protocol connections.
  974. #
  975. # "rpc"
  976. #
  977. # Administrative RPC commands over HTTPS, when originating from
  978. # the same machine (via the loopback adapter at 127.0.0.1).
  979. #
  980. # "wss_admin"
  981. #
  982. # Admin level API commands over Secure Websockets, when originating
  983. # from the same machine (via the loopback adapter at 127.0.0.1).
  984. #
  985. # This port is commented out but can be enabled by removing
  986. # the '#' from each corresponding line including the entry under [server]
  987. #
  988. # "wss_public"
  989. #
  990. # Guest level API commands over Secure Websockets, open to everyone.
  991. #
  992. # For HTTPS and Secure Websockets ports, if no certificate and key file
  993. # are specified then a self-signed certificate will be generated on startup.
  994. # If you have a certificate and key file, uncomment the corresponding lines
  995. # and ensure the paths to the files are correct.
  996. #
  997. # NOTE
  998. #
  999. # To accept connections on well known ports such as 80 (HTTP) or
  1000. # 443 (HTTPS), most operating systems will require rippled to
  1001. # run with administrator privileges, or else rippled will not start.
  1002.  
  1003. [server]
  1004. port_rpc_admin_local
  1005. port_peer
  1006. port_ws_admin_local
  1007. #port_ws_public
  1008. #ssl_key = /etc/ssl/private/server.key
  1009. #ssl_cert = /etc/ssl/certs/server.crt
  1010.  
  1011. [port_rpc_admin_local]
  1012. port = 5005
  1013. ip = 127.0.0.1
  1014. admin = 127.0.0.1
  1015. protocol = http
  1016.  
  1017. [port_peer]
  1018. port = 51235
  1019. ip = 0.0.0.0
  1020. protocol = peer
  1021.  
  1022. [port_ws_admin_local]
  1023. port = 6006
  1024. ip = 127.0.0.1
  1025. admin = 127.0.0.1
  1026. protocol = ws
  1027.  
  1028. #[port_ws_public]
  1029. #port = 5005
  1030. #ip = 127.0.0.1
  1031. #protocol = wss
  1032.  
  1033. #-------------------------------------------------------------------------------
  1034.  
  1035. [node_size]
  1036. medium
  1037.  
  1038. # This is primary persistent datastore for rippled. This includes transaction
  1039. # metadata, account states, and ledger headers. Helpful information can be
  1040. # found here: https://ripple.com/wiki/NodeBackEnd
  1041. # delete old ledgers while maintaining at least 2000. Do not require an
  1042. # external administrative command to initiate deletion.
  1043. [node_db]
  1044. type=RocksDB
  1045. path=/var/lib/rippled/db/rocksdb
  1046. open_files=2000
  1047. filter_bits=12
  1048. cache_mb=256
  1049. file_size_mb=8
  1050. file_size_mult=2
  1051. online_delete=2000
  1052. advisory_delete=0
  1053.  
  1054. [database_path]
  1055. /var/lib/rippled/db
  1056.  
  1057. # This needs to be an absolute directory reference, not a relative one.
  1058. # Modify this value as required.
  1059. [debug_logfile]
  1060. /var/log/rippled/debug.log
  1061.  
  1062. [sntp_servers]
  1063. time.windows.com
  1064. time.apple.com
  1065. time.nist.gov
  1066. pool.ntp.org
  1067.  
  1068. # Where to find some other servers speaking the Ripple protocol.
  1069. #
  1070. [ips]
  1071. r.ripple.com 51235
  1072.  
  1073. # File containing trusted validator keys or validator list publishers.
  1074. # Unless an absolute path is specified, it will be considered relative to the
  1075. # folder in which the rippled.cfg file is located.
  1076. [validators_file]
  1077. validators.txt
  1078.  
  1079. # Turn down default logging to save disk space in the long run.
  1080. # Valid values here are trace, debug, info, warning, error, and fatal
  1081. [rpc_startup]
  1082. { "command": "log_level", "severity": "warning" }
  1083.  
  1084. # If ssl_verify is 1, certificates will be validated.
  1085. # To allow the use of self-signed certificates for development or internal use,
  1086. # set to ssl_verify to 0.
  1087. [ssl_verify]
  1088. 1
  1089.  
  1090. [ips]
  1091. 23.23.201.55 51235
  1092. 184.73.226.101 51235
  1093. 54.225.112.220 51235
  1094. 54.225.123.13 51235
  1095.  
  1096. [validators]
  1097. n9KPnVLn7ewVzHvn218DcEYsnWLzKerTDwhpofhk4Ym1RUq4TeGw
  1098. n9LFzWuhKNvXStHAuemfRKFVECLApowncMAM5chSCL9R5ECHGN4V
  1099. n94rSdgTyBNGvYg8pZXGuNt59Y5bGAZGxbxyvjDaqD9ceRAgD85P
  1100. n9LeQeDcLDMZKjx1TZtrXoLBLo5q1bR1sUQrWG7tEADFU6R27UBp
  1101. n9KF6RpvktjNs2MDBkmxpJbup4BKrKeMKDXPhaXkq7cKTwLmWkFr
  1102.  
  1103. [validation_quorum]
  1104. 3
Add Comment
Please, Sign In to add comment