source: npl/virt/libvirt_conf/root/etc/libvirt/libvirtd.conf

Last change on this file was c5c522c, checked in by Edwin Eefting <edwin@datux.nl>, 8 years ago

initial commit, transferred from cleaned syn3 svn tree

  • Property mode set to 100644
File size: 14.9 KB
RevLine 
[c5c522c]1# Master libvirt daemon configuration file
2#
3# For further information consult http://libvirt.org/format.html
4#
5# NOTE: the tests/daemon-conf regression test script requires
6# that each "PARAMETER = VALUE" line in this file have the parameter
7# name just after a leading "#".
8
9#################################################################
10#
11# Network connectivity controls
12#
13
14# Flag listening for secure TLS connections on the public TCP/IP port.
15# NB, must pass the --listen flag to the libvirtd process for this to
16# have any effect.
17#
18# It is necessary to setup a CA and issue server certificates before
19# using this capability.
20#
21# This is enabled by default, uncomment this to disable it
22#listen_tls = 0
23
24# Listen for unencrypted TCP connections on the public TCP/IP port.
25# NB, must pass the --listen flag to the libvirtd process for this to
26# have any effect.
27#
28# Using the TCP socket requires SASL authentication by default. Only
29# SASL mechanisms which support data encryption are allowed. This is
30# DIGEST_MD5 and GSSAPI (Kerberos5)
31#
32# This is disabled by default, uncomment this to enable it.
33#listen_tcp = 1
34
35
36
37# Override the port for accepting secure TLS connections
38# This can be a port number, or service name
39#
40#tls_port = "16514"
41
42# Override the port for accepting insecure TCP connections
43# This can be a port number, or service name
44#
45#tcp_port = "16509"
46
47
48# Override the default configuration which binds to all network
49# interfaces. This can be a numeric IPv4/6 address, or hostname
50#
51# If the libvirtd service is started in parallel with network
52# startup (e.g. with systemd), binding to addresses other than
53# the wildcards (0.0.0.0/::) might not be available yet.
54#
55#listen_addr = "192.168.0.1"
56
57
58# Flag toggling mDNS advertizement of the libvirt service.
59#
60# Alternatively can disable for all services on a host by
61# stopping the Avahi daemon
62#
63# This is disabled by default, uncomment this to enable it
64#mdns_adv = 1
65
66# Override the default mDNS advertizement name. This must be
67# unique on the immediate broadcast network.
68#
69# The default is "Virtualization Host HOSTNAME", where HOSTNAME
70# is substituted for the short hostname of the machine (without domain)
71#
72#mdns_name = "Virtualization Host Joe Demo"
73
74
75#################################################################
76#
77# UNIX socket access controls
78#
79
80# Beware that if you are changing *any* of these options, and you use
81# socket activation with systemd, you need to adjust the settings in
82# the libvirtd.socket file as well since it could impose a security
83# risk if you rely on file permission checking only.
84
85# Set the UNIX domain socket group ownership. This can be used to
86# allow a 'trusted' set of users access to management capabilities
87# without becoming root.
88#
89# This is restricted to 'root' by default.
90#unix_sock_group = "libvirt"
91
92# Set the UNIX socket permissions for the R/O socket. This is used
93# for monitoring VM status only
94#
95# Default allows any user. If setting group ownership, you may want to
96# restrict this too.
97#unix_sock_ro_perms = "0777"
98
99# Set the UNIX socket permissions for the R/W socket. This is used
100# for full management of VMs
101#
102# Default allows only root. If PolicyKit is enabled on the socket,
103# the default will change to allow everyone (eg, 0777)
104#
105# If not using PolicyKit and setting group ownership for access
106# control, then you may want to relax this too.
107#unix_sock_rw_perms = "0770"
108
109# Set the UNIX socket permissions for the admin interface socket.
110#
111# Default allows only owner (root), do not change it unless you are
112# sure to whom you are exposing the access to.
113#unix_sock_admin_perms = "0700"
114
115# Set the name of the directory in which sockets will be found/created.
116#unix_sock_dir = "/var/run/libvirt"
117
118
119
120#################################################################
121#
122# Authentication.
123#
124#  - none: do not perform auth checks. If you can connect to the
125#          socket you are allowed. This is suitable if there are
126#          restrictions on connecting to the socket (eg, UNIX
127#          socket permissions), or if there is a lower layer in
128#          the network providing auth (eg, TLS/x509 certificates)
129#
130#  - sasl: use SASL infrastructure. The actual auth scheme is then
131#          controlled from /etc/sasl2/libvirt.conf. For the TCP
132#          socket only GSSAPI & DIGEST-MD5 mechanisms will be used.
133#          For non-TCP or TLS sockets, any scheme is allowed.
134#
135#  - polkit: use PolicyKit to authenticate. This is only suitable
136#            for use on the UNIX sockets. The default policy will
137#            require a user to supply their own password to gain
138#            full read/write access (aka sudo like), while anyone
139#            is allowed read/only access.
140#
141# Set an authentication scheme for UNIX read-only sockets
142# By default socket permissions allow anyone to connect
143#
144# To restrict monitoring of domains you may wish to enable
145# an authentication mechanism here
146#auth_unix_ro = "none"
147
148# Set an authentication scheme for UNIX read-write sockets
149# By default socket permissions only allow root. If PolicyKit
150# support was compiled into libvirt, the default will be to
151# use 'polkit' auth.
152#
153# If the unix_sock_rw_perms are changed you may wish to enable
154# an authentication mechanism here
155#auth_unix_rw = "none"
156
157# Change the authentication scheme for TCP sockets.
158#
159# If you don't enable SASL, then all TCP traffic is cleartext.
160# Don't do this outside of a dev/test scenario. For real world
161# use, always enable SASL and use the GSSAPI or DIGEST-MD5
162# mechanism in /etc/sasl2/libvirt.conf
163#auth_tcp = "sasl"
164
165# Change the authentication scheme for TLS sockets.
166#
167# TLS sockets already have encryption provided by the TLS
168# layer, and limited authentication is done by certificates
169#
170# It is possible to make use of any SASL authentication
171# mechanism as well, by using 'sasl' for this option
172#auth_tls = "none"
173
174
175# Change the API access control scheme
176#
177# By default an authenticated user is allowed access
178# to all APIs. Access drivers can place restrictions
179# on this. By default the 'nop' driver is enabled,
180# meaning no access control checks are done once a
181# client has authenticated with libvirtd
182#
183#access_drivers = [ "polkit" ]
184
185#################################################################
186#
187# TLS x509 certificate configuration
188#
189
190
191# Override the default server key file path
192#
193#key_file = "/etc/pki/libvirt/private/serverkey.pem"
194
195# Override the default server certificate file path
196#
197#cert_file = "/etc/pki/libvirt/servercert.pem"
198
199# Override the default CA certificate path
200#
201#ca_file = "/etc/pki/CA/cacert.pem"
202
203# Specify a certificate revocation list.
204#
205# Defaults to not using a CRL, uncomment to enable it
206#crl_file = "/etc/pki/CA/crl.pem"
207
208
209
210#################################################################
211#
212# Authorization controls
213#
214
215
216# Flag to disable verification of our own server certificates
217#
218# When libvirtd starts it performs some sanity checks against
219# its own certificates.
220#
221# Default is to always run sanity checks. Uncommenting this
222# will disable sanity checks which is not a good idea
223#tls_no_sanity_certificate = 1
224
225# Flag to disable verification of client certificates
226#
227# Client certificate verification is the primary authentication mechanism.
228# Any client which does not present a certificate signed by the CA
229# will be rejected.
230#
231# Default is to always verify. Uncommenting this will disable
232# verification - make sure an IP whitelist is set
233#tls_no_verify_certificate = 1
234
235
236# A whitelist of allowed x509 Distinguished Names
237# This list may contain wildcards such as
238#
239#    "C=GB,ST=London,L=London,O=Red Hat,CN=*"
240#
241# See the POSIX fnmatch function for the format of the wildcards.
242#
243# NB If this is an empty list, no client can connect, so comment out
244# entirely rather than using empty list to disable these checks
245#
246# By default, no DN's are checked
247#tls_allowed_dn_list = ["DN1", "DN2"]
248
249
250# A whitelist of allowed SASL usernames. The format for usernames
251# depends on the SASL authentication mechanism. Kerberos usernames
252# look like username@REALM
253#
254# This list may contain wildcards such as
255#
256#    "*@EXAMPLE.COM"
257#
258# See the POSIX fnmatch function for the format of the wildcards.
259#
260# NB If this is an empty list, no client can connect, so comment out
261# entirely rather than using empty list to disable these checks
262#
263# By default, no Username's are checked
264#sasl_allowed_username_list = ["joe@EXAMPLE.COM", "fred@EXAMPLE.COM" ]
265
266
267
268#################################################################
269#
270# Processing controls
271#
272
273# The maximum number of concurrent client connections to allow
274# over all sockets combined.
275#max_clients = 5000
276
277# The maximum length of queue of connections waiting to be
278# accepted by the daemon. Note, that some protocols supporting
279# retransmission may obey this so that a later reattempt at
280# connection succeeds.
281#max_queued_clients = 1000
282
283# The maximum length of queue of accepted but not yet
284# authenticated clients. The default value is zero, meaning
285# the feature is disabled.
286#max_anonymous_clients = 20
287
288# The minimum limit sets the number of workers to start up
289# initially. If the number of active clients exceeds this,
290# then more threads are spawned, up to max_workers limit.
291# Typically you'd want max_workers to equal maximum number
292# of clients allowed
293#min_workers = 5
294#max_workers = 20
295
296
297# The number of priority workers. If all workers from above
298# pool are stuck, some calls marked as high priority
299# (notably domainDestroy) can be executed in this pool.
300#prio_workers = 5
301
302# Total global limit on concurrent RPC calls. Should be
303# at least as large as max_workers. Beyond this, RPC requests
304# will be read into memory and queued. This directly impacts
305# memory usage, currently each request requires 256 KB of
306# memory. So by default up to 5 MB of memory is used
307#
308# XXX this isn't actually enforced yet, only the per-client
309# limit is used so far
310#max_requests = 20
311
312# Limit on concurrent requests from a single client
313# connection. To avoid one client monopolizing the server
314# this should be a small fraction of the global max_requests
315# and max_workers parameter
316#max_client_requests = 5
317
318# Same processing controls, but this time for the admin interface.
319# For description of each option, be so kind to scroll few lines
320# upwards.
321
322#admin_min_workers = 1
323#admin_max_workers = 5
324#admin_max_clients = 5
325#admin_max_queued_clients = 5
326#admin_max_client_requests = 5
327
328#################################################################
329#
330# Logging controls
331#
332
333# Logging level: 4 errors, 3 warnings, 2 information, 1 debug
334# basically 1 will log everything possible
335# Note: Journald may employ rate limiting of the messages logged
336# and thus lock up the libvirt daemon. To use the debug level with
337# journald you have to specify it explicitly in 'log_outputs', otherwise
338# only information level messages will be logged.
339#log_level = 3
340
341# Logging filters:
342# A filter allows to select a different logging level for a given category
343# of logs
344# The format for a filter is one of:
345#    x:name
346#    x:+name
347
348#      where name is a string which is matched against the category
349#      given in the VIR_LOG_INIT() at the top of each libvirt source
350#      file, e.g., "remote", "qemu", or "util.json" (the name in the
351#      filter can be a substring of the full category name, in order
352#      to match multiple similar categories), the optional "+" prefix
353#      tells libvirt to log stack trace for each message matching
354#      name, and x is the minimal level where matching messages should
355#      be logged:
356
357#    1: DEBUG
358#    2: INFO
359#    3: WARNING
360#    4: ERROR
361#
362# Multiple filters can be defined in a single @filters, they just need to be
363# separated by spaces.
364#
365# e.g. to only get warning or errors from the remote layer and only errors
366# from the event layer:
367#log_filters="3:remote 4:event"
368
369# Logging outputs:
370# An output is one of the places to save logging information
371# The format for an output can be:
372#    x:stderr
373#      output goes to stderr
374#    x:syslog:name
375#      use syslog for the output and use the given name as the ident
376#    x:file:file_path
377#      output to a file, with the given filepath
378#    x:journald
379#      output to journald logging system
380# In all case the x prefix is the minimal level, acting as a filter
381#    1: DEBUG
382#    2: INFO
383#    3: WARNING
384#    4: ERROR
385#
386# Multiple outputs can be defined, they just need to be separated by spaces.
387# e.g. to log all warnings and errors to syslog under the libvirtd ident:
388#log_outputs="3:syslog:libvirtd"
389#
390
391# Log debug buffer size:
392#
393# This configuration option is no longer used, since the global
394# log buffer functionality has been removed. Please configure
395# suitable log_outputs/log_filters settings to obtain logs.
396#log_buffer_size = 64
397
398
399##################################################################
400#
401# Auditing
402#
403# This setting allows usage of the auditing subsystem to be altered:
404#
405#   audit_level == 0  -> disable all auditing
406#   audit_level == 1  -> enable auditing, only if enabled on host (default)
407#   audit_level == 2  -> enable auditing, and exit if disabled on host
408#
409#audit_level = 2
410#
411# If set to 1, then audit messages will also be sent
412# via libvirt logging infrastructure. Defaults to 0
413#
414#audit_logging = 1
415
416###################################################################
417# UUID of the host:
418# Provide the UUID of the host here in case the command
419# 'dmidecode -s system-uuid' does not provide a valid uuid. In case
420# 'dmidecode' does not provide a valid UUID and none is provided here, a
421# temporary UUID will be generated.
422# Keep the format of the example UUID below. UUID must not have all digits
423# be the same.
424
425# NB This default all-zeros UUID will not work. Replace
426# it with the output of the 'uuidgen' command and then
427# uncomment this entry
428#host_uuid = "00000000-0000-0000-0000-000000000000"
429
430###################################################################
431# Keepalive protocol:
432# This allows libvirtd to detect broken client connections or even
433# dead clients.  A keepalive message is sent to a client after
434# keepalive_interval seconds of inactivity to check if the client is
435# still responding; keepalive_count is a maximum number of keepalive
436# messages that are allowed to be sent to the client without getting
437# any response before the connection is considered broken.  In other
438# words, the connection is automatically closed approximately after
439# keepalive_interval * (keepalive_count + 1) seconds since the last
440# message received from the client.  If keepalive_interval is set to
441# -1, libvirtd will never send keepalive requests; however clients
442# can still send them and the daemon will send responses.  When
443# keepalive_count is set to 0, connections will be automatically
444# closed after keepalive_interval seconds of inactivity without
445# sending any keepalive messages.
446#
447#keepalive_interval = 5
448#keepalive_count = 5
449
450#
451# These configuration options are no longer used.  There is no way to
452# restrict such clients from connecting since they first need to
453# connect in order to ask for keepalive.
454#
455#keepalive_required = 1
456#admin_keepalive_required = 1
457
458# Keepalive settings for the admin interface
459#admin_keepalive_interval = 5
460#admin_keepalive_count = 5
Note: See TracBrowser for help on using the repository browser.