Vor über zwei Jahren wollte ich bereits das Projekt einer eigenen Website angehen. Auf der Suche nach einem preiswerten Webhosting Anbieter machte mich ein Freund auf das Oracle Cloud Free Tier Angebot aufmerksam. Unter anderem beinhaltet es folgende Leistungen:
- 200GB Speicher
- 2 VM.Standard.E2.1.Micro Instanzen mit je:
- 1 GB RAM
- 1/8 OCPU (eine OCPU repräsentiert einen physischen CPU Kern, bei den hier eingesetzten AMD EPIC Kernen erhält man dementsprechend zwei Virtuelle Kerne)
- 480MBit/s Netzwerkbandbreitenlimit
- eine statische IPv4 Adresse
Darüber hinaus gibt es ein Start Guthaben in Höhe von bis zu 300 USD, welches allerdings nur innerhalb der ersten 30 Tage verwendet werden kann und somit für meine Zwecke uninteressant ist.
Mögliche Hürden hierbei sind:
- man muss sich sein System selbst einrichten
- hierbei ist man auch selbst für die Sicherheit verantwortlich
- Oracle kann irgendwann den kostenlosen Service einstellen
Zur Anmeldung müssen valide Kreditkarteninformationen und eine Mobiltelefonnummer hinterlegt werden. Anschließend kann mit der Konfiguration begonnen werden.
Betriebssystem
Im Oracle Webinterface kann aus einer vielzahl verschiedener Betriebsysteme ausgewählt werden oder ein eigenes Image hochgeladen werden. Für die Windows Images werden entsprechende Lizenzen benötigt. Meine Wahl fiel auf Grund der Bekanntheit und Verbreitung auf Ubuntu.

Sicherheit
Um das System halbwegs sicher zu machen empfehle ich mindestens folgende Punkte umzusetzen:
- automatische Updates (z.B. mit UnattendedUpgrades)
- starkes SSH Passwort (oder gleich nur per Keyfile Anmeldung erlauben)
- SSH Port ändern (das schont auch das Log, andernfalls liest man über die endlos fehlgeschlagenen Anmeldeversuche der Bots)
- nur die wirklich erforderlichen Ports nach außen freizugeben
- zum einen über Firewall des Betriebssytems (z.B. iptables)
- zum anderen über die Security Rules des Virtual Cloud Networks über das Oracle Webinterface
- http und https Ports (80 & 443)
- ICMP Messages
Eingesetzte Software
Ich entschied mich dazu eine statische Website erstellen. Dies hat den Vorteil, dass selbst hohem Besucheraufkommen auf der Website eine gute Performance erzielt werden kann, da ja eben nur die zuvor generierten Dateien ausgeliefert werden müssen. Somit steigt auch die Widerstandsfähigkeit gegenüber kleinen DDOS Angriffen. Ebenfalls erhoffe ich mir durch das Fehlen von ausführbaren Skripten eine erhöhte Sicherheit.
Die Wahl fiel auf Hugo. Hugo ermöglicht eine einfache Generierung von Websites, wobei der Inhalt der einzelnen Posts in Markdown geschrieben wird. Zum einfachen stylen sind viele Themes verfügbar.
Den Github Sternen nach ist Next.js deutlich populärer als Hugo und sollte als Alternative in Betracht gezogen werden. Für meine Zwecke reicht jedoch Hugo und Next.js wirkte für mich etwas komplizierter.
Zum eigentlichen Webhosting kann dann Caddy verwendet werden. Ich entschied mich gegen Apache und nginx da dem Anschein nach diese Programme deutlich schwieriger zu konfigurieren sind. So ist beispielsweise HTTPS bei Caddy standardmäßig aktiviert, wohingegen bei den anderen beiden Möglichkeiten erst Konfigurationen dafür geschrieben werden müssen.