So erstellen Sie Ihren eigenen Caddy-Webserver unter Linux

So erstellen Sie Ihren eigenen Caddy-Webserver unter Linux
Ein Foto eines Computermonitors auf einem Tisch mit grüner Hintergrundbeleuchtung.

Caddy ist ein moderner, benutzerfreundlicher Webserver für Linux. Er funktioniert, indem er den Prozess der Erstellung von Site-Konfigurationsdateien und SSL-Zertifikaten optimiert. Dieser Artikel führt Sie durch den Installationsprozess von Caddy auf einem Ubuntu-Linux-Server. Darüber hinaus zeigt er Ihnen, wie Sie mit Caddy eine einfache Webseite sowie einen SSL-Reverse-Proxy bereitstellen.

Warum Caddy als Webserver verwenden?

Nginx und Apache sind zwar leistungsstarke Webserver-Daemons, können für einen neuen Benutzer jedoch unhandlich und komplex sein. Caddy reduziert diese Komplexität, indem es das „Caddyfile“ bereitstellt, eine einzelne flache Datei mit einer einfachen Syntax, die selbst für Anfänger leicht zu erlernen ist.

Ein Terminal, das eine Beispiel-Caddydatei zeigt.

Ein weiteres Verkaufsargument von Caddy ist, dass es sofort HTTPS für Ihren Webserver bereitstellt. Das ist praktisch für Benutzer, die die Einrichtung von SSL für ihre Website entmutigend und kompliziert finden. Daher ist Caddy perfekt, wenn Sie nach einem unkomplizierten Webserver unter Linux suchen, der sowohl einfach zu warten als auch zu verwenden ist.

Caddy installieren

Der erste Schritt bei der Installation von Caddy in Ubuntu Linux besteht darin, sicherzustellen, dass Sie über die Tools zum Importieren der Repository-Schlüssel und -Informationen verfügen:

Holen Sie sich den Repository-Signaturschlüssel für Caddy von der Website des Entwicklers:

Laden Sie die Repository-Datei des Caddy-Projekts herunter und speichern Sie sie im Verzeichnis „sources.list.d“ Ihres Computers:

Laden Sie die Apt-Repositorys Ihres Systems neu, indem Sie Folgendes ausführen:

Installieren Sie das Caddy-Paket für Ihr System mit apt install:

Ausführen Ihrer ersten Caddy-Website

Um Ihre erste Website zu betreiben, erstellen Sie den Stammordner Ihrer Site in Ihrem Home-Verzeichnis:

Erstellen Sie mit Ihrem bevorzugten Texteditor eine index.html-Datei:

Fügen Sie den folgenden Codeblock in Ihre neue HTML-Datei ein:

Speichern Sie Ihre Datei index.html und führen Sie dann den folgenden Befehl aus:

Stellen Sie sicher, dass Ihr Webserver ordnungsgemäß funktioniert, indem Sie mit Ihrem Browser dorthin navigieren.

Ein Screenshot, der eine Beispielwebsite zeigt, die auf localhost:8080 ausgeführt wird.

Erstellen einer Website mit Caddyfiles

Während das CLI-Tool sich hervorragend zum Bereitstellen einfacher Webseiten eignet, bietet Caddy auch ein einfach zu verwendendes „Caddyfile“ für komplexere Setups. Erstellen Sie zunächst mit Ihrem bevorzugten Texteditor ein neues Caddyfile unter „/etc/caddy“:

Fügen Sie den folgenden Codeblock in Ihre neue Caddy-Datei ein:

Kopieren Sie die Datei index.html aus Ihrem Home-Verzeichnis in das Verzeichnis „/var/www“ Ihres Systems:

Gehen Sie zu Ihrem DNS-Registrar und stellen Sie sicher, dass Ihre Stamm- und WWW-Subdomänen entweder einen A- oder AAAA-Eintrag haben, der auf die IPv4- und IPv6-Adressen Ihres Computers verweist.

Ein Screenshot, der zwei A-Einträge zeigt, die auf die IP-Adresse des Computers verweisen.

Aktivieren Sie den integrierten Caddy-Dienst auf Ihrem Computer:

Überprüfen Sie, ob Ihre Website ordnungsgemäß funktioniert, indem Sie zu Ihrem Domänennamen navigieren.

Ein Screenshot, der die Beispielwebsite zeigt, die mit einem externen Domänennamen funktioniert.

Erstellen eines SSL-Reverse-Proxys mit Caddy

Genau wie Nginx und Apache können Sie Caddy auch als Reverse-Proxy für einen internen Dienst auf Ihrem Computer verwenden. Öffnen Sie dazu die Caddy-Datei Ihres Systems:

Fügen Sie den folgenden Codeblock in Ihre Caddy-Datei ein:

Ersetzen Sie „LOCAL-PORT“ durch den Port Ihrer Webanwendung. In meinem Fall ersetze ich meinen durch 3001, um den gesamten eingehenden Datenverkehr auf meinen Uptime Kuma-Server umzuleiten .

Ein Terminal, das eine geänderte Caddy-Reverse-Proxy-Konfiguration zeigt.

Speichern Sie Ihre Caddy-Datei und laden Sie dann den Caddy-Dienst neu, um Ihre neuen Einstellungen anzuwenden:

Testen Sie, ob Ihr Reverse-Proxy ordnungsgemäß funktioniert, indem Sie mit Ihrem Webbrowser zu Ihrer Domäne navigieren.

Ein Screenshot, der eine Uptime Kuma-Instanz zeigt, die über Caddy geproxied wird.

Bereitstellen mehrerer Websites und Dienste mit Caddy

Sie können auch dieselbe Caddy-Datei verwenden, um sowohl Websites als auch Proxys unter demselben Host bereitzustellen. Dies erleichtert die Verwaltung mehrerer verschiedener Dienste, ohne das Konfigurationsverzeichnis Ihres Webservers zu überladen.

Gehen Sie zunächst zur Download-Seite von Caddy und geben Sie dann „caddy-dns“ in die Suchleiste ein.

Ein Screenshot, der das Caddy-DNS-Suchfeld auf der Caddy-Download-Seite hervorhebt.

Suchen Sie nach dem DNS-Anbieter, der Ihren Domänennamen verwaltet. In meinem Fall verwende ich DigitalOcean .

Wählen Sie Ihren DNS-Anbieter aus und klicken Sie dann oben rechts auf der Seite auf „Herunterladen“. Dadurch wird eine benutzerdefinierte Caddy-Binärdatei mit dem entsprechenden Modul für Ihren DNS-Anbieter heruntergeladen.

Ein Screenshot, der die Schaltfläche „Herunterladen“ hervorhebt, nachdem der Caddy-DNS-Build für DigitalOcean ausgewählt wurde.

Stoppen Sie den Caddy-Dienst mit systemctl:

Erstellen Sie eine Sicherungskopie der ursprünglichen Caddy-Binärdatei und kopieren Sie dann die benutzerdefinierte Binärdatei in Ihr Verzeichnis „/usr/bin/“.

Testen Sie, ob Ihre benutzerdefinierte Caddy-Binärdatei ordnungsgemäß funktioniert, indem Sie ihre Version überprüfen:

Caddy SSL für Wildcard-Domänen aktivieren

Öffnen Sie die Caddydatei Ihres Systems mit Ihrem bevorzugten Texteditor:

Fügen Sie den folgenden Codeblock in Ihre Caddy-Datei ein:

Holen Sie sich einen API-Schlüssel von Ihrem DNS-Anbieter. In DigitalOcean erhalten Sie diesen, indem Sie zu Ihrem DigitalOcean-Dashboard gehen und dann in der linken Seitenleiste der Seite auf API klicken.

Ein Screenshot, der die API-Schaltfläche auf dem DigitalOcean-Dashboard hervorhebt.

Klicken Sie auf „Neues Token generieren“ und geben Sie dann die Details für Ihren API-Schlüssel ein.

Ein Screenshot, der die Tokendetails für automatisierte SSL-Wildcardzertifikate zeigt.

Kopieren Sie Ihr API-Geheimnis und fügen Sie es dann in die Variable „API-KEY“ in Ihrer Caddyfile ein.

Passen Sie die Caddy-Datei an Ihr spezifisches Setup an und speichern Sie sie dann.

Ein Terminal, das eine geänderte Multisite-Caddy-Konfigurationsdatei anzeigt.

Stellen Sie sicher, dass Ihr Domänenname über die entsprechenden A- und AAAA-Einträge für Ihre Domäne und Subdomäne verfügt.

Starten Sie Ihren deaktivierten Caddy-Daemon neu, um Ihre neuen Einstellungen anzuwenden:

Testen Sie, ob Ihr „Multi-Service“-Setup ordnungsgemäß funktioniert, indem Sie beide Domänen in einem Webbrowser öffnen.

Ein Screenshot, der die beiden Dienste zeigt, die mit Caddy unter SSL laufen.

Das Erlernen der Bereitstellung einfacher und sicherer Webdienste mit Caddy ist nur der erste Schritt bei der Erkundung der wunderbaren Welt des Self-Hostings unter Linux. Tauchen Sie tiefer in dieses Universum ein, indem Sie mit SimpleLogin Ihren eigenen E-Mail-Aliasserver erstellen .

Bildnachweis: Jonathan Ybema über Unsplash und Wikimedia Commons . Alle Änderungen und Screenshots von Ramces Red.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert