Apache 2 HTTPS erzwingen

Aus Wiki
Wechseln zu: Navigation, Suche

Einrichtung

Generieren der Schlüssel:

openssl genrsa -out /etc/ssl/private/apache.key 2048
openssl req -new -x509 -key /etc/ssl/private/apache.key -days 365 -sha256 -out /etc/ssl/certs/apache.crt

/etc/apache2/sites-available/example.net:

<VirtualHost *:80>
  ServerName http://example.net
  ServerAdmin webmaster@localhost
  RewriteEngine On
  RewriteCond %{HTTPS} !=on
  RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</VirtualHost>
<IfModule mod_ssl.c>
  <VirtualHost *:443>
    SSLEngine on
    SSLCertificateFile /etc/ssl/certs/apache.crt
    SSLCertificateKeyFile /etc/ssl/private/apache.key
    ServerName https://example.net
    ServerAdmin webmaster@localhost
 
    ### Wenn die Seite von dieser Maschine gehostet wird: ###
    #DocumentRoot /var/www/html
 
    ### Bei Weiterleitung an einen anderen Server: ###
    #ProxyPreserveHost On
    #ProxyPass          /   http://otherserver/
    #ProxyPassReverse   /   http://otherserver/
 
  </VirtualHost>
</IfModule>

Anschließend müssen die Webseiten und die entsprechenden Module noch aktiviert werden.

a2enmod rewrite
a2enmod ssl
a2ensite example.net
service apache2 restart

Weblinks