Keep "gpg_homedir" and list file settings across SIGHUP.
[libpwmd.git] / doc / config.example
blob5c6eea44574b86fdc9fca39920a08a0b35446456
1 # Example PWMD configuration file. Edit and save to ~/.pwmd/config or
2 # specify with the -f command line option. See the pwmd(1) manual page or the
3 # pwmd.info documentation for complete details of the options.
5 # The global section is for non-file related settings and defaults for data
6 # files without a file section of their own.
7 [global]
9 # Location of the listening socket.
10 #socket_path=~/.pwmd/socket
12 # Socket permissions. This will override any umask setting.
13 #socket_perms=0600
15 # Usernames or groups obtained via SO_PEERCRED which are allowed to
16 # connect to the socket. Groups should be prefixed with a '@'. When not
17 # specified only the invoking user is allowed. You can also specify an SHA256
18 # TLS fingerprint by prefixing it with a '#'.
19 #allowed = username,another_user,@group,-not_this_user,#TLS-FINGERPRINT
21 # Same syntax as the 'allowed' parameter with one entry per line.
22 #allowed_file=~/path/to/file
24 # Username to use as the default in an element ACL. The default is the
25 # user that starts pwmd.
26 #invoking_user=nobody,@group,!notme,#TLSFINGERPRINT
28 # Same syntax as the 'invoking_user' parameter with one entry per line.
29 #invoking_file=~/path/to/file
31 # Allow killing another client of the same UID or TLS fingerprint when not an
32 # invoking_user.
33 #strict_kill=false
35 # When false, disable keeping backups for data files.
36 #backup=true
38 # Where gpg2(1) will store is configuration including public and private keys.
39 #gpg_homedir = ~/.pwmd/.gnupg
41 # Whether to kill scdaemon after each OPEN, SAVE or PASSWD command.
42 #kill_scd=false
44 # Whether to use the gpg2(1) option to always encrypt to a specified key.
45 #encrypt_to=false
47 # Whether to allow encrypting to untrusted public keys.
48 #always_trust=false
50 # Log file location.
51 #log_path=~/.pwmd/log
53 # Set to true to enable logging to log_path.
54 #enable_logging=false
56 # Disable to close the logging file descriptor (log_path) after writing each
57 # line.
58 #log_keepopen=true
60 # Set to true to enable logging to syslog.
61 #syslog=false
63 # The logging level: 0=connections and errors, 1=recipients/signers,
64 # 2=commands
65 #log_level=0
67 # Require the passphrase needed to OPEN a data file before each SAVE.
68 #require_save_key=true
70 # Set to false to call mlockall(2) after a client connects. Uses more memory
71 # but is also more secure. Most will probably find it overkill since the
72 # contents of all memory is cleared before being freed.
73 #disable_mlockall=true
75 # Disable the XPATH, LIST and DUMP commands. When "true" and a client sends
76 # these commands the error GPG_ERR_NOT_IMPLEMENTED will be returned.
77 #disable_list_and_dump=false
79 # When sending data to the client an XFER status message will be sent after
80 # N bytes. N is rounded to ASSUAN_LINELENGTH (1002) bytes.
81 #xfer_progress=8196
83 # A comma separated list of filenames to add to the file cache upon startup.
84 # You will be prompted for the passphrase for each file if required. The files
85 # are looked for in ~/.pwmd/data.
86 #cache_push=somefile,anotherfile
88 # The number of seconds to keep a file in the cache. If -1, the file will be
89 # kept forever. If 0 then every OPEN will require a passphrase.
90 #cache_timeout=600
92 # The maximum recursion depth when resolving elements that contain a "target"
93 # attribute. When this value is exceeded an error will be returned.
94 #recursion_depth=100
96 # The priority or nice value of the server process. The default is inherited
97 # from the parent process.
98 #priority=10
100 # In tenths of a second, the amount of time to wait for a file lock before
101 # returning an error to the client.
102 #lock_timeout=50
104 # Whether to enable TCP/TLS server support. If enabled, both TCP and the local
105 # unix domain socket will listen for connections.
106 #enable_tcp=false
108 # If TCP is enabled, the port to listen on.
109 #tcp_port=6466
111 # The network interface to listen on.
112 #tcp_interface=eth1
114 # The number of seconds to wait for a network read and write to complete
115 # for TLS connections.
116 #tls_timeout=300
118 # Require the client to provide the key to open a file even if the file is
119 # cached.
120 #tcp_require_key=false
122 # Accept TCP connections from the specified protocol. One of: ipv4, ipv6 or
123 # any. The default is "any".
124 #tcp_bind=any
126 # The GnuTLS cipher suite and protocol to use.
127 #tls_cipher_suite=SECURE256:SECURE192:SECURE128:-VERS-SSL3.0:-VERS-TLS1.0
129 # The PEM encoded DH parameters file to use. If not specified then some
130 # algorithms will not work.
131 #tls_dh_params_file=/path/to/file
133 # The interval in seconds to send the KEEPALIVE status message when
134 # not in a command.
135 #keepalive_interval=60
137 # END GLOBAL SETTINGS
139 # File specific settings are allowed by placing the filename in braces. Each
140 # file can have it's own configuration settings from those listed below.
141 #[somefile]
142 #cache_timeout=300
143 #passphrase_file=/path/to/file.key
144 #backup=true
145 #xfer_progress=1024
146 #recursion_depth=200
147 #require_save_key=true
148 #tcp_require_key=true
149 #allowed=@group,-notme