Der Webserver soll über ein selbsterstelltes Zertifikat SSL-Verschlüsselte Verbindungen bereitstellen.
Zuerst werden die Zertiikate für ein Jahr erstellt:
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/apache-selfsigned.key -out /etc/ssl/certs/apache-selfsigned.crt
Ein paar Fragen beantworten, u.a. Name des Servers: raspberrypi3.fritz.box
Fertig.
nano /etc/apache2/sites-available/raspberrypi3.conf
<VirtualHost *:443> ServerName raspberrypi3.fritz.box DocumentRoot /var/www/raspberrypi3 SSLEngine on SSLCertificateFile /etc/ssl/certs/apache-selfsigned.crt SSLCertificateKeyFile /etc/ssl/private/apache-selfsigned.key </VirtualHost>
mkdir /var/www/raspberrypi3
Erstelle eine Testseite im neuen Verzeichnis:
echo "<h1>it worked!</h1>" >/var/www/raspberrypi3/index.html
==== Apache erweitern ==== a2ensite raspberrypi3.conf a2enmod ssl
Test Konfiguration:
apache2ctl configtest
Wenn hier Syntax ok steht können wir den Server neu laden:
systemctl reload apache2
Sobald die Webseite im Browser aufgerufen wird, kommt eien Hinweis.
Dies liegt am selbsterzeugten Zertifikat und muss dann aktzeptiert werden.
Soll automatisch von Port 80 auf Port 443 umgeleitet werden, wir die Konfiguration erweitert:
nano /etc/apache2/sites-available/raspberrypi3.conf
<VirtualHost *:443> ServerName raspberrypi3.fritz.box DocumentRoot /var/www/raspberrypi3 SSLEngine on SSLCertificateFile /etc/ssl/certs/apache-selfsigned.crt SSLCertificateKeyFile /etc/ssl/private/apache-selfsigned.key </VirtualHost> # Umleitung von Port 80 auf Port 443 <VirtualHost *:80> ServerName raspberrypi3.fritz.box Redirect / https://raspberrypi3.fritz.box/ </VirtualHost>
Klappte es nicht, wird die ursprüngliche Konfiguration erweitert:
nano /etc/apache2/sites-available/000-default.conf
<VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www/html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined Redirect / https://raspberrypi3.fritz.box/ </VirtualHost>