- - Jak zainstalować Caddy Web Server w systemie Linux

Jak zainstalować Caddy Web Server w systemie Linux

Obecnie HTTPS jest kluczem do hostingu strony internetowej. Bez tego użytkownicy mogą wyciekać bardzo osobiste dane z Twojej witryny na cały świat. Aby rozwiązać ten problem, wielu webmasterów Linuksa zaczęło używać narzędzi LetsEncrypt, ponieważ bardzo łatwo generują certyfikat. Mimo to, tak proste jak LetsEncrpyt, włączenie go w Nginx lub Apache w systemie Linux może nadal być trochę uciążliwe. Na szczęście istnieje lepszy sposób. Przedstawiamy serwer internetowy Caddy. Jest to serwer WWW z domyślnie włączoną HTTPS. Jeśli masz dość kłopotów z certyfikatami SSL, Caddy może być właśnie tym, czego potrzebujesz.

Instalowanie Caddy

Instalowanie serwera WWW Caddy działa właściwieto samo bez względu na używany system operacyjny serwera. Powodem, dla którego Caddy jest tak łatwa w instalacji, jest wybór przez dewelopera użycia pobieranego skryptu Bash do zainstalowania oprogramowania, zamiast dodawania repozytoriów oprogramowania innych firm lub instalowania za pomocą plików binarnych.

W tym samouczku będziemy używać Ubuntu Server, chociaż uruchomienie Caddy Web Server będzie działało dobrze również w większości innych systemów operacyjnych Linux, nawet stacjonarnych. Na początek upewnij się, że masz Kędzior aplikacja na komputerze z systemem Linux. Jeśli nie, otwórz terminal, wyszukaj w menedżerze pakietów „curl” i zainstaluj go.

Uwaga: sprawdź, czy masz już curl, uruchamiając kędzior w terminalu. Jeśli pojawi się okno dialogowe „pomocy” dla programu, masz Kędzior na twoim komputerze z systemem Linux.

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

Serwer WWW Caddy jest darmowy do użytku osobistego, ale musisz go określić. Planujesz używać Caddy w środowisku korporacyjnym? Uruchom polecenie instalacji za pomocą:

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

Uruchomienie Curl przepuści go przez Bash i automatycznie rozpocznie proces instalacji. Instalator Caddy pobierze plik binarny serwera WWW i umieści go w nim / usr / local / bin / informator. Jeśli instalacja się powiedzie, zobaczysz komunikat „Instalacja zakończona powodzeniem”.

W tym momencie musisz zmodyfikować plik binarny Caddy. Uruchom następujące polecenie w terminalu, używając sudo przywileje.

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

Konfigurowanie Caddy

Caddy jest zainstalowany na serwerze. Następnym krokiem w tym procesie jest skonfigurowanie struktury katalogów. Zacznij od uzyskania terminala głównego. W ten sposób modyfikowanie folderów w systemie plików będzie znacznie szybsze, ponieważ nie musisz wchodzić sudo dla każdego polecenia, po którym następuje hasło.

W większości systemów użytkownicy mogą logować się bezpośrednio do konta root za pomocą:

su

Jednak na serwerze Ubuntu konto root jest zablokowane ze względów bezpieczeństwa. Aby obejść ten problem, zdobądź powłokę root za pomocą sudo.

sudo -s

Teraz, gdy mamy dostęp do konta root, utwórz katalogi niezbędne do prawidłowego działania serwera Caddy.

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

Uwaga: jeśli Twój serwer ma już / var / www / katalogu, pomiń ten ostatni mkdir Komenda.

mkdir /var/www

Następnie utwórz nowy plik „Caddyfile” / etc / caddy /.

touch /etc/caddy/Caddyfile

Używając chmod polecenie, zaktualizuj uprawnienia do podfolderu Caddy wewnątrz / etc / ssl /.

chmod 0770 /etc/ssl/caddy

W końcu, chown ten / var / www / informator:

chown www-data: /var/www

Plik systemowy Caddy

Większość serwerów, szczególnie serwer Ubuntu, jest ciężkaużycie systemowego systemu inicjującego. Ponieważ jednak serwer WWW instaluje się za pomocą skryptu Bash, plik systemowy nie jest obecny. Zamiast tego musimy stworzyć własne. Użyj dotknąć polecenie, aby utworzyć nowy, pusty plik usługi.

touch /lib/systemd/system/caddy.service

Otwórz nowy caddy.service plik i wklej do niego następujący kod:

[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

Istnieje wiele kodów dla caddy.service plik, więc postaraj się upewnić, że wszystko tam jest. Gdy masz pewność, zapisz zmiany, naciskając przycisk Ctrl + X kombinacja klawiatury. Wyjdź z edytora za pomocą Ctrl + X.

systemctl enable caddy.service
systemctl start caddy.service

Po skonfigurowaniu systemd wszystko powinno być gotowe do pracy.

Konfigurowanie domen

Caddy, jak każdy inny serwer WWW, wymaga nieco konfiguracji przed użyciem. Zacznij od utworzenia folderu domeny:

Uwaga: pamiętaj o zmianie nazwy „test-domain.org” w swojej domenie.

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

Następnie edytuj plik Plik Caddyfile stworzyliśmy wcześniej.

nano /etc/caddy/Caddyfile

Wklej następujący kod, aby aktywować nową domenę:

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

Zrestartuj usługę systemową Caddy, aby zapisać zmiany. Po zakończeniu ponownego uruchomienia usługi Caddy jest gotowy do użycia na serwerze.

systemctl restart caddy.service
</p>

Komentarze