Subversion Repositories configs

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
192 - 1
# Master libvirt daemon configuration file
2
#
3
 
4
#################################################################
5
#
6
# UNIX socket access controls
7
#
8
 
9
# Set the UNIX domain socket group ownership. This can be used to
10
# allow a 'trusted' set of users access to management capabilities
11
# without becoming root.
12
#
13
# This setting is not required or honoured if using systemd socket
14
# activation.
15
#
16
# This is restricted to 'root' by default.
17
#unix_sock_group = "libvirt"
18
 
19
# Set the UNIX socket permissions for the R/O socket. This is used
20
# for monitoring VM status only
21
#
22
# This setting is not required or honoured if using systemd socket
23
# activation.
24
#
25
# Default allows any user. If setting group ownership, you may want to
26
# restrict this too.
27
#unix_sock_ro_perms = "0777"
28
 
29
# Set the UNIX socket permissions for the R/W socket. This is used
30
# for full management of VMs
31
#
32
# This setting is not required or honoured if using systemd socket
33
# activation.
34
#
35
# Default allows only root. If PolicyKit is enabled on the socket,
36
# the default will change to allow everyone (eg, 0777)
37
#
38
# If not using PolicyKit and setting group ownership for access
39
# control, then you may want to relax this too.
40
#unix_sock_rw_perms = "0770"
41
 
42
# Set the UNIX socket permissions for the admin interface socket.
43
#
44
# This setting is not required or honoured if using systemd socket
45
# activation.
46
#
47
# Default allows only owner (root), do not change it unless you are
48
# sure to whom you are exposing the access to.
49
#unix_sock_admin_perms = "0700"
50
 
51
# Set the name of the directory in which sockets will be found/created.
52
#
53
# This setting is not required or honoured if using systemd socket
54
# activation with systemd version >= 227
55
#
56
#unix_sock_dir = "@runstatedir@/libvirt"
57
 
58
 
59
 
60
#################################################################
61
#
62
# Authentication.
63
#
64
#  - none: do not perform auth checks. If you can connect to the
65
#          socket you are allowed. This is suitable if there are
66
#          restrictions on connecting to the socket (eg, UNIX
67
#          socket permissions), or if there is a lower layer in
68
#          the network providing auth (eg, TLS/x509 certificates)
69
#
70
#  - sasl: use SASL infrastructure. The actual auth scheme is then
71
#          controlled from @sysconfdir@/sasl2/libvirt.conf. For the TCP
72
#          socket only GSSAPI & DIGEST-MD5 mechanisms will be used.
73
#          For non-TCP or TLS sockets, any scheme is allowed.
74
#
75
#  - polkit: use PolicyKit to authenticate. This is only suitable
76
#            for use on the UNIX sockets. The default policy will
77
#            require a user to supply their own password to gain
78
#            full read/write access (aka sudo like), while anyone
79
#            is allowed read/only access.
80
#
81
# Set an authentication scheme for UNIX read-only sockets
82
# By default socket permissions allow anyone to connect
83
#
84
# To restrict monitoring of domains you may wish to enable
85
# an authentication mechanism here
86
#auth_unix_ro = "none"
87
 
88
# Set an authentication scheme for UNIX read-write sockets
89
# By default socket permissions only allow root. If PolicyKit
90
# support was compiled into libvirt, the default will be to
91
# use 'polkit' auth.
92
#
93
# If the unix_sock_rw_perms are changed you may wish to enable
94
# an authentication mechanism here
95
#auth_unix_rw = "none"
96
 
97
 
98
# Change the API access control scheme
99
#
100
# By default an authenticated user is allowed access
101
# to all APIs. Access drivers can place restrictions
102
# on this. By default the 'nop' driver is enabled,
103
# meaning no access control checks are done once a
104
# client has authenticated with virtsecretd
105
#
106
#access_drivers = [ "polkit" ]
107
 
108
#################################################################
109
#
110
# Authorization controls
111
#
112
 
113
 
114
# A whitelist of allowed SASL usernames. The format for username
115
# depends on the SASL authentication mechanism. Kerberos usernames
116
# look like username@REALM
117
#
118
# This list may contain wildcards such as
119
#
120
#    "*@EXAMPLE.COM"
121
#
122
# See the g_pattern_match function for the format of the wildcards.
123
#
124
# https://developer.gnome.org/glib/stable/glib-Glob-style-pattern-matching.html
125
#
126
# NB If this is an empty list, no client can connect, so comment out
127
# entirely rather than using empty list to disable these checks
128
#
129
# By default, no Username's are checked
130
#sasl_allowed_username_list = ["joe@EXAMPLE.COM", "fred@EXAMPLE.COM" ]
131
 
132
 
133
#################################################################
134
#
135
# Processing controls
136
#
137
 
138
# The maximum number of concurrent client connections to allow
139
# over all sockets combined.
140
#max_clients = 5000
141
 
142
# The maximum length of queue of connections waiting to be
143
# accepted by the daemon. Note, that some protocols supporting
144
# retransmission may obey this so that a later reattempt at
145
# connection succeeds.
146
#max_queued_clients = 1000
147
 
148
# The maximum length of queue of accepted but not yet
149
# authenticated clients. The default value is 20. Set this to
150
# zero to turn this feature off.
151
#max_anonymous_clients = 20
152
 
153
# The minimum limit sets the number of workers to start up
154
# initially. If the number of active clients exceeds this,
155
# then more threads are spawned, up to max_workers limit.
156
# Typically you'd want max_workers to equal maximum number
157
# of clients allowed
158
#min_workers = 5
159
#max_workers = 20
160
 
161
 
162
# The number of priority workers. If all workers from above
163
# pool are stuck, some calls marked as high priority
164
# (notably domainDestroy) can be executed in this pool.
165
#prio_workers = 5
166
 
167
# Limit on concurrent requests from a single client
168
# connection. To avoid one client monopolizing the server
169
# this should be a small fraction of the global max_workers
170
# parameter.
171
#max_client_requests = 5
172
 
173
# Same processing controls, but this time for the admin interface.
174
# For description of each option, be so kind to scroll few lines
175
# upwards.
176
 
177
#admin_min_workers = 1
178
#admin_max_workers = 5
179
#admin_max_clients = 5
180
#admin_max_queued_clients = 5
181
#admin_max_client_requests = 5
182
 
183
#################################################################
184
#
185
# Logging controls
186
#
187
 
188
# Logging level: 4 errors, 3 warnings, 2 information, 1 debug
189
# basically 1 will log everything possible
190
#
191
# WARNING: USE OF THIS IS STRONGLY DISCOURAGED.
192
#
193
# WARNING: It outputs too much information to practically read.
194
# WARNING: The "log_filters" setting is recommended instead.
195
#
196
# WARNING: Journald applies rate limiting of messages and so libvirt
197
# WARNING: will limit "log_level" to only allow values 3 or 4 if
198
# WARNING: journald is the current output.
199
#
200
# WARNING: USE OF THIS IS STRONGLY DISCOURAGED.
201
#log_level = 3
202
 
203
# Logging filters:
204
# A filter allows to select a different logging level for a given category
205
# of logs. The format for a filter is:
206
#
207
#    level:match
208
#
209
# where 'match' is a string which is matched against the category
210
# given in the VIR_LOG_INIT() at the top of each libvirt source
211
# file, e.g., "remote", "qemu", or "util.json". The 'match' in the
212
# filter matches using shell wildcard syntax (see 'man glob(7)').
213
# The 'match' is always treated as a substring match. IOW a match
214
# string 'foo' is equivalent to '*foo*'.
215
#
216
# 'level' is the minimal level where matching messages should
217
#  be logged:
218
#
219
#    1: DEBUG
220
#    2: INFO
221
#    3: WARNING
222
#    4: ERROR
223
#
224
# Multiple filters can be defined in a single @log_filters, they just need
225
# to be separated by spaces. Note that libvirt performs "first" match, i.e.
226
# if there are concurrent filters, the first one that matches will be applied,
227
# given the order in @log_filters.
228
#
229
# A typical need is to capture information from a hypervisor driver,
230
# public API entrypoints and some of the utility code. Some utility
231
# code is very verbose and is generally not desired. Taking the QEMU
232
# hypervisor as an example, a suitable filter string for debugging
233
# might be to turn off object, json & event logging, but enable the
234
# rest of the util code:
235
#
236
#log_filters="1:qemu 1:libvirt 4:object 4:json 4:event 1:util"
237
 
238
# Logging outputs:
239
# An output is one of the places to save logging information
240
# The format for an output can be:
241
#    level:stderr
242
#      output goes to stderr
243
#    level:syslog:name
244
#      use syslog for the output and use the given name as the ident
245
#    level:file:file_path
246
#      output to a file, with the given filepath
247
#    level:journald
248
#      output to journald logging system
249
# In all cases 'level' is the minimal priority, acting as a filter
250
#    1: DEBUG
251
#    2: INFO
252
#    3: WARNING
253
#    4: ERROR
254
#
255
# Multiple outputs can be defined, they just need to be separated by spaces.
256
# e.g. to log all warnings and errors to syslog under the virtsecretd ident:
257
#log_outputs="3:syslog:virtsecretd"
258
 
259
 
260
##################################################################
261
#
262
# Auditing
263
#
264
# This setting allows usage of the auditing subsystem to be altered:
265
#
266
#   audit_level == 0  -> disable all auditing
267
#   audit_level == 1  -> enable auditing, only if enabled on host (default)
268
#   audit_level == 2  -> enable auditing, and exit if disabled on host
269
#
270
#audit_level = 2
271
#
272
# If set to 1, then audit messages will also be sent
273
# via libvirt logging infrastructure. Defaults to 0
274
#
275
#audit_logging = 1
276
 
277
###################################################################
278
# UUID of the host:
279
# Host UUID is read from one of the sources specified in host_uuid_source.
280
#
281
# - 'smbios': fetch the UUID from 'dmidecode -s system-uuid'
282
# - 'machine-id': fetch the UUID from /etc/machine-id
283
#
284
# The host_uuid_source default is 'smbios'. If 'dmidecode' does not provide
285
# a valid UUID a temporary UUID will be generated.
286
#
287
# Another option is to specify host UUID in host_uuid.
288
#
289
# Keep the format of the example UUID below. UUID must not have all digits
290
# be the same.
291
 
292
# NB This default all-zeros UUID will not work. Replace
293
# it with the output of the 'uuidgen' command and then
294
# uncomment this entry
295
#host_uuid = "00000000-0000-0000-0000-000000000000"
296
#host_uuid_source = "smbios"
297
 
298
###################################################################
299
# Keepalive protocol:
300
# This allows virtsecretd to detect broken client connections or even
301
# dead clients.  A keepalive message is sent to a client after
302
# keepalive_interval seconds of inactivity to check if the client is
303
# still responding; keepalive_count is a maximum number of keepalive
304
# messages that are allowed to be sent to the client without getting
305
# any response before the connection is considered broken.  In other
306
# words, the connection is automatically closed approximately after
307
# keepalive_interval * (keepalive_count + 1) seconds since the last
308
# message received from the client.  If keepalive_interval is set to
309
# -1, virtsecretd will never send keepalive requests; however clients
310
# can still send them and the daemon will send responses.  When
311
# keepalive_count is set to 0, connections will be automatically
312
# closed after keepalive_interval seconds of inactivity without
313
# sending any keepalive messages.
314
#
315
#keepalive_interval = 5
316
#keepalive_count = 5
317
 
318
#
319
# These configuration options are no longer used.  There is no way to
320
# restrict such clients from connecting since they first need to
321
# connect in order to ask for keepalive.
322
#
323
#keepalive_required = 1
324
#admin_keepalive_required = 1
325
 
326
# Keepalive settings for the admin interface
327
#admin_keepalive_interval = 5
328
#admin_keepalive_count = 5
329
 
330
###################################################################
331
# Open vSwitch:
332
# This allows to specify a timeout for openvswitch calls made by
333
# libvirt. The ovs-vsctl utility is used for the configuration and
334
# its timeout option is set by default to 5 seconds to avoid
335
# potential infinite waits blocking libvirt.
336
#
337
#ovs_timeout = 5