Inštalácia HTML5 Gateway Docker¶
Import obrazu Docker¶
Skôr ako budete môcť vytvoriť kontajner HTML5 Gateway Docker, musíte importovať obraz Docker. Na tento účel otvorte prostredie shell, v ktorom máte k dispozícii príkazy Docker, ako aj súbor cleanroom-html5-4.6.1-33-v2.tgz. V prostredí shell spustite nasledujúci príkaz a upravte cestu k súboru TGZ, ak sa nenachádza v aktuálnom adresári:
1 | |
Potom pomocou nasledujúceho príkazu overte, či bol import úspešný:
1 | |
Očakávaný výstup je nasledujúci. Ak to tak nie je, import zlyhal:
1 2 3 4 5 6 | |
Úplný výstup
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 | |
Konfigurácia kontajnera¶
Premenné prostredia¶
Premenné pre nasadenie pomocou pairingu¶
| Názov | Povinné | Predvolená hodnota | Komentár |
|---|---|---|---|
ENV_MEDIATION |
ÁNO | Používa sa pri pripojení pomocou pairingu. Uvádza názov DNS alebo IP adresu na pripojenie k webovému rozhraniu platformy CyberElements Bastion. |
|
ENV_TOKEN |
ÁNO | Používa sa na pripojenie pomocou pairingu. Označenie tokenu pairingu, ktorý sa má použiť na pripojenie k službe Mediation Controller. |
|
ENV_NO_CHECK_CERT |
NIE | false |
Používa sa pri pripojeniach pomocou pairingu. Určuje, či sa má zakázať kontrola webového certifikátu služby Mediation Controller; užitočné pri CyberElements Bastion, keď sa pristupuje cez IP adresu alebo keď webový certifikát nie je certifikátom uznávaným predvolenými verejnými certifikačnými autoritami. Akceptované hodnoty: true alebo false. |
Premenné pre manuálne nasadenie¶
| Názov | Povinné | Predvolená hodnota | Komentár |
|---|---|---|---|
ENV_GW_CERT_NAME |
ÁNO | Používa sa na pripojenie s manuálnou konfiguráciou. Názov súboru certifikátu na pripojenie k serveru SSL Router. |
|
ENV_GW_CERT_PASSWORD |
ÁNO | Používa sa na pripojenie s manuálnou konfiguráciou. Heslo súboru certifikátu na pripojenie k serveru SSL Router. |
|
ENV_SSL_ROUTER_IP |
ÁNO | Používa sa pri pripojení s manuálnou konfiguráciou. IP adresa alebo názov DNS komponentu SSL Router, ku ktorému sa pripojí HTML5 Gateway. |
|
ENV_SSL_ROUTER_PORT |
NIE | 443 |
Používa sa pri pripojení s manuálnou konfiguráciou. Port komponentu SSL Router, ku ktorému sa pripojí HTML5 Gateway. |
Rôzne premenné¶
| Názov | Povinné | Predvolená hodnota | Komentár |
|---|---|---|---|
ENV_DISABLE_RSYSLOG |
NIE | false |
Deaktivácia služby rsyslog.Akceptované hodnoty: true alebo false. |
Zväzky¶
| Zväzok | Komentár |
|---|---|
/etc/ipdiva/ |
Konfiguračný zväzok komponentu HTML5 Gateway. Odporúčame ho pripojiť k pomenovanému zväzku alebo do systému súborov hostiteľského počítača. |
/opt/certificates/ |
Zväzok obsahujúci certifikát alebo certifikáty komponentu HTML5 Gateway pri konfigurácii bez pairingu. |
/var/log/ |
Zväzok obsahujúci logy komponentu HTML5 Gateway. |
Porty¶
| Port | Komentár |
|---|---|
8080 |
Port, na ktorom počúva služba HTML5. |
Nasadenie HTML5 Gateway Docker¶
Nasadenie pomocou pairingu¶
Predpoklady
Pred nasadením HTML5 Gateway Docker musíte získať token pairingu.
Nižšie opísané nasadenie použije všetky dostupné zväzky (okrem /opt/certificates/, ktorý v tomto kontexte nie je užitočný) a sprístupní všetky porty.
Zväzky sa pripoja do systému súborov hostiteľského počítača v umiestnení HTML5_GATEWAY_REP. V tomto umiestnení sa nachádzajú nasledujúce podadresáre:
- config
- log
Premenné pre nasledujúce príkazy môžete prispôsobiť:
| Vlastná hodnota | Premenná | Komentár |
|---|---|---|
DOCKER_NAME |
Názov kontajnera Docker. | |
HTML5_GATEWAY_REP |
Umiestnenie v systéme súborov, kam sa pripoja zväzky. | |
ENV_MEDIATION_VALUE |
Hodnota premennej prostredia ENV_MEDIATION. |
|
ENV_TOKEN_VALUE |
Hodnota premennej prostredia ENV_TOKEN. |
|
ENV_NO_CHECK_CERT_VALUE |
Hodnota premennej prostredia ENV_NO_CHECK_CERT. |
Vytvorte stromovú štruktúru adresárov potrebnú na pripojenie zväzkov v systéme súborov:
1 2 | |
1 | |
A nakoniec spustite nový kontajner:
1 2 3 4 5 6 7 8 | |
1 2 3 4 5 6 7 8 | |
Logy kontajnera môžete zobraziť pomocou nasledujúceho príkazu:
1 | |
Manuálne nasadenie¶
Predpoklady
Pred nasadením HTML5 Gateway Docker musíte mať certifikát vyžadovaný pre HTML5 Gateway.
Heslá viditeľné pomocou docker inspect
Premenné prostredia kontajnera vrátane hesiel certifikátov zostávajú čitateľné pre každého, kto smie spúšťať docker inspect na serveri Docker. Preto uprednostnite nasadenie s pairingom, ktoré nepoužíva žiadne heslo certifikátu.
Nasadenie opísané nižšie použije všetky dostupné zväzky a sprístupní všetky porty.
Zväzky sa pripoja do systému súborov hostiteľského počítača v umiestnení MANUAL_REP. V tomto umiestnení sa nachádzajú tieto podadresáre:
- config
- log
- certificates
Premenné pre nasledujúce príkazy môžete prispôsobiť:
| Vlastná hodnota | Premenná | Komentár |
|---|---|---|
MANUAL_NAME |
Názov kontajnera Docker. | |
MANUAL_REP |
Umiestnenie v systéme súborov, kam sa pripoja zväzky. | |
ENV_GW_CERT_NAME_VALUE |
Hodnota premennej prostredia ENV_GW_CERT_NAME. |
|
ENV_SSL_ROUTER_IP_VALUE |
Hodnota premennej prostredia ENV_SSL_ROUTER_IP. |
|
ENV_SSL_ROUTER_PORT_VALUE |
Hodnota premennej prostredia ENV_SSL_ROUTER_PORT. |
Vytvorte stromovú štruktúru adresárov potrebnú na pripojenie zväzkov v systéme súborov:
1 2 3 | |
1 | |
Potom umiestnite certifikáty pre HTML5 Gateway a službu nahrávania do MANUAL_REP/certificates.
Aby sa heslá certifikátov neuchovávali v histórii shellu, zadajte ich do premenných prostredia aktuálnej relácie (zadávaný text sa nezobrazuje):
1 2 | |
1 | |
Nakoniec spustite nový kontajner:
1 2 3 4 5 6 7 8 9 10 | |
1 2 3 4 5 6 7 8 9 10 | |
Po spustení kontajnera odoberte tieto premenné z relácie:
1 | |
1 | |
Logy kontajnera môžete zobraziť pomocou nasledujúceho príkazu:
1 | |
Konfigurácia služby Mediation Controller¶
Aby bol nový HTML5 Gateway Docker funkčný, treba ešte nakonfigurovať server Mediation Controller cez SSH alebo prístup ku konzole s povoleniami root.
Toto posledné nastavenie je potrebné, aby mohla služba Mediation Controller komunikovať so službou HTML5.
Táto konfigurácia sa však líši v závislosti od umiestnenia HTML5 Gateway Docker:
Celková schéma je takáto:
flowchart LR
subgraph DMZ
direction TB
HTML5(HTML5 Gateway Docker)
MED(Mediation Controller)
end
subgraph LAN
GW(Edge Gateway)
end
MED -.-> |Pripojenie k službe HTML5 ; TCP 8080| HTML5
HTML5 --> |TLS Tunnel| MED
MED ~~~ GW
GW --> |TLS Tunnel| MED
GW ~~~ MED
linkStyle 0 stroke:#d22,color;
V tomto kontexte bude potrebné pridať informácie uvedené nižšie do súboru /etc/ipdiva/httpd/commonParameters.extra.conf alebo tento súbor vytvoriť.
Nastavenia možno prispôsobiť:
| Vlastná hodnota | Premenná | Komentár |
|---|---|---|
HTML5_URL_DMZ |
Adresa URL nakonfigurovaná pri deklarovaní komponentu HTML5 Gateway v konzole na správu. | |
HTML5_IP_DMZ |
Názov DNS alebo IP adresa servera Docker, na ktorom je aktívny HTML5 Gateway Docker. | |
HTML5_PORT_DMZ |
Port publikovaný serverom Docker pre HTML5 Gateway Docker. |
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
Celková schéma je takáto:
flowchart LR
subgraph DMZ
direction TB
MED(Mediation Controller)
end
subgraph LAN
HTML5(HTML5 Gateway Docker)
GW(Edge Gateway)
end
MED -.- | Pripojenie k službe HTML5 ; cez tunel TLS| GW -.-> |Pripojenie k službe HTML5 ; TCP 8080| HTML5
HTML5 --> |TLS Tunnel| MED
GW --> |TLS Tunnel| MED
linkStyle 0,1 stroke:#d22,color;
V tomto kontexte bude potrebné pridať informácie uvedené nižšie do súboru /etc/ipdiva/httpd/commonParameters.extra.conf alebo tento súbor vytvoriť.
Nastavenia možno prispôsobiť:
| Vlastná hodnota | Premenná | Komentár |
|---|---|---|
HTML5_URL_LAN |
Adresa URL nakonfigurovaná pri deklarovaní komponentu HTML5 Gateway v konzole na správu. | |
GW_NAME_LAN |
Názov komponentu Edge Gateway použitého na pripojenie k službe HTML5. Znak zvislej čiary na konci riadka sa musí zachovať. | |
ORGANIZATION_NAME_LAN |
Názov organizácie, ku ktorej sa Edge Gateway pripája. | |
HTML5_IP_LAN |
Názov DNS alebo IP adresa servera Docker, na ktorom je aktívny HTML5 Gateway Docker. | |
HTML5_PORT_LAN |
Port publikovaný serverom Docker pre HTML5 Gateway Docker. |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | |
Tip
Túto konfiguráciu možno použiť aj v nasledujúcej situácii, keď komponenty Edge Gateway a HTML5 Gateway v kontajneroch Docker bežia v rovnakej sieti Docker:
flowchart LR
subgraph DMZ
direction TB
MED(Mediation Controller)
end
subgraph LAN
subgraph docker[Docker Server]
HTML5([HTML5 Gateway Docker])
GW([Edge Gateway])
end
end
MED -.- | Pripojenie k službe HTML5 ; cez tunel TLS| GW -.-> |Pripojenie k službe HTML5 ; TCP 8080 cez sieť Docker| HTML5
HTML5 --> |TLS Tunnel| MED
GW --> |TLS Tunnel| MED
linkStyle 0,1 stroke:#d22,color;
Príklad
V tomto príklade nasadíme Edge Gateway a HTML5 Gateway na rovnaký server Docker.
Infraštruktúra použitá v príklade je takáto:
- Server Mediation Controller
- Webová IP adresa:
10.0.10.10 - Názov organizácie:
my-organization-name - Token pre Edge Gateway:
YJ5N-JN05-N5LS-N26H-7JHA-HZ9R-BGJF-MAVH - Token pre HTML5 Gateway:
ATCW-OMVR-0RY4-LW1M-D9G9-H5VF-WPX5-YCXF - Adresa URL na prístup k službe HTML5:
HTML5_DOCKER
- Webová IP adresa:
- Server Docker
- Názov siete Docker:
cyberelements-cleanroom-network - Edge Gateway
- Názov:
my-edge-gateway-docker - Koreňové umiestnenie v systéme súborov:
/opt/my-edge-gateway-docker
- Názov:
- HTML5 Gateway
- Názov:
my-html5-gateway-docker - Koreňové umiestnenie v systéme súborov:
/opt/my-html5-gateway-docker
- Názov:
- Názov siete Docker:
Najprv musíte na serveri Docker vytvoriť adresárovú štruktúru na pripojenie zväzkov Docker:
1 2 3 4 5 6 | |
Potom vytvorte sieť Docker typu bridge, aby spolu mohli oba kontajnery komunikovať:
1 | |
Ďalej spustite kontajner Edge Gateway. Upozorňujeme, že v príklade sa pripojenie nadväzuje pomocou pairingu s prístupom k serveru Mediation Controller cez jeho IP adresu a bez pridanej kontroly certifikátu. Okrem toho sa pridáva parameter --network, ktorý určuje použitie predtým vytvorenej siete Docker:
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
Ďalej spustite kontajner HTML5 Gateway. Upozorňujeme, že v príklade sa pripojenie nadväzuje pomocou pairingu s prístupom k serveru Mediation Controller cez jeho IP adresu a bez pridanej kontroly certifikátu. Okrem toho sa pridáva parameter --network, ktorý určuje použitie predtým vytvorenej siete Docker, a keďže prístup k službe HTML5 bude prechádzať cez sieť Docker, publikovanie portu 8080 nie je potrebné:
1 2 3 4 5 6 7 8 | |
Nakoniec treba nakonfigurovať súbor /etc/ipdiva/httpd/commonParameters.extra.conf na serveri alebo serveroch Mediation Controller. Treba pridať nasledujúci blok:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | |
Pred použitím nových nastavení musíte skontrolovať, či nová konfigurácia nespôsobuje žiadne blokujúce chyby webového servera Apache2.
Ak to chcete urobiť, spustite nasledujúci príkaz:
1 | |
Ak je výsledkom Syntax OK, zmeny možno použiť príkazom nižšie. V opačnom prípade skontrolujte konfiguráciu svojho súboru /etc/ipdiva/httpd/commonParameters.extra.conf.
1 | |