Merge branch 'master' into cadet_option
[oweals/gnunet.git] / doc / man / gnunet.conf.5.in
1 .\" -*- mode: nroff -*-
2 .\" This file is part of GNUnet.
3 .\" Copyright (C) 2012-2015,2018,2019 GNUnet e.V.
4 .\"
5 .\" Permission is granted to copy, distribute and/or modify this document
6 .\" under the terms of the GNU Free Documentation License, Version 1.3 or
7 .\" any later version published by the Free Software Foundation; with no
8 .\" Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.  A
9 .\" copy of the license is included in the file
10 .\" FDL-1.3.
11 .\"
12 .\" A copy of the license is also available from the Free Software
13 .\" Foundation Web site at http://www.gnu.org/licenses/fdl.html.
14 .\"
15 .\" Alternately, this document is also available under the General
16 .\" Public License, version 3 or later, as published by the Free Software
17 .\" Foundation.  A copy of the license is included in the file
18 .\" GPL3.
19 .\"
20 .\" A copy of the license is also available from the Free Software
21 .\" Foundation Web site at http://www.gnu.org/licenses/gpl.html.
22 .\"
23 .\" SPDX-License-Identifier: GPL3.0-or-later OR FDL1.3-or-later
24 .\"
25 .Dd October 26, 2018
26 .Dt GNUNET.CONF 5
27 .Os
28 .Sh NAME
29 .Nm gnunet.conf
30 .Nd GNUnet configuration file
31 .Sh DESCRIPTION
32 A GNUnet setup typically consists of a set of service processes run by a
33 user "gnunet" and a set of user-interface processes run by a standard account.
34 The default location for the configuration file for the services is
35 .Pa ~gnunet/.config/gnunet.conf Ns .
36 However, as normal users also may need read-access to this configuration,
37 you might want to instead put the service process configuration in
38 .Pa @SYSCONFDIR@/gnunet.conf Ns .
39 .Xr gnunet-setup 1 ,
40 part of gnunet-gtk, can be used to edit this configuration.
41 The parts of GNUnet that are run as a normal user may have config
42 options too and they read from
43 .Pa $HOME/.config/gnunet.conf Ns .
44 The latter config file can skip any options for the services.
45 .Pp
46 The basic structure of the configuration file is the following.
47 .Bl -bullet -offset indent -compact
48 .It
49 The file is split into sections.
50 .It
51 Every section begins with a token in square brakets.
52 The current section ends when a new section starts or end of file is
53 encountered.
54 .It
55 A section contains a number of options of the form "OPTION=VALUE".
56 .It
57 Whitespace surounding the "=" token is striped out, in other words
58 "OPTION = VALUE" and "OPTION=VALUE" are treated equal.
59 .It
60 Empty lines and lines beginning with a "#" are treated as comments.
61 .It
62 Boolean values are given as "YES" and "NO".
63 .El
64 .Pp
65 Almost all options are optional.
66 The tools resort to reasonable defaults if an option is not present.
67 Default values for all of the options can be found in the files in the
68 .Pa $GNUNET_PREFIX/share/gnunet/config.d/
69 directory.
70 A typical setup will work out of the box with those.
71 See the examples section below for some common setups on top of that.
72 .Ss Variable naming conventions and data types
73 Boolean values for options are set via "YES" or "NO" values, without the
74 double-quotes.
75 .Pp
76 Options which include "PATH" or "path" define a path on the file-system
77 and can take additional variables in the path, such as
78 .Ev $GNUNET_TMP .
79 .Pp
80 Section names as listed more in detail below, are small letters only
81 enclosed by square brakets.
82 .Ss GENERAL OPTIONS
83 Many options will be common between sections.
84 They can be repeated under each section with different values.
85 The "[PATHS]" section is special.
86 Here, it is possible to specify values for variables like "GNUNET_HOME".
87 Then, in all filenames that begin with "$GNUNET_HOME" the "$GNUNET_HOME" will
88 be replaced with the respective value at runtime.
89 The main use of this is to redefine "$GNUNET_HOME", which by default points to
90 .Pa $HOME/.config/ Ns .
91 By setting this variable, you can change the location where GNUnet stores
92 its internal data.
93 .Pa gnunet.conf
94 accepts the variable
95 .Ev GNUNET_TMP
96 which we suggest to use in place of the absolute definition of
97 .Pa /tmp Ns .
98 So instead of
99 .Pa /tmp/foo
100 you would write
101 .Pa $GNUNET_TMP/foo .
102 The usage of
103 .Pa $GNUNET_TMP/foo ,
104 will result in
105 .Pa $TMPDIR/gnunet/foo ,
106 or
107 .Pa $TMP/gnunet/foo
108 and finally, if
109 .Ev TMPDIR
110 is undefined,
111 .Pa /tmp/gnunet/foo .
112 The following options are generic and shared by all services:
113 .Bl -tag -width indent
114 .It HOSTNAME
115 The hostname specifies the machine on which the service is running.
116 This is usually "localhost".
117 .It BINARY
118 The filename that implements the service.
119 For example "gnunet-service-ats".
120 .It IMMEDIATE_START
121 Start the service always when the peer starts.
122 Set to YES for services that should always be launched, even if no other
123 service explicitly needs them.
124 .It START_ON_DEMAND
125 Set to YES to automatically start the service when it is requested by another
126 service.
127 YES for most GNUnet services.
128 .It NOARMBIND
129 Set to YES to never have ARM bind to the respective socket.
130 This option is mostly for debugging in situations where ARM cannot pass the
131 pre-bound socket to the child due to interference from PREFIX-commands.
132 This option is only effective in combination with IMMEDIATE_START being YES.
133 NO by default.
134 .It PREFIX
135 PREFIX the given command (with its arguments) to the actual BINARY
136 to be executed.
137 Useful to run certain services under special supervisors like strace,
138 dtrace, or valgrind.
139 Typically used in combination with IMMEDIATE_START and NOARMBIND.
140 Empty by default.
141 .It ACCEPT_FROM
142 A semi-column separated list of IPv4 addresses that are allowed to use
143 the service; usually 127.0.0.1.
144 .It ACCEPT_FROM6
145 A semi-column separated list of IPv6 addresses that are allowed to use
146 the service; usually ::1.
147 .It UNIXPATH
148 Path to use for the UNIX domain socket for inter process communication with
149 the service on POSIX systems.
150 .It UNIX_MATCH_UID
151 If UNIX domain sockets are used, set this to YES if only users with the
152 same UID are allowed to access the service.
153 .It UNIX_MATCH_GID
154 If UNIX domain sockets are used, set this to YES if only users with the
155 same GID are allowed to access the service.
156 .It RUN_PER_USER
157 End-users should never have to change the defaults GNUnet provides for
158 this option.
159 .Bl -tag -width indent
160 .It YES
161 Set to YES if this service should be run per-user.
162 .It NO
163 Set to NO if this is a system service.
164 .El
165 .El
166 In the following sections the absence of a default value is either
167 expressed as "Default value:" followed by nothing, or the lack of this line.
168 .Ss ARM
169 .Bl -tag -width indent 
170 .It PORT
171 Default value: 2087
172 .It HOSTNAME
173 Default value: localhost
174 .It BINARY
175 Default value: gnunet-service-arm
176 .It ACCEPT_FROM
177 Default value: 127.0.0.1;
178 .It ACCEPT_FROM6
179 Default value: ::1;
180 .It UNIXPATH
181 Special case, uses user runtime dir even for per-system service.
182 .Pp
183 Default value: $GNUNET_USER_RUNTIME_DIR/gnunet-service-arm.sock
184 .It UNIX_MATCH_UID
185 Default value: YES
186 .It UNIX_MATCH_GID
187 Default value: YES
188 .It GLOBAL_POSTFIX
189 In the
190 .Fl l
191 option, format characters from
192 .Xr strftime 3
193 are allowed; In the GLOBAL_POSTFIX, "{}" stands for the name of the
194 respective service.
195 Thus the following example for this option would introduce per-service logging
196 with a new log file each day.
197 Note that only the last 3 log files are preserved.
198 Example:
199 .Pp
200 .Bd literal
201 -l $GNUNET_CACHE_HOME/{}-%Y-%m-%d.log
202 .Ed
203 .Pp
204 Default value:
205 .It GLOBAL_PREFIX
206 Default value:
207 .It START_SYSTEM_SERVICES
208 If set to YES, ARM will only start services that are marked as system-level
209 services (and we'll expect a second ARM to be run per-user to run
210 user-level services).
211 Note that in this case you must have manually created a different configuration
212 file with the user where at least this and the START_USER_SERVICES
213 options differ.
214 .It START_USER_SERVICES
215 If set to YES, ARM will only start services that are marked as per-user
216 services (and we'll expect a system user to run ARM to provide system-level
217 services).
218 Per-user services enable better personalization and priviledge separation and
219 in particular ensures that personal data is stored under $HOME, which might be
220 important in a multi-user system (or if $HOME is encrypted and
221 .Pa /var/
222 is not).
223 .Pp
224 Note that if you have different ARM services for SYSTEM and USER, and you are
225 not on UNIX, you need to change the PORT option for the USER ARM instances to
226 some free port (counting down from 2085 should provide free ports).
227 .It RESOURCE_DIAGNOSTICS
228 File where we should log per-service resource consumption on exit.
229 .Pp
230 Default value: resource.log
231 .It USERNAME
232 Name of the user that will be used to provide the service.
233 .Pp
234 Default value:
235 .It MAXBUF
236 Default value:
237 .It TIMEOUT
238 Default value:
239 .It DISABLEV6
240 Default value:
241 .It BINDTO
242 Default value:
243 .It REJECT_FROM
244 Default value:
245 .It REJECT_FROM6
246 Default value:
247 .It PREFIX
248 Default value:
249 .El
250 .Ss ATS
251 .Bl -tag -width indent
252 .It PORT
253 Default value: 2098
254 .It HOSTNAME
255 Default value: localhost
256 .It BINARY
257 Default value: gnunet-service-ats
258 .It ACCEPT_FROM
259 Default value: 127.0.0.1;
260 .It ACCEPT_FROM6
261 Default value: ::1;
262 .It UNIXPATH
263 Default value: $GNUNET_RUNTIME_DIR/gnunet-service-ats.sock
264 .It UNIX_MATCH_UID
265 Default value: NO
266 .It UNIX_MATCH_GID
267 Default value: YES
268 .It MODE
269 Designated assignment mode.
270 Possible values: PROPORTIONAL, MLP, RIL.
271 .Pp
272 Default value: proportional
273 .It UNSPECIFIED_QUOTA_IN
274 quotes in KiB or MiB per seconds.
275 Or use the word "unlimited".
276 Default value: 64 KiB
277 .It UNSPECIFIED_QUOTA_OUT
278 quotes in KiB or MiB per seconds.
279 Or use the word "unlimited".
280 Default value: 64 KiB
281 .It LOOPBACK_QUOTA_IN
282 quotes in KiB or MiB per seconds.
283 Or use the word "unlimited".
284 Default value: unlimited
285 .It LOOPBACK_QUOTA_OUT
286 quotes in KiB or MiB per seconds.
287 Or use the word "unlimited".
288 Default value: unlimited
289 .It LAN_QUOTA_IN
290 quotes in KiB or MiB per seconds.
291 Or use the word "unlimited".
292 Default value: unlimited
293 .It LAN_QUOTA_OUT
294 quotes in KiB or MiB per seconds.
295 Or use the word "unlimited".
296 Default value: unlimited
297 .It WAN_QUOTA_IN
298 quotes in KiB or MiB per seconds.
299 Or use the word "unlimited".
300 Default value: 64 KiB
301 .It WAN_QUOTA_OUT
302 quotes in KiB or MiB per seconds.
303 Or use the word "unlimited".
304 Default value: 64 KiB
305 .It WLAN_QUOTA_IN
306 quotes in KiB or MiB per seconds.
307 Or use the word "unlimited".
308 Default value: 1 MiB
309 .It WLAN_QUOTA_OUT
310 quotes in KiB or MiB per seconds.
311 Or use the word "unlimited".
312 Default value: 1 MiB
313 .It BLUETOOTH_QUOTA_IN
314 Default value: 128 KiB
315 .It BLUETOOTH_QUOTA_OUT
316 Default value: 128 KiB
317 .It PROP_PROPORTIONALITY_FACTOR
318 How proportional to preferences is bandwidth distribution in a network?
319 Default value: 2.00
320 .Bl -tag -width indent
321 .It 1.0
322 Fair with respect to addresses without preferences.
323 .It > 1.0
324 The bigger, the more respect is payed to preferences.
325 .El
326 .It PROP_STABILITY_FACTOR
327 Should we stick to existing connections are prefer to switch?
328 [1.0...2.0], lower value prefers to switch, bigger value is more tolerant.
329 .Pp
330 Default value: 1.25
331 .It MLP_MAX_DURATION
332 Maximum duration for a solution process (both LP and MILP).
333 Default value: 3 s
334 .It MLP_MAX_ITERATIONS
335 Maximum numbero of iterations for a solution process (only LP).
336 Tolerated MIP Gap [0.0 .. 1.0].
337 .Pp
338 Default value: 0.025
339 .It MLP_MAX_MIP_GAP
340 Tolerated LP/MIP Gap [0.0 .. 1.0].
341 .Pp
342 Default value: 0.025
343 .It MLP_MAX_LP_MIP_GAP
344 Default value: 0.025
345 .It MLP_MAX_ITERATIONS
346 Maximum number of iterations for a solution process.
347 .Pp
348 Default value: 1024
349 .It MLP_COEFFICIENT_D
350 Default value: 1.0
351 .It MLP_COEFFICIENT_U
352 Default value: 1.0
353 .It MLP_COEFFICIENT_R
354 Default value: 1.0
355 .It MLP_MIN_BANDWIDTH
356 Default value: 1024
357 .It MLP_MIN_CONNECTIONS
358 Default value: 4
359 .It MLP_DUMP_PROBLEM_ALL
360 Dump all problems to disk.
361 .Pp
362 Default value: YES
363 .It MLP_DUMP_SOLUTION_ALL
364 Dump all solution to disk.
365 .Pp
366 Default value: YES
367 .It MLP_GLPK_VERBOSE
368 Print GLPK output.
369 .Pp
370 Default value: YES
371 .It MLP_DUMP_PROBLEM_ON_FAIL
372 Dump all problems to disk.
373 .Pp
374 Default value: YES
375 .It MLP_DUMP_SOLUTION_ON_FAIL
376 Dump all solution to disk.
377 .Pp
378 Default value: YES
379 .It RIL_STEP_TIME_MIN
380 Default value: 500 ms
381 .It RIL_STEP_TIME_MAX
382 Default value: 1000 ms
383 .It RIL_ALGORITHM
384 Possible values: SARSA or Q-LEARNING.
385 .Pp
386 Default value: Q-LEARNING
387 .It RIL_DISCOUNT_BETA
388 Default value: 0.7
389 .It RIL_GRADIENT_STEP_SIZE
390 Default value: 0.3
391 .It RIL_TRACE_DECAY
392 Default value: 0.2
393 .It RIL_EXPLORE_RATIO
394 Default value: 0.1
395 .It RIL_GLOBAL_REWARD_SHARE
396 Default value: 1
397 .El
398 .Ss AUCTION
399 .Bl -tag -width indent
400 .El
401 .Ss CADET
402 .Bl -tag -width indent
403 .It IMMEDIATE_START
404 Default value: YES
405 .It START_ON_DEMAND
406 Default value: YES
407 .It PORT
408 Default value: 2096
409 .It HOSTNAME
410 Default value: localhost
411 .It BINARY
412 Default value: gnunet-service-cadet
413 .It PREFIX
414 .It ACCEPT_FROM
415 Default value: 127.0.0.1;
416 .It ACCEPT_FROM6
417 Default value: ::1;
418 .It UNIXPATH
419 Default value: $GNUNET_RUNTIME_DIR/gnunet-service-cadet.sock
420 .It UNIX_MATCH_UID
421 Default value: NO
422 .It UNIX_MATCH_GID
423 Default value: YES
424 .It REFRESH_CONNECTION_TIME
425 How often do we send KEEPALIVE messages on connections to keep them from
426 timing out?
427 .Pp
428 Default value: 5 min
429 .It DROP_PERCENT
430 Percentage of packets CADET is artificially dropping.
431 Used for testing only!
432 .It ID_ANNOUNCE_TIME
433 How frequently do we usually anounce our presence in the DHT?
434 .Pp
435 Default value: 1 h
436 .It CONNECT_TIMEOUT
437 Default value: 30 s
438 .It DHT_REPLICATION_LEVEL
439 What is the replication level we give to the DHT when announcing our existence?
440 Usually there is no need to change this.
441 .Pp
442 Default value: 3
443 .It MAX_TUNNELS
444 Not implemented
445 .Pp
446 Default value: 1000
447 .It MAX_CONNECTIONS
448 Not implemented, replaced by MAX_ROUTES in NEW CADET!
449 .Pp
450 Default value: 1000
451 .It MAX_ROUTES
452 How many routes do we participate in at most?
453 Should be smaller than MAX_MSGS_QUEUE.
454 .Pp
455 Default value: 5000
456 .It MAX_MSGS_QUEUE
457 Not implemented
458 .Pp
459 Default value: 10000
460 .It MAX_PEERS
461 Not implemented
462 .Pp
463 Default value: 1000
464 .It RATCHET_TIME
465 How often do we advance the ratchet even if there is not any traffic?
466 .Pp
467 Default value: 1 h
468 .It RATCHET_MESSAGES
469 How often do we advance the ratched if there is traffic?
470 .Pp
471 Default value: 64
472 .El
473 .Ss COMMUNICATOR-UNIX
474 .Bl -tag -width indent
475 .It UNIXPATH
476 Default value: $GNUNET_RUNTIME_DIR/gnunet-communicator-unix.sock
477 .El
478 .Ss CONSENSUS
479 .Bl -tag -width indent
480 .It START_ON_DEMAND
481 Default value: YES
482 .It PORT
483 Default value: 2103
484 .It HOSTNAME
485 Default value: localhost
486 .It BINARY
487 Default value: gnunet-service-consensus
488 .It ACCEPT_FROM
489 Default value: 127.0.0.1;
490 .It ACCEPT_FROM6
491 Default value: ::1;
492 .It UNIXPATH
493 Default value: $GNUNET_RUNTIME_DIR/gnunet-service-consensus.sock
494 .It UNIX_MATCH_UID
495 Default value: YES
496 .It UNIX_MATCH_GID
497 Default value: YES
498 .El
499 .Ss CORE
500 .Bl -tag -width indent
501 .It START_ON_DEMAND
502 Default value: YES
503 .It PORT
504 Default value: 2092
505 .It HOSTNAME
506 Default value: localhost
507 .It BINARY
508 Default value: gnunet-service-core
509 .It ACCEPT_FROM
510 Default value: 127.0.0.1;
511 .It ACCEPT_FROM6
512 Default value: ::1;
513 .It UNIXPATH
514 Default value: $GNUNET_RUNTIME_DIR/gnunet-service-core.sock
515 .It UNIX_MATCH_UID
516 Default value: NO
517 .It UNIX_MATCH_GID
518 Default value: YES
519 .It DISABLE_SOCKET_FORWARDING
520 Default value: NO
521 .It USERNAME
522 .It MAXBUF
523 .It TIMEOUT
524 .It DISABLEV6
525 .It BINDTO
526 .It REJECT_FROM
527 .It REJECT_FROM6
528 .It PREFIX
529 .It USE_EPHEMERAL_KEYS
530 Default value: YES
531 .Pp
532 This MUST be set to YES in production, only set to NO for testing for
533 performance (testbed/cluster-scale use!).
534 .El
535 .Ss DATACACHE-POSTGRES
536 .Bl -tag -width indent
537 .It CONFIG
538 Default value: postgres:///gnunet
539 .El
540 .Ss DATASTORE
541 .Bl -tag -width indent
542 .It START_ON_DEMAND
543 Default value: YES
544 .It UNIXPATH
545 Default value: $GNUNET_RUNTIME_DIR/gnunet-service-datastore.sock
546 .It UNIX_MATCH_UID
547 Default value: NO
548 .It UNIX_MATCH_GID
549 Default value: YES
550 .It PORT
551 Default value: 2093
552 .It HOSTNAME
553 Default value: localhost
554 .It BINARY
555 Default value: gnunet-service-datastore
556 .It ACCEPT_FROM
557 Default value: 127.0.0.1;
558 .It ACCEPT_FROM6
559 Default value: ::1;
560 .It QUOTA
561 Default value: 5 GB
562 .It BLOOMFILTER
563 Default value: $GNUNET_DATA_HOME/datastore/bloomfilter
564 .It DATABASE
565 Default value: sqlite
566 .It DISABLE_SOCKET_FORWARDING
567 Default value: NO
568 .El
569 .Ss DATASTORE-SQLITE
570 .Bl -tag -width indent
571 .It FILENAME
572 Default value: $GNUNET_DATA_HOME/datastore/sqlite.db
573 .El
574 .Ss DATASTORE-POSTGRES
575 .Bl -tag -width indent
576 .It CONFIG
577 Default value: postgres:///gnunet
578 .El
579 .Ss DATASTORE-MYSQL
580 .Bl -tag -width indent
581 .It DATABASE
582 Default value: gnunet
583 .It CONFIG
584 Default value: ~/.my.cnf
585 .It USER
586 Default value: gnunet
587 .It PASSWORD
588 .It HOST
589 Default value: localhost
590 .It PORT
591 Default value: 3306
592 .El
593 .Ss DATASTORE-HEAP
594 .Bl -tag -width indent
595 .It HASHMAPSIZE
596 Default value: 1024
597 .El
598 .Ss DHT
599 .Bl -tag -width indent
600 .It IMMEDIATE_START Ar boolean
601 Default value: YES
602 .It START_ON_DEMAND Ar boolean
603 Default value: YES
604 .It PORT Ar integer
605 Default value: 2095
606 .It HOSTNAME Ar string
607 Default value: localhost
608 .It BINARY Ar string
609 Default value: gnunet-service-dht
610 .It ACCEPT_FROM Ar string
611 Default value: 127.0.0.1;
612 .It ACCEPT_FROM6 Ar string
613 Default value: ::1;
614 .It BUCKET_SIZE Ar integer
615 Default value: 4
616 .It UNIXPATH Ar path
617 Default value: $GNUNET_RUNTIME_DIR/gnunet-service-dht.sock
618 .It UNIX_MATCH_UID Ar boolean
619 Default value: NO
620 .It UNIX_MATCH_GID Ar boolean
621 Default value: YES
622 .It DISABLE_SOCKET_FORWARDING Ar boolean
623 Default value: NO
624 .It USERNAME =
625 .It MAXBUF =
626 .It TIMEOUT =
627 .It DISABLEV6 =
628 .It BINDTO =
629 .It REJECT_FROM =
630 .It REJECT_FROM6 =
631 .It PREFIX =
632 .It
633 # Should the DHT cache results that we are routing in the DATACACHE as well?
634 CACHE_RESULTS = YES
635 .It
636 # Special option to disable DHT calling 'try_connect' (for testing)
637 DISABLE_TRY_CONNECT = NO
638 .El
639 .Ss DHTCACHE
640 .Bl -tag -width indent
641 .It DATABASE
642 Default value: heap
643 .It QUOTA
644 Default value: 50 MB
645 .It DISABLE_BF_RC Ar boolean
646 Disable RC-file for Bloom filter?
647 (for benchmarking with limited IO availability)
648 .Pp
649 Default value: NO
650 .Ss EXIT
651 .Bl -tag -width indent
652 .El
653 .Ss FS
654 .Bl -tag -width indent
655 .El
656 .Ss GNS
657 .Bl -tag -width indent
658 .El
659 .Ss HOSTLIST
660 .Bl -tag -width indent
661 .El
662 .Ss IDENTITY
663 .Bl -tag -width indent
664 .El
665 .Ss NAMECACHE
666 .Bl -tag -width indent
667 .El
668 .Ss NAMESTORE
669 .Bl -tag -width indent
670 .El
671 .Ss NAT-AUTO
672 .Bl -tag -width indent
673 .El
674 .Ss NAT
675 .Bl -tag -width indent
676 .El
677 .Ss NSE
678 .Bl -tag -width indent
679 .El
680 .Ss PEERINFO
681 .Bl -tag -width indent
682 .El
683 .Ss PEERSTORE
684 .Bl -tag -width indent
685 .El
686 .Ss PT
687 .Bl -tag -width indent
688 .El
689 .Ss REGEX
690 .Bl -tag -width indent
691 .El
692 .Ss RESOLVER
693 .Bl -tag -width indent
694 .El
695 .Ss REST
696 .Bl -tag -width indent
697 .It UNIXPATH
698 Default value: $GNUNET_USER_RUNTIME_DIR/gnunet-service-rest.sock
699 .It BINARY
700 Default value: gnunet-rest-server
701 .It BIND_TO
702 Default value: 127.0.0.1
703 .It BIND_TO6
704 Default value: ::1
705 .It REST_PORT
706 Default value: 7776
707 .It REST_ALLOW_HEADERS
708 Default value: Authorization,Accept,Content-Type
709 .It REST_ALLOW_ORIGIN
710 Default value: *
711 .It REST_ALLOW_CREDENTIALS
712 Default value: true
713 .El
714 .Ss REVOCATION
715 .Ss SCALARPRODUCT
716 .Ss SECRETSHARING
717 .Ss SET
718 .Ss STATISTICS
719 .Ss TEMPLATE
720 .Ss TESTBED-LOGGER
721 .Ss TESTBED
722 .Ss TESTING
723 .Ss TOPOLOGY
724 .Bl -tag -width indent
725 .It IMMEDIATE_START
726 Default value: YES
727 .It NOARMBIND
728 Default value: YES
729 .It MINIMUM-FRIENDS
730 Default value: 0
731 .It FRIENDS-ONLY
732 Default value: NO
733 .It TARGET-CONNECTION-COUNT
734 Default value: 16
735 .It FRIENDS
736 Default value: $GNUNET_CONFIG_HOME/topology/friends.txt
737 .It BINARY
738 Default value: gnunet-daemon-topology
739 .El
740 .Ss TRANSPORT
741 .Ss UTIL
742 .Ss VPN
743 .Bl -tag -width indent
744 .It START_ON_DEMAND
745 Default value: YES
746 .It PORT
747 Default value: 2105
748 .It HOSTNAME
749 Default value: localhost
750 .It BINARY
751 Default value: gnunet-service-vpn
752 .It ACCEPT_FROM
753 Default value: 127.0.0.1;
754 .It ACCEPT_FROM6
755 Default value: ::1;
756 .It UNIXPATH
757 Default value: $GNUNET_RUNTIME_DIR/gnunet-service-vpn.sock
758 .It UNIX_MATCH_UID
759 Default value: NO
760 .It UNIX_MATCH_GID
761 Default value: YES
762 .It IPV6ADDR
763 Default value: 1234::1
764 .It IPV6PREFIX
765 Default value: 32
766 .It IPV4ADDR
767 Default value: 10.11.10.1
768 .It IPV4MASK
769 Default value: 255.255.0.0
770 .It VIRTDNS
771 Default value: 10.11.10.2
772 .It VIRTDNS6
773 Default value: 1234::17
774 .It IFNAME
775 Default value: vpn-gnunet
776 .El
777 .Ss ZONEMASTER
778 .Bl -tag -width indent
779 .It START_ON_DEMAND
780 Default value: YES
781 .It IMMEDIATE_START
782 Default value: YES
783 .It HOSTNAME
784 Default value: localhost
785 .It BINARY
786 Default value: gnunet-service-zonemaster
787 .It UNIXPATH
788 Default value: $GNUNET_USER_RUNTIME_DIR/gnunet-service-zonemaster.sock
789 .It PORT
790 Default value: 2123
791 .It UNIX_MATCH_UID
792 Do we require users that want to access GNS to run this process (usually
793 not a good idea)?
794 .Pp
795 Default value: NO
796 .It UNIX_MATCH_GID
797 Do we require users that want to access GNS to be in the 'gnunet' group?
798 .Pp
799 Default value: NO
800 .It MAX_PARALLEL_BACKGROUND_QUERIES
801 How many queries is GNS allowed to perform in the background at the same time?
802 .Pp
803 Default value: 1000
804 .It ZONE_PUBLISH_TIME_WINDOW
805 How frequently do we try to publish our full zone?
806 .Pp
807 Default value: 4 h
808 .It USE_CACHE
809 Using caching or always ask DHT?
810 .Pp
811 Default value: YES
812 .It PREFIX
813 .El
814 .Ss ZONEMASTER-MONITOR
815 .Bl -tag -width indent
816 .It START_ON_DEMAND
817 Default value: YES
818 .It IMMEDIATE_START
819 Default value: YES
820 .It HOSTNAME
821 Default value: localhost
822 .It BINARY
823 Default value: gnunet-service-zonemaster-monitor
824 .It UNIXPATH
825 Default value: $GNUNET_USER_RUNTIME_DIR/gnunet-service-zonemaster-monitor.sock
826 .It PORT
827 Default value: 2124
828 .It UNIX_MATCH_UID
829 Do we require users that want to access GNS to run this process (usually not
830 a good idea)?
831 .Pp
832 Default value: NO
833 .It UNIX_MATCH_GID
834 Do we require users that want to access GNS to be in the 'gnunet' group?
835 .Pp
836 Default value:
837 .Li NO
838 .El
839 .Sh EXAMPLES
840 This example is a simple way to get started, using a server that has a known
841 list of peers to get you started.
842 Most users will be behind a firewall on IPv4, as such NAT is enabled.
843 Please remember to change your IP address to the actual external address
844 for your usage.
845 .Bd -literal -offset indent -compact
846 [hostlist]
847 OPTIONS = \-b \-e
848
849 [nat]
850 BEHIND_NAT = YES
851 ENABLE_UPNP = YES
852 DISABLEV6 = YES
853 EXTERNAL_ADDRESS = 157.166.249.10
854
855 [arm]
856 START_SYSTEM_SERVICES = YES
857 START_USER_SERVICES = NO
858 .Ed
859 .Sh FILES
860 .Pa ~gnunet/.config/gnunet.conf
861 GNUnet system-user configuration file
862 .Pa $HOME/.config/gnunet.conf
863 User specific GNUnet configuration file
864 .Pa @SYSCONFDIR@/gnunet.conf
865 Systemwide GNUnet configuration file
866 .Pa $GNUNET_PREFIX/share/gnunet/config.d/
867 GNUnet configuration directory with all default option values
868 .Sh SEE ALSO
869 .Xr env 1 ,
870 .Xr gnunet-arm 1 ,
871 .Xr gnunet-setup 1 ,
872 .Xr strftime 3 .
873 .Pp
874 The full documentation for gnunet is maintained as a Texinfo manual.
875 If the
876 .Xr info 1
877 and gnunet programs are properly installed at your site, the command
878 .Pp
879 .Dl info gnunet
880 .Pp
881 should give you access to the complete handbook,
882 .Pp
883 .Dl info gnunet-c-tutorial
884 .Pp
885 will give you access to a tutorial for developers.
886 .Pp
887 Depending on your installation, this information is also available in
888 .Xr gnunet 7 and
889 .Xr gnunet-c-tutorial 7 .
890 .\".Sh HISTORY
891 .\".Sh AUTHORS
892 .Sh BUGS
893 Report bugs by using
894 .Lk https://bugs.gnunet.org
895 or by sending electronic mail to
896 .Aq Mt gnunet-developers@gnu.org .