Wie erzwinge ich eine SSL-Verschlüsselung (Konsole)?

Sicherlich ist es dir wichtig, dass deine Besucher eine gesicherte Verbindung für sensible Daten wie Kreditkarten und Co. nutzen. Deswegen sollte deine Seite immer automatisch auf https:// umleiten – auch wenn deine Besucher diese über http:// aufrufen.

Der einfachste Weg ist, im Kundencenter die Einstellung zu treffen.

Solltest du aber nicht die Möglichkeit haben, das dort zu tun, geht das auch so:

Schritt 1

Verbinde dich per SSH mit deinem Server und öffne deinen Software-Ordner (z. B. html/typo3, html/wordpress usw.) – mit dem folgenden Befehl:

cd html/software-ordner

Schritt 2

Gib dann in deinem Software-Ordner folgenden Befehl ein, um den Ordnerinhalt zu sehen:

l

Schritt 3

Dort benötigst du die Datei .htaccess. Damit du diese bearbeiten kannst, öffne die Datei mit einem Editor wie Vim:

vim .htaccess

Schritt 4

Ansicht leerer .htaccess-Datei

Du siehst nun entweder eine leere oder bereits beschriebene .htaccess-Datei. Je nachdem, ob du darin schon aktiv warst oder nicht.

Schritt 5

Sage nun, dass du gerne eine HTTPS-Verbindung erzwingen möchtest. Wechsle dazu in den Bearbeitungsmodus von Vim – mit „i“ für „Insert-Mode“. Kopiere nun den folgenden Inhalt und füge diesen an den Anfang deiner .htaccess ein.

RewriteEngine On
#Optional: RewriteCond %{HTTP_HOST} ^www\.domain\.tld$ [NC,OR]
#Optional: RewriteCond %{HTTP_HOST} ^domain\.tld$ [NC]
RewriteCond %{SERVER_PORT}     !^443$
RewriteRule (.*)  https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
 

Im Detail heißt das:

  • „RewriteEngine On“: Hiermit schaltest du mod_rewrite ein. Daher steht es gleich zu Beginn.
  • „RewriteCond %{HTTP_HOST}“: Du möchtest nur bestimmte Domains auf HTTPS weiterleiten – zum Beispiel bei einem Multishop-System? Dann ist diese Zeile wichtig für dich – ohne „#Optional: ...“ und statt „domain.tld“ deine Domain. Du benötigst diese Regel nicht? Dann lass die beiden Zeilen „#Optional: Rewrite…“ einfach weg.
  • „RewriteCond %{SERVER_PORT}     !^443$“: Mit dieser Regel stellst du sicher, dass jeder Besucher auf dem HTTPS-Port 443 landet.
  • „RewriteRule (.*)  https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]“: Hiermit leitest du alle Zugriffe auf deine Webseite direkt auf deine Domain weiter, und zwar mit https:// davor. Deine Domain trägt der Server automatisch ein.

Schritt 6

.htaccess-Datei, dank der HTTPS-Verbindung erzwungen wird

Alles eingegeben? Dann kannst du den Bearbeitungsmodus von Vim verlassen – mit der Escape-Taste. Und damit deine Wünsche gespeichert und aktiv werden, tippe zum Abschluss noch den Befehl „:wq!“ ein. Fertig!