Installere HTML5 Gateway Docker¶
Import av Docker-imaget¶
Før du kan opprette en HTML5 Gateway Docker-container, må du importere Docker-imaget. Start derfor et shell der Docker-kommandoene er tilgjengelige for deg, sammen med filen cleanroom-html5-4.6.1-33-v2.tgz. Kjør følgende kommando fra shellet, og tilpass banen til TGZ-filen hvis den ikke ligger i den gjeldende katalogen:
1 | |
Kontroller deretter at importen var vellykket med følgende kommando:
1 | |
Forventet utdata er som følger. Hvis det ikke er tilfellet, har importen mislyktes:
1 2 3 4 5 6 | |
Fullstendig utdata
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 | |
Konfigurasjon av containeren¶
Miljøvariabler¶
Variabler for utrulling med pairing¶
| Navn | Obligatorisk | Standardverdi | Kommentar |
|---|---|---|---|
ENV_MEDIATION |
JA | Brukes for tilkobling med pairing. Angir DNS-navnet eller IP-adressen for tilkobling til webgrensesnittet til en CyberElements Bastion-plattform. |
|
ENV_TOKEN |
JA | Brukes for tilkobling med pairing. Angir pairing-tokenet som skal brukes for tilkobling til Mediation Controller. |
|
ENV_NO_CHECK_CERT |
NEI | false |
Brukes for tilkoblinger med pairing. Deaktiverer kontrollen av web-sertifikatet til Mediation Controller eller ikke; nyttig med CyberElements Bastion når tilgangen skjer via IP-adresse, eller når web-sertifikatet ikke er et sertifikat som er anerkjent av de offentlige standardsertifiseringsinstansene. Godtatte verdier: true eller false. |
Variabler for manuell utrulling¶
| Navn | Obligatorisk | Standardverdi | Kommentar |
|---|---|---|---|
ENV_GW_CERT_NAME |
JA | Brukes for tilkobling med manuell konfigurasjon. Navnet på sertifikatfilen for tilkobling til SSL Router. |
|
ENV_GW_CERT_PASSWORD |
JA | Brukes for tilkobling med manuell konfigurasjon. Passordet til sertifikatfilen for tilkobling til SSL Router. |
|
ENV_SSL_ROUTER_IP |
JA | Brukes for tilkobling med manuell konfigurasjon. IP-adresse eller DNS-navn til SSL Router som HTML5 Gateway skal koble til. |
|
ENV_SSL_ROUTER_PORT |
NEI | 443 |
Brukes for tilkobling med manuell konfigurasjon. Port på SSL Router som HTML5 Gateway skal koble til. |
Diverse variabler¶
| Navn | Obligatorisk | Standardverdi | Kommentar |
|---|---|---|---|
ENV_DISABLE_RSYSLOG |
NEI | false |
Deaktivering av tjenesten rsyslog.Godtatte verdier: true eller false. |
Volumer¶
| Volum | Kommentar |
|---|---|
/etc/ipdiva/ |
Konfigurasjonsvolum for HTML5 Gateway. Vi anbefaler å montere det på et navngitt volum eller på filsystemet til vertsmaskinen. |
/opt/certificates/ |
Volum som inneholder sertifikatet eller sertifikatene til HTML5 Gateway ved konfigurasjon uten pairing. |
/var/log/ |
Volum som inneholder loggene til HTML5 Gateway. |
Porter¶
| Port | Kommentar |
|---|---|
8080 |
Lytteport for HTML5-tjenesten. |
Utrulling av HTML5 Gateway Docker¶
Utrulling med pairing¶
Forutsetninger
Før du ruller ut HTML5 Gateway Docker, må du hente et pairing-token.
Utrullingen som beskrives nedenfor, bruker alle tilgjengelige volumer (bortsett fra /opt/certificates/, som ikke er til nytte i denne sammenhengen) og eksponerer alle porter.
Volumene monteres på filsystemet til vertsmaskinen på plasseringen HTML5_GATEWAY_REP. Inne i denne plasseringen finnes følgende underkataloger:
- config
- log
Du kan tilpasse variablene for følgende kommandoer:
| Tilpasset verdi | Variabel | Kommentar |
|---|---|---|
DOCKER_NAME |
Navnet på Docker-containeren. | |
HTML5_GATEWAY_REP |
Plassering i filsystemet der volumene monteres. | |
ENV_MEDIATION_VALUE |
Verdien til miljøvariabelen ENV_MEDIATION. |
|
ENV_TOKEN_VALUE |
Verdien til miljøvariabelen ENV_TOKEN. |
|
ENV_NO_CHECK_CERT_VALUE |
Verdien til miljøvariabelen ENV_NO_CHECK_CERT. |
Opprett katalogstrukturen som kreves for å montere volumene i filsystemet:
1 2 | |
1 | |
Og til slutt starter du en ny container:
1 2 3 4 5 6 7 8 | |
1 2 3 4 5 6 7 8 | |
Loggene til containeren kan vises med følgende kommando:
1 | |
Manuell utrulling¶
Forutsetninger
Før du ruller ut HTML5 Gateway Docker, må du ha sertifikatet som HTML5 Gateway krever.
Passord er synlige med docker inspect
Miljøvariablene i en container, inkludert sertifikatpassordene, kan fortsatt leses av alle som har lov til å kjøre docker inspect på Docker-serveren. Derfor bør utrulling med pairing, som ikke bruker noe sertifikatpassord, foretrekkes.
Utrullingen som beskrives nedenfor, bruker alle tilgjengelige volumer og eksponerer alle porter.
Volumene monteres i filsystemet til vertsmaskinen på plasseringen MANUAL_REP. Inne i denne plasseringen finnes følgende underkataloger:
- config
- log
- certificates
Du kan tilpasse variablene for følgende kommandoer:
| Tilpasset verdi | Variabel | Kommentar |
|---|---|---|
MANUAL_NAME |
Navnet på Docker-containeren. | |
MANUAL_REP |
Plassering i filsystemet der volumene skal monteres. | |
ENV_GW_CERT_NAME_VALUE |
Verdien til miljøvariabelen ENV_GW_CERT_NAME. |
|
ENV_SSL_ROUTER_IP_VALUE |
Verdien til miljøvariabelen ENV_SSL_ROUTER_IP. |
|
ENV_SSL_ROUTER_PORT_VALUE |
Verdien til miljøvariabelen ENV_SSL_ROUTER_PORT. |
Opprett katalogstrukturen som kreves for å montere volumene i filsystemet:
1 2 3 | |
1 | |
Legg deretter sertifikatene til HTML5 Gateway og til opptakstjenesten i MANUAL_REP/certificates.
Skriv inn sertifikatpassordene i miljøvariabler i den gjeldende økten, slik at de ikke blir liggende i shell-historikken (det du skriver inn, vises ikke):
1 2 | |
1 | |
Start til slutt en ny container:
1 2 3 4 5 6 7 8 9 10 | |
1 2 3 4 5 6 7 8 9 10 | |
Fjern disse variablene fra økten når containeren har startet:
1 | |
1 | |
Loggene til containeren kan vises med følgende kommando:
1 | |
Konfigurasjon av Mediation Controller¶
For at den nye HTML5 Gateway Docker skal være i drift, må Mediation Controller-serveren fortsatt konfigureres via SSH- eller konsolltilgang med root-rettigheter.
Denne siste innstillingen kreves for at Mediation Controller skal kunne kommunisere med HTML5-tjenesten.
Denne konfigurasjonen varierer imidlertid avhengig av hvor HTML5 Gateway Docker er plassert:
Det overordnede diagrammet er som følger:
flowchart LR
subgraph DMZ
direction TB
HTML5(HTML5 Gateway Docker)
MED(Mediation Controller)
end
subgraph LAN
GW(Edge Gateway)
end
MED -.-> |Tilkobling til HTML5-tjenesten ; TCP 8080| HTML5
HTML5 --> |TLS Tunnel| MED
MED ~~~ GW
GW --> |TLS Tunnel| MED
GW ~~~ MED
linkStyle 0 stroke:#d22,color;
I denne sammenhengen må informasjonen nedenfor legges til i filen /etc/ipdiva/httpd/commonParameters.extra.conf, eller filen må opprettes.
Innstillingene kan tilpasses:
| Tilpasset verdi | Variabel | Kommentar |
|---|---|---|
HTML5_URL_DMZ |
URL som ble konfigurert da HTML5 Gateway ble deklarert i administrasjonskonsollet. | |
HTML5_IP_DMZ |
DNS-navn eller IP-adresse til Docker-serveren der HTML5 Gateway Docker er aktiv. | |
HTML5_PORT_DMZ |
Port som Docker-serveren publiserer for HTML5 Gateway Docker. |
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
Det overordnede diagrammet er som følger:
flowchart LR
subgraph DMZ
direction TB
MED(Mediation Controller)
end
subgraph LAN
HTML5(HTML5 Gateway Docker)
GW(Edge Gateway)
end
MED -.- | Tilkobling til HTML5-tjenesten ; via TLS-tunnelen| GW -.-> |Tilkobling til HTML5-tjenesten ; TCP 8080| HTML5
HTML5 --> |TLS Tunnel| MED
GW --> |TLS Tunnel| MED
linkStyle 0,1 stroke:#d22,color;
I denne sammenhengen må informasjonen nedenfor legges til i filen /etc/ipdiva/httpd/commonParameters.extra.conf, eller filen må opprettes.
Innstillingene kan tilpasses:
| Tilpasset verdi | Variabel | Kommentar |
|---|---|---|
HTML5_URL_LAN |
URL som ble konfigurert da HTML5 Gateway ble deklarert i administrasjonskonsollet. | |
GW_NAME_LAN |
Navnet på Edge Gateway som brukes for å koble til HTML5-tjenesten. Den loddrette streken på slutten av linjen må beholdes. | |
ORGANIZATION_NAME_LAN |
Navnet på organisasjonen som Edge Gateway kobler seg til. | |
HTML5_IP_LAN |
DNS-navn eller IP-adresse til Docker-serveren der HTML5 Gateway Docker er aktiv. | |
HTML5_PORT_LAN |
Port som Docker-serveren publiserer for HTML5 Gateway Docker. |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | |
Tips
Denne konfigurasjonen kan også brukes i den følgende situasjonen, der en Edge Gateway Docker og en HTML5 Gateway Docker kjører i samme Docker-nettverk:
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 -.- | Tilkobling til HTML5-tjenesten ; via TLS-tunnelen| GW -.-> |Tilkobling til HTML5-tjenesten ; TCP 8080 via Docker-nettverket| HTML5
HTML5 --> |TLS Tunnel| MED
GW --> |TLS Tunnel| MED
linkStyle 0,1 stroke:#d22,color;
Eksempel
I dette eksempelet ruller vi ut en Edge Gateway og en HTML5 Gateway på samme Docker-server.
Infrastrukturen som brukes i eksempelet, er som følger:
- Mediation Controller-server
- Web-IP-adresse:
10.0.10.10 - Navn på organisasjonen:
my-organization-name - Token for Edge Gateway:
YJ5N-JN05-N5LS-N26H-7JHA-HZ9R-BGJF-MAVH - Token for HTML5 Gateway:
ATCW-OMVR-0RY4-LW1M-D9G9-H5VF-WPX5-YCXF - URL for tilgang til HTML5-tjenesten:
HTML5_DOCKER
- Web-IP-adresse:
- Docker-server
- Navn på Docker-nettverk:
cyberelements-cleanroom-network - Edge Gateway
- Navn:
my-edge-gateway-docker - Rotplassering i filsystemet:
/opt/my-edge-gateway-docker
- Navn:
- HTML5 Gateway
- Navn:
my-html5-gateway-docker - Rotplassering i filsystemet:
/opt/my-html5-gateway-docker
- Navn:
- Navn på Docker-nettverk:
Først må du opprette katalogstrukturen for å montere Docker-volumene på Docker-serveren:
1 2 3 4 5 6 | |
Opprett deretter et Docker-nettverk av typen bridge, slik at de to containerne kan kommunisere med hverandre:
1 | |
Start deretter containeren til Edge Gateway. Merk at eksempelet oppretter en tilkobling med pairing, med tilgang til Mediation Controller via IP-adressen og uten at det legges til noen sertifikatkontroll. I tillegg legges parameteren --network til for å angi at det tidligere opprettede Docker-nettverket skal brukes:
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
Start deretter containeren til HTML5 Gateway. Merk at eksempelet oppretter en tilkobling med pairing, med tilgang til Mediation Controller via IP-adressen og uten at det legges til noen sertifikatkontroll. I tillegg legges parameteren --network til for å angi at det tidligere opprettede Docker-nettverket skal brukes, og siden tilgangen til HTML5-tjenesten går gjennom Docker-nettverket, er det ikke nødvendig å publisere port 8080:
1 2 3 4 5 6 7 8 | |
Til slutt må filen /etc/ipdiva/httpd/commonParameters.extra.conf på Mediation Controller-serveren eller -serverne konfigureres. Følgende del skal legges til:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | |
Før du tar i bruk de nye innstillingene, må du kontrollere at den nye konfigurasjonen ikke gir blokkerende feil for webserveren Apache2.
Kjør følgende kommando for å gjøre det:
1 | |
Hvis svaret er Syntax OK, kan endringene tas i bruk med kommandoen nedenfor. Ellers må du kontrollere konfigurasjonen av filen /etc/ipdiva/httpd/commonParameters.extra.conf.
1 | |