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:


/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: