Skip to content

aarnaud/lxd-webui

Repository files navigation

LXD WebUI Build Status

Demo on http://aarnaud.github.io/lxd-webui/

Screenshot-details

Release builds

The release builds of static webapp is available on https://github.com/aarnaud/lxd-webui/releases

Build from sources

Follow the instructions in this link

Configuration on LXD

Allow LXD to listen on 8443 port

lxc config set core.https_address [::]:8443

Add CORS settings on LXD (Since LXD 2.0.0.rc2)

lxc config set core.https_allowed_origin "*" # SECURITY WARNING: prefer to restrict with lxd-webui url 
lxc config set core.https_allowed_methods "GET, POST, PUT, DELETE, OPTIONS"
lxc config set core.https_allowed_headers "Content-Type"
sudo service lxd restart # sometimes is required

Accept self-sign server certificate

Go on LXD server url (example: https://127.0.0.1:8443) with your browser.

Generate x509 certificate for browser authentification

  • Generate a client private key
openssl genrsa -out lxd-webui.key 4096
  • Generate a certificate request (csr)
openssl req -new -key lxd-webui.key -out lxd-webui.csr
  • Generate an auto-sign certificate
openssl x509 -req -days 3650 -in lxd-webui.csr -signkey lxd-webui.key -out lxd-webui.crt
  • Export keys to pkcs12 for use in browers
openssl pkcs12 -keypbe PBE-SHA1-3DES -certpbe PBE-SHA1-3DES -export -in lxd-webui.crt -inkey lxd-webui.key -out lxd-webui.pfx -name "LXD WebUI"
lxc config trust add lxd-webui.crt