Warum ein Serverwechsel?
Seitdem ich meine eigene Domain habe, bin ich Kunde bei 1&1. Ich hatte dort im Laufe der unzählige Pakete. Angefangen habe ich mit einem einfachen Webhosting Paket. Dann hatte ich einen vServer mit Plesk-Oberfläche. Zu der Zeit musste man dort dann auch seine Mails selbst hosten, was sehr ziemlich müßig war (aufwändige Wartung, laufend Spam und Viren) und mich dann wieder zu einem normalen Webhosting Paket bewogen hat.
Leider hat 1&1 immer wieder Performance-Probleme und Serverausfälle – wenn, dann meistens zur Hauptgeschäftszeit. Die Standard-Pakete sind sehr langsam und auch das neue Performance-Feature hat zu keiner spürbaren Steigerung beigetragen.
Bei meiner Recherche bin ich über Laracasts.com auf den Cloud Computing Anbieter DigitalOcean gestoßen. Dort gibt es ab 5$ im Monat bereits einen eigenen vServer (dort wird es Droplet genannt) mit Standort in Deutschland (Frankfurt). Darüber hinaus kann man viele Extras hinzubuchen, wie z. B. ein Backup für 20% des Monatspreises. Die Kapazität des Droplets kann man einfach wechseln und man kann sich auch nur für wenige Minuten ein Droplet einrichten, um etwas auszuprobieren. Nur Emails kann man dort nicht verwalten, außer man installiert sich dort einen eigenen Mailserver – aber das hatte wir ja schon.
Da 1&1 die Möglichkeit bietet, seine DNS-Einstellungen zu ändern, ist es für eine ideale Kombination. Ich habe auch andere Domainregistrare wie Hover ausprobiert. Dort kann man auch Mailboxes buchen, diese kosten jedoch 20$/Jahr pro E-Mailadresse und 5$/Jahr für jede Weiterleitung. Bei 15 Mailadressen und 10 Weiterleitungen wird es sehr kostspielig (in meinem Fall sind es dann 30$/Monat).
Somit habe ich mir bei 1&1 das kleinste Webhosting-Paket Starter für 3,99 € / Monat gebucht. Insgesamt kann man 100 Postfächer einrichten und die DNS-Einstellungen der Domains ändern. Ich habe dort meine Domains für die ich Emails benötige registriert, alle anderen Domains sind weiterhin bei Hover registriert.
Der Wechsel
Zunächst habe ich meine Hauptdomains bei Hover registriert. Ein Fehler, wie sich im Nachhinein rausgestellt hat, da die Kosten für die Mailboxes einfach zu hoch waren. Der Wechsel lieft trotzdem sehr schnell ab. Durch den Providerwechsel wurden alle Mail-Accounts im 1&1 Konto deaktiviert und ein Backup davon angelegt. Sehr komfortabel. So kann man seine Mails von IMAP-Account bei 1&1 zum neuen IMAP-Account kopieren. Auch wenn das Backup laut Angaben von 1&1 nicht immer zuverlässig funktionieren soll, so hat es in meinem Fall sehr gut geklappt.
Der Wechsel von Hover zurück zu 1&1 lief noch schneller ab. Die Domains waren innerhalb weniger Minuten bei 1&1 im Domain Center zu sehen und ich konnte alle meine Emails wieder einrichten.
Hätte ich den Wechsel nicht zu Hover gemacht, so hätte ich die Domains ganz einfach von einem Vertrag zum anderen innerhalb von 1&1 verschieben können. Lediglich die DNS-Einstellungen wären dadurch verloren gegangen.
Die Droplet-Einrichtung
Zunächst wählt man entweder eine Distribution oder ein Image aus.
Anschließend muss man sich für eine Größe des Droplets entscheiden. Hier gibt es 3 Möglichkeiten: Standard, Optimized oder Flexible.
Sehr positiv empfinde ich die Auswahl des Server-Standortes. Hier gibt es gleich 2 in Europa und 1 in Deutschland. Zusätzlich kann man noch weitere Optionen wie Backup oder Monitoring wählen. Das Backup kostet 20% von Monatspreis. Das Monitoring ist kostenlos.
Das Droplet ist innerhalb weniger Minuten einsatzbereit. Der Zugriff kann per SSH oder SFTP entweder mit Benutzername und Passwort oder per SSH-Key erfolgen. Wählt man ein Image aus (z. B. WordPress) sind bereits Datenbank und WordPress sowie eine Firewall und weitere kleine Schutzmechanismen installiert.
Eine ausführliche Anleitung findest Du im Supportbereich von DigitalOcean:
https://www.digitalocean.com/community/tutorials/how-to-use-the-wordpress-one-click-install-on-digitalocean.
DNS Einstellungen bei 1&1 und Hover
Damit die Domains auch entsprechend mit DigitalOcean funktionieren, empfiehlt es sich den Nameserver der jeweiligen Domain entsprechend zu setzen.
Bei 1&1 geschieht dies über das Domain Center:
Diese Einstellungen sind nach mehreren Stunden aktiv.
Bei Hover kann man in den Einstellungen der Domain im Bereich Overview die DNS-Einstellungen vornehmen:
Diese Einstellungen sind nach einigen Stunden aktiv.
Domain-Einstellungen bei DigitalOcean
Die Einrichtung der Haupt- und Subdomains erfolgt dann bei DigitalOcean im Bereich Networking.
Dort setzt man dann auch den MX-Record, damit man die Mailaccounts bei 1&1 nutzen kann (vorausgesetzt, dass dort die Domain registriert ist). Es müssen lediglich zwei Einträge vorgenommen werden: mx00.kundenserver.de. und mx01.kundenserver.de. jeweils mit einem Punkt am Ende (das ist kein Schreibfehler). Ich habe die TimeToLive relative gering gesetzt, das muss man eigentlich nicht machen.
Diese Einstellungen sind innerhalb kurzer Zeit aktiv, bzw. nach dem Ende der TTL.
Darüber hinaus muss noch die Apache-Konfiguration im Droplet angepasst werden. Diese findest Du im Verzeichnis /etc/apache2/sites-enabled
In meinem Fall nutze ich SSL-Zertifkate via Letsencrypt (siehe nächste Section) und leite den Traffic automatisch von http zu https um. Die Konfiguration sieht wie folgt aus:
<VirtualHost *:80>
ServerName blog.krannich.de
RewriteEngine on
RewriteCond %{SERVER_NAME} =blog.krannich.de
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
<VirtualHost *:443>
ServerName blog.krannich.de
ServerAdmin webmaster@localhost
DocumentRoot /var/www/krannich.de/blog/public
<Directory /var/www/krannich.de/blog/public/>
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
SSLCertificateFile /etc/letsencrypt/live/blog.krannich.de/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/blog.krannich.de/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>
SSL-Zertifikate mit Letsencrypt
Eine ausführliche Anleitung findest Du im Supportbereich von DigitalOcean:
https://www.digitalocean.com/community/tutorials/how-to-secure-apache-with-let-s-encrypt-on-ubuntu-16-04
sudo add-apt-repository ppa:certbot/certbot
sudo apt-get update
sudo apt-get install python-certbot-apache
Ein Zertifikat wird wie folgt erstellt:
certbot --apache --cert-name krannich.de -d blog.krannich.de
Übersicht der Zertifikate:
certbot certificates
Zertifikat Löschen:
certbot delete --cert-name www.krannich-hausautomation.de
Certbot erstellt einen Timer, diesen kannst Du hier einsehen:
systemctl list-timers --all