- - Sådan installeres Caddy Web Server på Linux

Sådan installeres Caddy Web Server på Linux

I disse dage er HTTPS nøglen, når du er vært for et websted. Uden det kunne dine brugere lække meget personlige data fra dit websted til verden. For at løse dette har mange Linux-webmastere brugt LetsEncrypt-værktøjerne, da de gør det meget let at generere et certifikat. For så let som LetsEncrpyt er det stadig, at aktivere det på Nginx eller Apache på Linux kan stadig være lidt af en opgave. Heldigvis er der en bedre måde. Introduktion af Caddy webserveren. Det er webserver, som HTTPS som standard er aktiveret. Hvis du er træt af at kæmpe med SSL-certifikater, kan Caddy være lige det, du har brug for.

Installation af Caddy

Installation af Caddy-webserveren fungerer stort setdet samme, uanset hvilket serveroperativsystem du bruger. Årsagen til, at Caddy er så let at installere, er den af ​​udviklerens valg om at bruge et downloadbart Bash-script til installation af softwaren i stedet for at tilføje tredjepartssoftwarelager eller installere via binære filer.

I denne tutorial bruger vi Ubuntu Server, selvom det at køre Caddy webserver fungerer helt fint også på de fleste andre Linux OS'er, selv desktop. For at starte, skal du sikre dig, at du har Curl app på din Linux-pc. Hvis du ikke gør det, skal du åbne en terminal i din pakkehåndtering efter "krølle" og installere den.

Bemærk: afgør, om du allerede har krøllet ved at køre krølle i terminalen. Hvis dialogboksen “hjælp” vises for programmet, har du det Curl på din Linux-maskine.

curl https://getcaddy.com | bash -s personal

Caddy-webserveren er gratis til personlig brug, men du skal specificere den. Planlægger du at bruge Caddy i en virksomhedsindstilling? Kør installationskommandoen med:

curl https://getcaddy.com | bash -s commercial

Kørsel Curl rør det gennem Bash og starter automatisk installationsprocessen. Caddy-installationsprogrammet tager tid at hente webserveren binært og placere den i / Usr / local / bin / vejviser. Hvis installationen er vellykket, vil du se en meddelelse, der siger "Installeret med succes".

På dette tidspunkt skal du ændre den binære Caddy. Kør følgende kommando i terminalen med sudo privilegier.

sudo setcap cap_net_bind_service=+ep /usr/local/bin/caddy

Konfiguration af Caddy

Caddy er installeret på serveren. Det næste trin i processen er at konfigurere katalogstrukturen. Start med at få en rodterminal. Dette gør ændring af mapper i filsystemet meget hurtigere, da du ikke behøver at indtaste sudo for hver kommando efterfulgt af en adgangskode.

På de fleste systemer kan brugerne logge direkte på rodkontoen med:

su

På Ubuntu-server er Root-kontoen imidlertid låst af sikkerhedsmæssige årsager. For at komme omkring dette skal du få en rodskal med sudo.

sudo -s

Nu hvor vi har root-adgang, skal du oprette de nødvendige mapper til, at Caddy-serveren fungerer korrekt.

mkdir /etc/caddy
mkdir /etc/ssl/caddy

Bemærk: Hvis din server allerede har en / Var / www / katalog, spring dette sidst over mkdir kommando.

mkdir /var/www

Opret derefter en ny “Caddyfile” inde i / Etc / caddie /.

touch /etc/caddy/Caddyfile

Bruger chmod kommandoen, opdater tilladelserne til Caddy-undermappen inde i / Etc / ssl /.

chmod 0770 /etc/ssl/caddy

Endelig chown det / Var / www / vejviser:

chown www-data: /var/www

Caddy Systemd-fil

De fleste servere, især Ubuntu-server, er tungebrug af systemd init-systemet. Da webserveren installeres via Bash-script, er en systemd-fil imidlertid ikke til stede. I stedet skal vi lave vores egne. Brug røre ved kommando til at oprette en ny, tom servicefil.

touch /lib/systemd/system/caddy.service

Åbn det nye caddy.service arkiver og indsæt følgende kode i den:

[Unit]
Description=Caddy HTTP/2 web server
Documentation=https://caddyserver.com/docs
After=network-online.target
Wants=network-online.target

[Service]
Restart=on-failure
StartLimitInterval=86400
StartLimitBurst=5

User=www-data
Group=www-data
; Letsencrypt-issued certificates will be written to this directory.
Environment=CADDYPATH=/etc/ssl/caddy

ExecStart=/usr/local/bin/caddy -log stdout -agree=true -conf=/etc/caddy/Caddyfile -root=/var/tmp
ExecReload=/bin/kill -USR1 $MAINPID

LimitNOFILE=1048576
LimitNPROC=64

PrivateTmp=true
PrivateDevices=true
ProtectHome=true
ProtectSystem=full
ReadWriteDirectories=/etc/ssl/caddy

; The following additional security directives only work with systemd v229 or later.
; They further retrict privileges that can be gained by caddy. Uncomment if you like.
; Note that you may have to add capabilities required by any plugins in use.
;CapabilityBoundingSet=CAP_NET_BIND_SERVICE
;AmbientCapabilities=CAP_NET_BIND_SERVICE
;NoNewPrivileges=true

[Install]
WantedBy=multi-user.target

Der er en masse kode til caddy.service fil, så gør dit bedste for at sikre, at alt er der. Når du er sikker, skal du gemme ændringerne ved at trykke på Ctrl + X tastaturkombination. Gå ud af redaktøren med Ctrl + X.

systemctl enable caddy.service
systemctl start caddy.service

Efter opsætning af systemd skal alt være klar til at gå.

Opsætning af domæner

Caddy, som enhver anden webserver, har brug for en smule konfiguration, før den bruges. Start med at oprette en domænemappe:

Bemærk: Sørg for at omdøbe “test-domain.org” med dit domæne.

mkdir -p /var/www/test-domain.org/

Rediger derefter filen Caddyfile vi oprettede tidligere.

nano /etc/caddy/Caddyfile

Indsæt følgende kode for at aktivere dit nye domæne:

my-domain.com {
root /var/www/test-domain.org
}

Genstart Caddy systemd-tjenesten for at gemme ændringerne. Når tjenesten er færdig med at genstarte, er Caddy klar til brug på din server.

systemctl restart caddy.service
</ P>

Kommentarer