S web poslužiteljem Caddy dobivate HTTPS ili ništa. Pa da vidimo kako možete instalirati Caddy na Ubuntu i konfigurirati ga da služi vašoj web aplikaciji. Naše TLS certifikate dobivat ćemo od LetsEncrypt.
Postaviti
Pretpostavimo da imate VPS s IP adresom: 10.20.30.40 i FQDN poddomena.primjer.com who's A record pokazuje na ovu IP adresu.
VPS ima Ubuntu 18.04 LTS izdanje poslužitelja i sljedeće konfiguracije rade se kao korijenski korisnik.
Korak 1: Instalacija Caddy web poslužitelja
Caddy je napisan u programu Go i može se izvoditi kao samostalna izvršna binarna datoteka. Međutim, postoje različiti dodaci koje možete u njih ugraditi za određene DNS poslužitelje itd. Instalirat ćemo obični binarni program bez ikakvog dodatka, tako da radi na svim prilagodbama.
Da biste dobili svoju binarnu datoteku, posjetite njihovu službenu stranicu za preuzimanje i odaberite sve potrebne dodatke i telemetriju. Ispod će biti naredba bash za preuzimanje i postavljanje binarnog programa caddy poslužitelja na pravo mjesto. Kao root korisnik pokrenite:
$ curl https: // getcaddy.com | bash-osobniNakon što to učinimo, možemo pronaći binarni sustav, pokretanjem:
$ whereis caddycaddy: / usr / local / bin / caddy
Ako ikada trebate ukloniti poslužitelj ili ga ažurirati novijim izvršnim programom, sada znate gdje potražiti.
Korak 2: Testiranje vaše web stranice
Ako nemate web mjesto, samo stvorite praznu mapu i tamo pokrenite naredbe. Možda ćete dobiti pogrešku 404 u svom pregledniku, ali postavke poslužitelja i dalje možete testirati. Ako imate web mjesto koje prelazi u direktorij u kojem se nalazi korijen vašeg web mjesta. Kao tipičan primjer, odabrat ću / var / www / mysite kao primjer sa sljedećim indeksom.html pohranjen u njemu.
/ var / www / mysite / index.htmlOvu stranicu poslužuje Caddy Server
Ovo je odlomak.
Ovo je dovoljno za početak. Sada u istom direktoriju kao i ovaj indeks.html stranicu, pokrenite sljedeći komad:
$ caddyAktiviranje značajki privatnosti ... gotovo.
http: //: 2015
UPOZORENJE: Ograničenje deskriptora datoteke 1024 prenisko je za proizvodne poslužitelje. Preporučuje se najmanje 8192. Popravite s 'ulimit -n 8192'.
Ostavite Caddyja da radi u ovom stanju.
Možete otvoriti javnu IP adresu svog poslužitelja na broju porta 2015 da biste to testirali: http: // 10.20.30.40: 2015 pobrinite se da vaš vatrozid ne blokira ovaj priključak.
I vidjet ćete taj indeks.html se automatski poslužuje. To slijedi prastaru konvenciju da se prva stranica bilo kojeg web mjesta naziva indeksom koji većina web poslužitelja poput Nginxa, Apachea, pa čak i Caddyja služi kao prva stranica, čak i kada ovu stranicu ne navedete pomoću / index.html na kraju URL-a.
Korak 3: Postavljanje HTTPS-a
Sad kad ste potvrdili da vaše web mjesto doista radi s Caddyjem i da se s njim može poslužiti, vrijeme je da postavite HTTPS. Da biste to učinili, možete koristiti sučelje naredbenog retka ili koristiti konfiguracijsku datoteku koja se naziva Caddyfile. Prvo ćemo upotrijebiti naredbeni redak.
U istom direktoriju kao i vaše web mjesto pokrenite sljedeću naredbu:
$ caddy -domena domene.primjer.com## Prvi put će vas pitati za vašu adresu e-pošte da biste je mogli dobiti
obavijest o obnavljanju certifikata iz LetsEncrypt
Izlaz:
Aktiviranje značajki privatnosti ..Vaše će se web stranice automatski posluživati putem HTTPS-a pomoću Let's Encrypt.
Nastavkom prihvaćate Ugovor o pretplatničkom šifriranju na:
https: // letsencrypt.org / documents / LE-SA-v1.2. studenoga-15-2017.pdf
Unesite svoju e-adresu kako biste označili sporazum i kako biste bili obaviješteni
u slučaju problema. Možete ga ostaviti praznim, ali ne preporučujemo.
Adresa e-pošte: [zaštićena e-poštom]
..
To je to! Vaša web stranica je sada pokrenuta. Možete posjetiti poddomenu.primjer.com i automatski će biti preusmjeren na HTTPS bez ikakvog prilagođenog broja porta ili drugih nijansi.
To je tako lako! Možete CTRL + C zaustaviti poslužitelj, sljedeći put će samo ponovo upotrijebiti ovaj certifikat.
Korak 4: Pisanje datoteke Caddy
Gornja metoda dobra je za slučajeve eksperimentalne upotrebe kada samo ispitujete vodu. Ali ako želite pokrenut web poslužitelj kao pozadinski postupak, morate napisati Caddyfile i reći web poslužitelju da koristi ovu konfiguraciju za pokretanje vašeg poslužitelja.
Ovo je najjednostavniji primjer za isto web mjesto koje smo gore ugostili:
poddomena.primjer.comroot / var / www / mysite
Korijenska direktiva govori web poslužitelju gdje se nalazi web mjesto. Ne možete izaći iz ovog direktorija s klijentske strane. Općenito je dobra ideja smjestiti svoju datoteku caddy bilo gdje, osim unutar ovog webroot-a. Možete ga smjestiti u mapu / etc / ili u svoj kućni direktorij. Na primjer, ako je datoteka kreirana u / etc / Caddyfile, možete naredite poslužitelju da koristi ovu konfiguraciju pokretanjem naredbe:
$ caddy -conf / etc / CaddyfilePostoji više smjernica koje možete koristiti za fino podešavanje poslužitelja. Možete omogućiti bilježenje, kompresiju, obrnuti proxy, itd. Službena dokumentacija dobro je mjesto za početak traženja smjernica povezanih s vašim slučajem upotrebe. Evo još jednog primjera gdje se poslužuju dvije web stranice s dva različita imena domena:
poddomena.primjer.comroot / var / www / mysite
poddomena2.primjer.com
root / var / www / mysite2
gzip
zapisnik ... / pristup.zapisnik
Direktiva gzip omogućuje kompresiju, ako je klijent podržava. To poboljšava performanse jer se više podataka može poslati kroz širinu pojasa i isti interval vremena. Zapisivanje pomaže u otklanjanju pogrešaka i praćenju mrežnih aktivnosti.
Zaključak
Najveća snaga Caddy web poslužitelja je lako pisanje i čitanje konfiguracijske datoteke i fleksibilnost na više platformi. Međutim, zbog svog čudnog licenciranja, poslužitelj nije strogo otvoren izvor. Izvorni kôd je otvoreni izvor, a možete ga potpuno sami sastaviti i koristiti rezultirajuću izvršnu datoteku, ali binarni zapis koji dobijete sa službene web stranice nije namijenjen upotrebi u komercijalne svrhe bez odgovarajuće licence.
To nas vraća na pitanje komplikacija gdje se, umjesto da radimo samo s konfiguracijskim datotekama, moramo suočiti i sa kompilacijom izvornog koda, poražavajući svrhu jednostavnog web poslužitelja. Javite nam imate li kakvih razmišljanja o Caddyju i prikazuje li se na njemu neka od vaših web stranica.