Hvordan være vert for et nettsted med HTTPS ved å bruke Caddy på Linux


En webserver er en applikasjon på serversiden designet for å behandle HTTP-forespørsler mellom klient og server. HTTP er den grunnleggende og svært mye brukte nettverksprotokollen.

Apache HTTP Server spilte en viktig rolle i utformingen av hva nettet er i dag. Den alene har en markedsandel på 37,3 %. Nginx kommer på andreplass på listen med en markedsandel på 32,4 %. Microsoft IIS og LiteSpeed kommer på nummer 3 og 4 med en markedsandel på henholdsvis 7,8 % og 6,9 %.

Nylig kom jeg over en nettserver som heter Caddy. Da jeg prøvde å spørre om funksjonene og distribuerte det til testing, må jeg si det er fantastisk. En webserver som er bærbar og ikke trenger noen konfigurasjonsfil. Jeg syntes det er et veldig kult prosjekt og ville dele det med dere. Her har vi gitt Caddy en sjanse!

Hva er Caddy?

Caddy er et alternativ til en apache-nettserver som er enkel å konfigurere og bruke. Matthew Holt – Prosjektlederen for Caddy hevder at Caddy er en webserver for generell bruk, hevder å være designet for mennesker og at den sannsynligvis er den eneste i sitt slag.

Caddy er den eneste første webserveren som kan skaffe og fornye SSL/TLS-sertifikater automatisk ved hjelp av La oss kryptere.

Egenskaper til Caddy

  1. Raske HTTP-forespørsler ved hjelp av HTTP/2.
  2. Kompetent webserver med minst mulig konfigurasjon og problemfri distribusjon.
  3. TLS-kryptering sikrer kryptering mellom kommuniserende applikasjoner og brukere over Internett. Du kan bruke dine egne nøkler og sertifikater.
  4. Enkel å distribuere/bruke. Bare én enkelt fil og ingen avhengighet av noen plattform.
  5. Ingen installasjon nødvendig.
  6. Bærbare kjørbare filer.
  7. Kjør på flere CPUer/kjerner.
  8. Avansert WebSockets-teknologi – interaktiv kommunikasjonsøkt mellom nettleser og server.
  9. Server Markdown-dokumenter på farten.
  10. Full støtte for den nyeste IPv6.
  11. Oppretter en logg i et tilpasset format.
  12. Server FastCGI, omvendt proxy, omskriving og omdirigeringer, ren URL, Gzip-komprimering, katalogsurfing, virtuelle verter og overskrifter.
  13. Tilgjengelig for alle kjente plattformer - Windows, Linux, BSD, Mac, Android.

Hva gjør caddie annerledes?

  1. Caddy har som mål å betjene nettet slik det skal være i 2020 og ikke tradisjonell stil.
  2. Den er designet ikke bare for å betjene HTTP-forespørsler, men også til mennesker.
  3. Lastet med de nyeste funksjonene – HTTP/2, IPv6, Markdown, WebSockets, FastCGI, maler og andre ferdige funksjoner.
  4. Kjør de kjørbare filene uten å måtte installere den.
  5. Detaljert dokumentasjon med minst mulig teknisk beskrivelse.
  6. Utviklet med tanke på behovet og brukervennligheten til designere, utviklere og bloggere.
  7. Support Virtual Host – Definer så mange nettsteder du vil.
  8. Passer for deg – uansett om nettstedet ditt er statisk eller dynamisk. Hvis du er et menneske, er det noe for deg.
  9. Du fokuserer på hva du skal oppnå og ikke hvordan du oppnår det.
  10. Tilgjengelighet av støtte for de fleste plattformer – Windows, Linux, Mac, Android, BSD.
  11. Vanligvis har du én Caddy-fil per side.
  12. Sett opp på mindre enn 1 minutt, selv om du ikke er så mye datamaskinvennlig.
Testmiljø

Jeg skal teste den på CentOS-serveren, samt Debian-serveren, men de samme instruksjonene fungerer også på RHEL og Debian baserte distribusjoner. For begge serverne skal jeg bruke 64-bit kjørbare filer.

Operating Systems: CentOS 8 and Debian 10 Buster
Caddy Version: v2.0.0

Installasjon av Caddy Web Server i Linux

Uansett du er på hvilken plattform og hvilken type arkitektur du bruker, tilbyr caddy klare til bruk binære pakker, som kan installeres ved å bruke standard pakkebehandling som vist.

Installer Caddy i Fedora, RedHat, CentOS

Vi skal installere den nyeste versjonen av Caddy-nettserveren fra CORP-depotet under Fedora eller RHEL/CentOS 8.

dnf install 'dnf-command(copr)'
dnf copr enable @caddy/caddy
dnf install caddy

RHEL/CentOS 7 bruker du følgende kommandoer.

yum install yum-plugin-copr
yum copr enable @caddy/caddy
yum install caddy

Installer Caddy i Debian og Ubuntu

echo "deb [trusted=yes] https://apt.fury.io/caddy/ /" \
    | sudo tee -a /etc/apt/sources.list.d/caddy-fury.list
sudo apt update
sudo apt install caddy

Når caddie-webserveren er installert, kan du starte, aktivere og sjekke statusen til tjenesten ved å bruke følgende systemctl-kommandoer.

systemctl start caddy
systemctl enable caddy
systemctl status caddy

Åpne nå nettleseren din og pek nettleseren til følgende adresse, og du skal kunne se caddiens velkomstside.

http://Server-IP
OR
http://yourdomain.com

Sette opp domener med Caddy

For å sette opp et domene må du først peke domenets A/AAAA DNS-poster til denne serveren i DNS-kontrollpanelet. Deretter oppretter du en dokumentrotkatalog for nettstedet ditt "example.com" under mappen /var/www/html som vist.

mkdir /var/www/html/example.com

Hvis du bruker SELinux, må du endre filsikkerhetskonteksten for nettinnhold.

chcon -t httpd_sys_content_t /var/www/html/example.com -R
chcon -t httpd_sys_rw_content_t /var/www/html/example.com -R

Åpne og rediger nå konfigurasjonsfilen for caddy på /etc/caddy/Caddyfile.

vim /etc/caddy/Caddyfile

Erstatt :80 med domenenavnet ditt og endre nettstedets rot til /var/www/html/example.com som vist.

Last inn Caddy-tjenesten på nytt for å lagre konfigurasjonsendringen.

systemctl reload caddy

Lag en hvilken som helst HTML-side (du kan lage din egen) og lagre siden under dokumentrotkatalogen for nettstedet ditt.

touch /var/www/html/example.com/index.html

Legg til følgende eksempel på HTML-koden til nettstedets indeksside.

echo '<!doctype html><head><title>Caddy Test Page at TecMint</title></head><body><h1>Hello, World!</h1></body></html>' | sudo tee /var/www/html/index.html

Besøk nå nettstedet ditt igjen for å se siden din.

Hvis alt er riktig konfigurert, vil domenet ditt bli servert over en HTTPS-protokoll som indikerer at tilkoblingen din er sikker.

Konklusjon

Hvis du er nybegynner og ønsker å sette opp en webserver uten å bli skitten med konfigurasjon, er dette verktøyet for deg. Selv om du er en erfaren bruker som trenger umiddelbar og enkel webserver, er Caddy verdt et forsøk. Med litt konfigurasjon kan du også angi mappetillatelse, kontrollere autentisering, feilsider, Gzip, HTTP-omdirigering og andre, hvis du trenger å sette opp en mer kompleks og avansert webserver.

Ikke ta Caddy som erstatning for Apache eller Nginx. Caddy er ikke designet for å håndtere høytrafikk produksjonsmiljøer. Den er designet for et raskt oppsett av webserver når du bekymrer deg for hastighet og pålitelighet.

Referanser

Komplett brukerveiledning/Full dokumentasjon av Caddy Web Server

Vi har tatt med denne dokumentasjonen som tar sikte på rask gjennomgang og installasjonsinstruksjoner med bilder der det er nødvendig. Hvis du kommer over noen fordeler/ulemper med prosjektet eller forslag, kan du gi oss det i kommentarfeltet.

For meg er dette prosjektet for ungt og fungerer fortsatt feilfritt og virker kraftfullt og lovende. Det største plusspunktet jeg ser er at caddie ikke trenger å ha med seg konfigurasjonsfilen overalt. Den tar sikte på å gi det beste fra Nginx, Lighttpd, vagrant og Websocketd. Det er alt fra min side. Hold deg tilkoblet Tecmint. Kudos