Инструменты пользователя

Инструменты сайта


libvirt:libvirt

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
libvirt:libvirt [2019-02-13 12:59]
GreyWolf создано
libvirt:libvirt [2020-08-28 12:33] (текущий)
GreyWolf [Настройка клиента]
Строка 1: Строка 1:
 ====== libvirt ====== ====== libvirt ======
  
-{{:​libvirt:​logo-banner-dark-800.png?​300|}}+{{:​libvirt:​logo-banner-dark-800.png?​350|}}
  
-libvirt — свободная реализация API, демон и набор инструментов для управления виртуализацией. Позволяет управлять гипервизорами [[xen:​xen|Xen]],​ [[kernel-based_virtual_machine:​kernel-based_virtual_machine|KVM]],​ а также VirtualBox, OpenVZ, LXC, VMware ESX/​GSX/​Workstation/​Player,​ [[qemu:​qemu|QEMU]] и другими средствами виртуализации,​ предоставляет возможность контролировать виртуальные машины по сети, расположенные на других компьютерах. Эти API широко используются в слоях гипервизоров при разработке облачных решений. ​+libvirt — свободная реализация API, демон и набор инструментов для управления виртуализацией. Позволяет управлять гипервизорами [[xen:​xen|Xen]],​ [[kernel-based_virtual_machine:​kernel-based_virtual_machine|KVM]],​ а также ​[[virtualbox:​virtualbox|VirtualBox]], OpenVZ, LXC, [[vmware:​vmware|VMware]] ESX/​GSX/​Workstation/​Player,​ [[qemu:​qemu|QEMU]] и другими средствами виртуализации,​ предоставляет возможность контролировать виртуальные машины по сети, расположенные на других компьютерах. Эти API широко используются в слоях гипервизоров при разработке облачных решений. ​
  
 https://​libvirt.org/​ https://​libvirt.org/​
 +
 +
 +----
 +
 +FIXME
 +
 +[[https://​wiki.libvirt.org/​page/​TLSSetup|TLSSetup - Libvirt Wiki]]
 +
 +[[https://​libvirt.org/​remote.html|libvirt:​ Remote support]]
 +
 +[[http://​umvirt.ru/​node/​114|Подключаемся к Libvirt, SPICE и VNC через TLS/SSL | umVirt.Ru]]
 +
 +====== TLS ======
 +FIXME
 +
 +[[xca:​libvrt|XCA — libvrt]]
 +
 +Стандартный вариант создания ключей и сертификатов для работы по TLS [[libvirt:​tls|libvrt — TLS]]
 +
 +===== Файлы =====
 +
 +  * ''​[[#​cakey.pem]]''​
 +
 +Сервер
 +  * ''​[[#​cacert.pem]]''​
 +  * ''​[[#​serverkey.pem]]''​
 +  * ''​[[#​servercert.pem]]''​
 +
 +Клиент
 +  * ''​[[#​cacert.pem]]''​
 +  * ''​[[#​clientkey.pem]]''​
 +  * ''​[[#​clientcert.pem]]''​
 +
 +==== cakey.pem ====
 +Ключ центра сертификации,​ он должен храниться в надёжном месте.
 +
 +Его нельзя хранить на серверах и клиентах!
 +
 +==== cacert.pem ====
 +Сертификат центра сертификации
 +
 +==== serverkey.pem ====
 +Ключ сервера
 +
 +==== servercert.pem ====
 +Сертификат сервера
 +
 +
 +==== clientkey.pem ====
 +Ключ клиента
 +
 +==== clientcert.pem ====
 +Сертификат клиента
 +
 +
 +===== Настройка клиента ​ =====
 +{{anchor:​tlsclient}}
 +
 +Копирование файлов клиента
 +<code bash pki-libvirt_client.sh>​
 +#!/bin/bash
 +
 +mkdir -p /​etc/​pki/​libvirt/​private/​
 +mkdir -p /​etc/​pki/​CA/​
 +
 +cp libvrt-ca.crt /​etc/​pki/​CA/​cacert.pem
 +cp libvrt-user.crt /​etc/​pki/​libvirt/​clientcert.pem
 +cp libvrt-user.pem /​etc/​pki/​libvirt/​private/​clientkey.pem
 +
 +chgrp libvirt /​etc/​pki/​CA/​cacert.pem
 +chgrp libvirt /​etc/​pki/​libvirt/​clientcert.pem
 +chgrp libvirt /​etc/​pki/​libvirt/​private/​clientkey.pem
 +
 +</​code>​
 +
 +===== Настройка сервера =====
 +{{anchor:​tlsserver}}
 +Копирование файлов на сервере
 +<code bash pki-libvirt_server.sh>​
 +#!/bin/bash
 +mkdir -p /​etc/​pki/​libvirt/​private/​
 +mkdir -p /​etc/​pki/​CA/​
 +
 +cp libvrt-ca.crt /​etc/​pki/​CA/​cacert.pem
 +cp libvrt-server.crt /​etc/​pki/​libvirt/​servercert.pem
 +cp libvrt-server.pem /​etc/​pki/​libvirt/​private/​serverkey.pem
 +cp libvrt-crl.pem /​etc/​pki/​CA/​crl.pem
 +</​code>​
 +
 +==== libvirtd для TLS ====
 +{{anchor:​tlslibvirtd}}
 +
 +Здесь описан процесс настройки демона ''​libvirtd''​ для работы по TLS
 +
 +  - Нужно исправить файл запуска демона:<​code ini /​etc/​default/​libvirtd>​libvirtd_opts="​-l"</​code>​
 +  - Внести изменения в файл настройки,​ минимальные изменения:​ <code ini /​etc/​libvirt/​libvirtd.conf>​
 +listen_tls = 1
 +listen_tcp = 1
 +</​code>​ или изменения включающие настройку сертификатов,​ ключей и списка отзыва сертификатов:​ <code ini /​etc/​libvirt/​libvirtd.conf>​
 +listen_tls = 1
 +listen_tcp = 1
 +key_file = "/​etc/​pki/​libvirt/​private/​serverkey.pem"​
 +cert_file = "/​etc/​pki/​libvirt/​servercert.pem"​
 +ca_file = "/​etc/​pki/​CA/​cacert.pem"​
 +crl_file = "/​etc/​pki/​CA/​crl.pem"​
 +</​code>​
 +  - Выполнить перезапуск демона:​ <code bash>​service libvirtd restart</​code>​ :!: При перезапуске демона ''​libvirtd''​ гостевые домены (виртуальные машины) **будут работать**! ([[https://​wiki.libvirt.org/​page/​FAQ#​Will_restarting_the_libvirt_daemon_stop_my_virtual_machines.3F|FAQ - Libvirt Wiki — 1.2.5 Will restarting the libvirt daemon stop my virtual machines?​]])
 +  - Проверка:​ <code bash>​netstat -lntp | grep libvirtd</​code>​ Пример вывода:​ <​code>​
 +tcp        0      0 0.0.0.0:​16509 ​          ​0.0.0.0:​* ​              ​LISTEN ​     5594/​libvirtd ​      
 +tcp        0      0 0.0.0.0:​16514 ​          ​0.0.0.0:​* ​              ​LISTEN ​     5594/​libvirtd ​      
 +tcp6       ​0 ​     0 :::​16509 ​               :::*                    LISTEN ​     5594/​libvirtd ​      
 +tcp6       ​0 ​     0 :::​16514 ​               :::*                    LISTEN ​     5594/​libvirtd
 +</​code>​
 +
  
 ====== Ссылки ====== ====== Ссылки ======
libvirt/libvirt.1550051959.txt.gz · Последние изменения: 2019-02-13 12:59 — GreyWolf