Caddie

Installerar Caddy Server på Ubuntu

Installerar Caddy Server på Ubuntu
TLS är viktigt för alla webbplatser och webbappar där ute. Om det finns en app som använder HTTP eller gör e-post, behöver den TLS. TLS säkerställer integritet, integritet och äkthet hos ditt innehåll. Med gratis TLS-certifikatmyndigheter som Let's Encrypt och CloudFlare blir TLS mer till en norm snarare än till ett specialfall.Att slå på TLS är dock ofta en mycket komplicerad process. Det har också massiva säkerhetsförgreningar, om konfigurationerna hanteras felaktigt eller om himlen förbjuder läcker du av misstag din privata TLS-nyckel. För att mildra några av dessa risker och för att göra våra liv mycket enklare finns det en ny webbserver i staden. Caddy talar HTTP / 2, och det kommer med TLS aktiverat ur lådan. Det betyder att du inte behöver ställa in HTTP till HTTPS-omdirigeringar manuellt eller oroa dig för en gallizion-chiffersvit som du aldrig har sett förut.

Med Caddy-webbservern får du HTTPS eller ingenting. Så låt oss se hur du kan installera Caddy på Ubuntu och konfigurera den för att betjäna din webbapp. Vi kommer att få våra TLS-certifikat från LetsEncrypt.

Uppstart

Antag att du har en VPS med IP-adress: 10.20.30.40 och en FQDN-underdomän.exempel.com vem är En post pekar på denna IP.
VPS kör Ubuntu 18.04 LTS-serverutgåva och följande konfigurationer görs som rotanvändare.

Steg 1: Installera Caddy-webbservern

Caddy är skrivet i Go och kan köras som en fristående körbar binär. Det finns dock olika plugins som du kan bygga in i det för specifika DNS-servrar, etc. Vi kommer att installera den vanliga binära utan någon plugin så det fungerar i alla anpassningar.

För att få din binära besök deras officiella nedladdningssida och välj alla plugins och telemetri som du behöver. Nedan kommer det att finnas ett bash-kommando för att ladda ner och placera caddy-serverns binära på rätt plats. Som root-användare kör du:

$ curl https: // getcaddy.com | bash -s personliga

När det är gjort kan vi lokalisera binären genom att köra:

$ var är caddy
caddy: / ​​usr / local / bin / caddy

Om du någonsin behöver ta bort servern eller uppdatera den med nyare körbar, vet du nu var du ska leta.

Steg 2: Testa din webbplats

Om du inte har en webbplats, skapar du bara en tom mapp och kör kommandona där inne. Du kan få ett fel 404 i din webbläsare men serverinstallationen kan fortfarande testas. Om du har en webbplats som går igenom katalogen där webbroot för din webbplats finns. Som ett typiskt exempel kommer jag att välja / var / www / min webbplats som ett exempel med följande index.html lagrad inuti den.

/ var / www / minwebbplats / index.html



Denna sida serveras av Caddy Server


Denna sida serveras av Caddy Server


Detta är ett stycke.



Detta räcker för att komma igång. Nu i samma katalog som detta index.html-sida, kör följande kommando:

$ caddy
Aktiverar sekretessfunktioner ... gjort.
http: //: 2015

VARNING: Filbeskrivningsgräns 1024 är för låg för produktionsservrar. Minst 8192 rekommenderas. Fixa med 'ulimit -n 8192'.

Lämna caddy igång i detta tillstånd.

Du kan gå till din servers offentliga IP på portnummer 2015 för att testa detta: http: // 10.20.30.40: 2015 se till att din brandvägg inte blockerar den här porten.

Och du kommer att se det indexet.html serveras automatiskt. Detta följer den gammala konventionen att varje webbplats första sida heter index som de flesta webbservrar som Nginx, Apache och till och med Caddy serverar som första sidan, även om du inte anger den här sidan med / index.html i slutet av webbadressen.

Steg 3: Konfigurera HTTPS

Nu när du har bekräftat att din webbplats verkligen fungerar med Caddy och kan serveras med den är det dags att ställa in HTTPS. För att göra detta kan du använda kommandoradsgränssnittet eller använda en konfigurationsfil som kallas Caddyfile. Vi kommer att använda kommandoraden först.

Kör följande kommando i samma katalog som din webbplats:

$ caddy-värdunderdomän.exempel.com
## För första gången kommer den att be dig om din e-postadress så att du kan få
meddelande om förnyelse av certifikat från LetsEncrypt

Produktion:

Aktiverar sekretessfunktioner ..
Dina webbplatser kommer att serveras via HTTPS automatiskt med Let's Encrypt.
Genom att fortsätta samtycker du till Let's Encrypt Subscriber Agreement på:
https: // letsencrypt.org / dokument / LE-SA-v1.2 november-15-2017.pdf
Ange din e-postadress för att underteckna avtalet och för att bli meddelad
vid problem. Du kan lämna det tomt, men vi rekommenderar det inte.
E-postadress: [e-postskyddad]
..

Det är allt! Din webbplats är nu igång. Du kan besöka underdomän.exempel.com och den omdirigeras automatiskt till HTTPS utan något anpassat portnummer eller andra nyanser.

Det är så enkelt! Du kan CTRL + C för att stoppa servern, nästa gång kommer det bara att återanvända detta certifikat.

Steg 4: Skriv din Caddyfile

Ovanstående metod är bra för experimentella användningsfall där du bara testar vattnet. Men om du vill ha en webbserver som kör som bakgrundsprocess måste du skriva en Caddyfile och be webbservern att använda den här konfigurationen för att köra din server.

Detta är det enklaste exemplet för samma webbplats som vi var värd ovan:

underdomän.exempel.com
root / var / www / mysite

Rotdirektivet berättar för webbservern var webbplatsen finns. Du kan inte komma ur den här katalogen från klientsidan. Det är i allmänhet en bra idé att placera din caddy-fil var som helst utom i den här webroot. Du kan placera den i / etc / mappen eller din hemkatalog. Om filen till exempel skapas på / etc / Caddyfile kan du be servern att använda den här konfigurationen genom att köra kommandot:

$ caddy -conf / etc / Caddyfile

Det finns flera direktiv som du kan använda för att finjustera din server. Du kan aktivera loggning, komprimering, omvänd proxy, etc. Den officiella dokumentationen är ett bra ställe att börja leta efter direktiv som är relaterade till ditt användningsfall. Här är ett annat exempel där två webbplatser med två olika domännamn serveras:

underdomän.exempel.com
root / var / www / mysite

underdomän2.exempel.com
root / var / www / mysite2
gzip
logga ... / åtkomst.logga

Direktivet gzip möjliggör komprimering om klienten stöder det. Detta förbättrar prestandan eftersom mer data kan skickas över bandbredden och samma tidsintervall. Loggning hjälper till med felsökning och spårning av nätverksaktivitet.

Slutsats

Den största styrkan för Caddy-webbservern är dess enkla att skriva och läsa konfigurationsfil och dess flexibilitet över flera plattformar. Men på grund av dess konstiga licensiering är servern inte helt öppen källkod. Källkoden är öppen källkod, och du kan helt kompilera den själv och använda den resulterande körbara filen, men den binära som du får från den officiella webbplatsen är inte avsedd att användas för kommersiella ändamål utan rätt licens.

Detta tar oss tillbaka till frågan om komplikationer där vi istället för att hantera bara konfigurationsfiler måste hantera källkodssammanställningen och besegra syftet med enkel att använda webbserver. Låt oss veta om du har några tankar om Caddy och om någon av dina webbplatser körs ovanpå.

Mus Microsoft Sculpt Touch Wireless Mouse Review
Microsoft Sculpt Touch Wireless Mouse Review
Jag har nyligen läst om Microsoft Sculpt Touch trådlös mus och bestämde mig för att köpa den. Efter att ha använt den ett tag bestämde jag mig för att...
Mus AppyMouse styrplatta och muspekare för Windows-surfplattor
AppyMouse styrplatta och muspekare för Windows-surfplattor
Surfplattanvändare saknar ofta muspekaren, särskilt när de brukar använda bärbara datorer. Pekskärmen Smartphones och surfplattor har många fördelar o...
Mus Mellan musknappen fungerar inte i Windows 10
Mellan musknappen fungerar inte i Windows 10
De mittknappen hjälper dig att bläddra igenom långa webbsidor och skärmar med mycket data. Om det slutar, kommer du sluta använda tangentbordet för at...