LEIA
Vzdálená zabezpečená správa serverů
Základní popis systému vzdálené správy LEIA
Instalace systému leia se skládá ze čtyřech základních komponent - serveru "LEIA Admin", komunikacní brány "LEIA Gateway", služby vzdálené správy na cílovém počítači/serveru "LEIA Remote" a klientské terminálové aplikace "LTC".
Instalace
Před začátkem instalace je nuzné nejprve vytvořit certifikační autoritu řetěz certifikátů s pomocí příloženého nástroje. Nejprve pomocí příkazu "leia-ca create ca" vztvoříte vlastní novou certifikační autoritu - její privátní klíč je nutné uchovat v tajnosti! Následně příkazem "leia-ca create server example.com" vytvoříte certifikáty pro služby "LEIA Admin" a "LEIA Gateway". DNS názvy zvolené pro zmíněné služby musí být v době vytváření certifikátů již dostupné!
LEIA CA
Nástroj "LEIA CA" nainstalujte na zabezpečený počítač který bude sloužit pro generování TLS certifikátů pro zajištění šifrované komunikace jenotlivých komponent systému LEIA. Certifikáty se vytvárí v adresáři "certs" který se vytvoří v místě kde je spouštěn příkaz "leia-ca".
Download: https://download.digitaldata.cz/leia/leia-ca.zip
leia-ca create ca
leia-ca create server leia-admin.example.com
leia-ca create server leia-gateway.example.com
Červeně označené položky je nutné upravid podle Vašich místních požadavků a podmínek.
LEIA Admin
Služba je distribuována jako Docker kontejner a jeho jedinou externí závislostí je připojení na PostgreSQL nebo CockroachDB databázi. LEIA Admin slouží jako autorizační API a webové rozhraní pro administraci. Služba musí být dostupná z LEIA Gateway, ale nemusí být dostupná uživatelům. Před spustěním je nutné nahrát do adresáře /opt/leia/certs potřebné certifikáty (ca.crt, server.crt a server.key) vygenerované v předchozím kroku pomocí "leia-ca".
docker run \
--env LEIA_JWT_SECRET=qE8bP3eL7wM0xN4x \
--env LEIA_JWT_EXPIRE=1440 \
--env LEIA_JWT_EXPIRE_ADMIN=60 \
--env LEIA_SQL_HOST=192.168.0.1 \
--env LEIA_SQL_PORT=5432 \
--env LEIA_SQL_DATABASE=leiadb \
--env LEIA_SQL_USER=leia \
--env LEIA_SQL_PASSWORD=vQ8oB7eQ7xR4tG7l \
--detach \
--name leia-admin \
--restart always \
--mount type=bind,source=/opt/leia/certs,target=/certs \
-p 35001:35001 \
digitaldata/leia-admin:latest
Červeně označené položky je nutné upravit podle Vašich místních požadavků a podmínek.
Popis parametrů:
LEIA_JWT_SECRET - heslo kterým jsou šifrovány JWT tokeny. V případě více admin serverů musí být stejné. Při změně dojde k automatickému odhlášení všech uživatelů.
LEIA_JWT_EXPIRE - platnost JWT tokenů uživatelů (v minutách)
LEIA_JWT_EXPIRE_ADMIN - platnost JWT tokenů administrátorů (v minutách)
LEIA_SQL_HOST - adresa/jméno SQL serveru
LEIA_SQL_PORT - TCP port na kterém je SQL server
LEIA_SQL_DATABASE - jméno SQL databáze
LEIA_SQL_USER - uživatelské jméno na SQL serveru
LEIA_SQL_PASSWORD - heslo na SQL serveru
První spuštění:
Při prvním spuštění dojde automaticky k založení všech nezbytných objektů v SQL databázi (tabulky, indexy, vzdálené klíče, sekvence, ...). Databáze je po založení prázdná a je potřeba založit účet prvního administrátora následujícím způsobem (bude založen s výchozím heslem "admin"):
docker run
--env LEIA_SQL_HOST=192.168.0.1 \
--env LEIA_SQL_PORT=5432 \
--env LEIA_SQL_DATABASE=leiadb \
--env LEIA_SQL_USER=leia \
--env LEIA_SQL_PASSWORD=vQ8oB7eQ7xR4tG7l \
--rm -it \
digitaldata/leia-admin:latest init admin@example.com
LEIA Gateway
Služba je distribuována jako Docker kontejner a je bez externích závislostí. LEIA Gateway slouží jako brána na kterou se připojují uživatelé (LTC) a vzdálené počítače/servery (LEIA Remote). Služba musí být dostupná uživatelům a vzdálenám serverům. Před spustěním je nutné nahrát do adresáře /opt/leia/certs potřebné certifikáty (ca.crt, server.crt a server.key) vygenerované v předchozím kroku pomocí "leia-ca".
docker run \
--env LEIA_ADMIN=leia-admin.example.com:35001 \
--detach \
--name leia-gateway \
--restart always \
--mount type=bind,source=/opt/leia/certs,target=/certs \
-p 443:443 \
digitaldata/leia-gateway:latest
Červeně označené položky je nutné upravit podle Vašich místních požadavků a podmínek.
Popis parametrů:
LEIA_ADMIN - jméno a port na kterém běží LEIA Admin. Jméno se musí shodovat se jménem v TLS certifikátu.
LEIA Remote
LEIA Remote slouží jako obslužná aplikace na vzdáleném počítači/serveru a zajišťuje přihlášení uživatelů.
Download:
Linux x86_64: https://download.digitaldata.cz/leia/leia-remote-linux-amd64.zip
Linux ARM:
Linux ARM64:
FreeBSD AMD64:
MacOS Intel:
MacOS M1:
/opt/leia/bin/leia-remote register GROUP_TOKEN
LTC
LTC - LEIA Terminal Client je klientská aplikace zajištující připojení ke vzdálenému terminálu. Před prvím použitím je nutné nejprve vygenerovat konfiguraci příkazem "ltc init" a vyplněním adresy alespoň jednoho GW serveru. Následně se může uživatel přihlásit příkazem "ltc login" a zadáním jména a hesla.
Zjištění seznamu kam může uživatel přistupovat: "ltc get server"
Přihlášení na vzdálený server: "ltc login skupina/server"
Download:
Linux x86_64: https://download.digitaldata.cz/leia/ltc_v0.1_linux_amd64.tgz
Linux ARM:
Linux ARM64:
MacOS Intel: https://download.digitaldata.cz/leia/ltc_v0.1_darwin_amd64.tgz
MacOS M1: https://download.digitaldata.cz/leia/ltc_v0.1_darwin_arm64.tgz
Windows Intel 32bit:
Windows intel 64bit: https://download.digitaldata.cz/leia/ltc_v0.1_windows_amd64.zip
Windows ARM64: