So erstellen Sie Ihren eigenen Caddy-Webserver unter Linux

Caddy ist ein moderner, einfach zu bedienender Webserver für Linux. Es optimiert den Prozess der Erstellung von Site-Konfigurationsdateien und SSL-Zertifikaten. Dieser Artikel führt Sie durch den Prozess der Installation von Caddy auf einem Ubuntu-Linux-Server. Darüber hinaus erfahren Sie, wie Sie mit Caddy eine einfache Webseite sowie einen SSL-Reverse-Proxy bereitstellen.

Warum Caddy als Webserver verwenden?

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

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

Gut zu wissen: Erfahren Sie, wie Sie den Fehler „404 Not Found“ in Nginx beheben können.

Caddy installieren

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

sudo apt install curl debian-keyring debian-archive-keyring

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

curl -fsSL 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' |  sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg

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

curl -fsSL 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' |  sudo tee /etc/apt/sources.list.d/caddy.list

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

sudo apt update && sudo apt upgrade

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

Betreiben Sie Ihre erste Caddy-Website

Um Ihre erste Website auszuführen, erstellen Sie den Stammordner Ihrer Website in Ihrem Home-Verzeichnis:

mkdir ~/meine-erste-website && cd ~/meine-erste-website

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

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

 Hallo Welt!

Hallo Welt!

Hallo MakeTechEasier!

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

Caddy-Dateiserver --listen :8080

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

Erstellen einer Website mit Caddyfiles

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

sudo rm /etc/caddy/Caddyfile && sudo nano /etc/caddy/Caddyfile

Fügen Sie den folgenden Codeblock in Ihr neues Caddyfile ein:

your-domain.com { redir https://www.  {host}{uri} } www.your-domain.com { root * /var/www/html file_server }

Notiz: Sie können mit Caddyfiles auch eine reine LAN-Website hosten, indem Sie „your-domain.com“ durch „localhost“ ersetzen.

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

sudo mkdir /var/www/html/ sudo cp ~/my-first-website/index.html /var/www/html

Gehen Sie zu Ihrem DNS-Registrar und stellen Sie sicher, dass Ihre Root- und WWW-Subdomains entweder über einen A- oder AAAA-Eintrag verfügen, der auf die IPv4- und IPv6-Adressen Ihres Computers verweist.

Notiz: Sie müssen keine DNS-Einstellungen für reine LAN-Websites anpassen, da Caddy dafür ein selbstsigniertes Zertifikat generiert.

Aktivieren Sie den integrierten Caddy-Dienst auf Ihrem Computer:

sudo systemctl enable --now Caddy

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

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 das Caddyfile Ihres Systems:

sudo nano /etc/caddy/Caddyfile

Fügen Sie den folgenden Codeblock in Ihre Caddyfile ein:

your-domain.com { reverse_proxy 127.0.0.1:LOCAL-PORT }

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

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

sudo systemctl Caddy neu laden

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

Gut zu wissen: Erfahren Sie mehr über die Webverschlüsselung, indem Sie Ihr eigenes SSL-Zertifikat mit OpenSSL erstellen.

Bereitstellung mehrerer Websites und Dienste mit Caddy

Sie können dasselbe Caddyfile auch 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 zu Caddys Download-Seite Geben Sie dann „caddy-dns“ in die Suchleiste ein.

Suchen Sie nach dem DNS-Anbieter, der Ihren Domainnamen 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.

Stoppen Sie den Caddy-Dienst mit systemctl:

sudo systemctl deaktivieren --now caddy.service

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

cp /usr/bin/caddy ~/caddy.bin.bak sudo rm /usr/bin/caddy sudo cp ~/Downloads/caddy_linux_amd64_custom /usr/bin/caddy sudo chmod +x /usr/bin/caddy

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

Caddy SSL für Wildcard-Domains aktivieren

Öffnen Sie das Caddyfile Ihres Systems mit Ihrem bevorzugten Texteditor:

sudo nano /etc/caddy/Caddyfile

Fügen Sie den folgenden Codeblock in Ihre Caddyfile ein:

*.your-domain.com { tls { dns digitalocean API-KEY # Ersetzen Sie den Wert von digitalocean durch Ihren DNS-Anbieter.  } @www host www.your-domain.com handle @www { root * /var/www/html file_server } @subdomain host subdomain.your-domain.com handle @uptime { reverse_proxy 127.0.0.1:LOCAL-PORT } handle { abbrechen } }

Besorgen Sie sich einen API-Schlüssel von Ihrem DNS-Anbieter. In DigitalOcean können Sie dies erreichen, indem Sie zu Ihrem DigitalOcean-Dashboard gehen und dann in der linken Seitenleiste der Seite auf „API“ klicken.

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

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

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

Stellen Sie sicher, dass Ihr Domainname über die entsprechenden A- und AAAA-Einträge für Ihre Domain und Subdomain verfügt.

Starten Sie Ihren deaktivierten Caddy-Daemon neu, um Ihre neuen Einstellungen zu übernehmen:

sudo systemctl enable --now Caddy

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

Zu lernen, wie man mit Caddy einfache und sichere Webdienste bereitstellt, ist nur der erste Schritt, um die wunderbare Welt des Selbsthostings unter Linux zu erkunden. Tauchen Sie tiefer in dieses Universum ein, indem Sie mit SimpleLogin Ihren eigenen E-Mail-Aliasserver erstellen.

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

Index
  1. Warum Caddy als Webserver verwenden?
  2. Caddy installieren
  3. Betreiben Sie Ihre erste Caddy-Website
    1. Erstellen einer Website mit Caddyfiles
  4. Erstellen eines SSL-Reverse-Proxys mit Caddy
  5. Bereitstellung mehrerer Websites und Dienste mit Caddy
    1. Caddy SSL für Wildcard-Domains aktivieren

Schreibe einen Kommentar

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

Go up