ApacheSSL
Hier beschreibe ich, wie man in Apache2 die SSL-Unterstützung aktiviert. SSL steht für eine geschützte und verschlüsselte Verbindung. Immer wenn sensible Daten eingegeben werden, sollte eine SSL-Verbindung verwendet werden. In meinem Fall habe ich die SSL-Verbindung für das Webmail aktiviert.
Einrichtung
Zuerst benötigt man ein SSL-Zertifikat:
>mkdir /etc/apache2/ssl
openssl req -new -x509 -days 365 -nodes -out /etc/apache2/ssl/apache.pem -keyout /etc/apache2/ssl/apache2.pem
Die Daten wie gewünscht ausfüllen. Common-Name sollte dem FQDN (=Fully Qualified Domain Name, z. B. web.example.com) entsprechen. Die Gültigkeitsdauer kann beliebig gewählt werden.
Jetzt muss SSL im Apache2 aktiviert werden. Dazu die Datei /etc/apache2/ports.conf
öffnen und mod_ssl einkommentieren:
Listen 12.34.56.78:80
<IfModule mod_ssl.c>
Listen 443
</IfModule>
Anschließend Apache2 mit service apache2 restart
neustarten und das SSL-Modul aktivieren a2enmod ssl
Last but not least muss noch der passende vhost angelegt werden. Angenommen es existiert ein vhost example.com:
<VirtualHost *:80>
ServerName wiki.example.com
ServerAlias wiki.example.com
ServerAdmin admin@example.com
DocumentRoot /var/www/example/
</VirtualHost>
Dann erstellt man am besten eine Kopie
>cp exmaple.com example-ssl.com
und erweitert das Ganze um die SSL-Parameter, sodass die neue Datei wie folgt ausschaut:
<VirtualHost *:443>
ServerName webmail.easycow.de
ServerAlias webmail.easycow.de
ServerAdmin admin@easycow.de
DocumentRoot /var/www/horde-webmail/
SSLEngine On
SSLCertificateFile /etc/ssl/certs/apache2.pem
</VirtualHost>
Wie Sie sehen können, wurde der Port 80 mit 443 ersetzt und SSLEngine On und SSLCertificateFile hinzugefügt. Der Aufruf https://wiki.example.com sollte nun funktionieren.