Nun kümmern wir uns zunächst erst um die HTTPS-Konfiguration des Apache-Webserver damit wir das Icinga Web2 Modul als auch die folgenden AddOns alle mit Hilfe des HTTPS-Protokolls aufrufen können. Dies machen wir jetzt, da die weiteren Module teilweise auf die Webschnittstellen der anderen Module aufsetzen, wie zum Beispiel das Nagvis- oder das Graphite-Modul. Damit wir hier gleich die richtigen HTTPS-URIs angeben können und nicht im Abschluss noch einmal die URIs jedes der Module korrigieren müssen.

Für die HTTPS Konfiguration besorgen wir uns zunächst ein passendes Zertifikat für die TLS-Verschlüsselung. Dies kann als Beispiel durch eine eigene CA ausgestellt werden. Auch wer zum Beispiel eine Windows-CA in seinem Netzwerk hat kann diesen dazu nutzen. Natürlich kann hier auch ein offizielles Zertifikat zum Einsatz kommen. Wichtig ist hierbei dass das Zertifikat unter umständen ein SAN-Zertifikat ist dass neben dem FQDN der Hosts eventuell auch noch den Hostnamen und die IP-Adresse enthält. Wie man dieses bei einer Windows-CA mit Hilfe der Attribute erstellt habe ich hier einmal beschrieben.

Sobald das Zertifikat im PFX-Format vorliegt kopieren wir es auf den Server um es für die Verwendung mit dem Apache Webserver entsprechend zu konvertieren. Wir benötigen einmal das Zertifikat selbst als PEM-Datei und einmal den Private-Key als KEY-File. Hierzu verwenden wir das Tool openssl.

openssl pkcs12 -in servercert.pfx -nocerts -out serverkey.key
openssl pkcs12 -in servercert.pfx -clcerts -nokeys -out servercert.crt
openssl rsa -in serverkey.key -out serverkey-decrypt.key
openssl x509 -in serversert.crt -out servercert.pem -outform PEM

Nun aktivieren wir das SSL-Modul des Apache und starten diesen einmal neu.

/usr/sbin/a2enmod ssl
systemctl restart apache2

Jetzt kopieren wir das Zertifikat und den Private-Key an die für den Apache passende Stelle und passen die SSL-Konfiguration des Apache an.

cp servercert.pem /etc/ssl/certs/
cp serverkey-decrypt.key /etc/ssl/private/
cp /etc/apache2/sites-available/default-ssl.conf /etc/apache2/sites-available/default-ssl.conf.sik
joe /etc/apache2/sites-available/default-ssl.conf

In der default-ssl.conf stellen wir sicher das die Zeile SSLEnable nicht auskommentiert ist und passen die beiden Pfade darunter auf unser Zertifikats- und das Key-File an. Anschließend aktivieren wir die Apache-SSL-Konfiguration und laden den Apache einmal neu.

/usr/sbin/a2ensite default-ssl.conf
systemctl reload apache2

Von nun an können wir auf das Icinga Web 2 Modul via https zugreifen unter https://SERVERNAME/icingaweb2.

Weiter geht es nun mit der Installation des Moduls Icinga Director für Icinga Web2.