IAM appliance - iam-app-web-proxy
RPM balíček s centrální webovou proxy pro kontejnerizované služby appliance. Proxy je realizována službou nGinx, za kterou jsou schované všechny ostatní služby s webovým rozhraním - CzechIdM, CAS, atd.
Balíček je přímou součástí appliance. Proxy pass je konfigurován na úrovni interního DNS názvu kontejneru s danou aplikací.
Nginx funguje i jako web server pro statické soubory pro CAS, frontpage a další služby na url adrese /static/. Statické soubory lze upravovat (změna loga, změna css barev) v appliance v umístění /data/volumes-shared/web-proxy-static/…
.
Obsahuje základní podporu pro LE certifikáty (serving challengí, adresáře). Samotné certifikáty a logiku jejich fungování zajišťuje balíček iam-letsencrypt-support, který je proxe podstrkuje.
|
Build probíhá standardním způsobem v bcv-rpmbuild
kontejneru.
Služba
Kontejner je používán obecný OWASP - ModSecurity3 owasp/modsecurity:nginx
zrcadlený z repo.iamappliance.com:8443/owasp/modsecurity-nginx:1.20.2
. Služba je v appliance známá jako iam-web-proxy
.
Adresáře na disku appliance
-
/data/volumes/web-proxy/config
- uložena konfigurace webové proxy -
/data/volumes/web-proxy/modsecurity-rules
- uložena konfigurace ModSecurity pravidel -
/data/volumes/web-proxy/secrets
- uložen HTTPS certifikát a klíč -
/data/volumes/web-proxy/frontpage
- uložený index.html pro zobrazení rozcestníku -
/data/volumes/web-proxy/letsencrypt
- prázdná adresářová struktura, ze které se servují LE challenge -
/data/volumes-shared/web-proxy-static
- statické soubory css, js, obrázky rozdělené do adresářů podle služeb -
/data/logs/web-proxy
- logy-
Tento adresář musí mít správně SElinux labely, o to se stará RPM balíček už v procesu instalace pomocí volání
semanage fcontext …
.
-
Konfigurační soubory
-
/data/registry/node-active-config/docker-compose-web-proxy.yml
- konfigurace kontejneru -
/etc/rsyslog.d/10_web-proxy.conf
- odbočka logů ze syslogu do vyhrazeného souboru na disku -
/etc/logrotate.d/web-proxy
- konfigurace rotace logů