Kako instalirati i konfigurirati Apache s Let's Encrypt TLS/SSL na Debian 11 Bullseye

apaš, također poznat kao HTTP poslužitelj Apache, je jedna od najčešće korištenih aplikacija web poslužitelja na globalnoj razini u posljednjih nekoliko desetljeća. To je besplatni softver za web aplikacije otvorenog koda koji održava Apache Software Foundation. Apache nudi neke moćne značajke s dinamički učitavim modulima, jednostavnu integraciju s drugim softverom i rukovanje statičkim datotekama, među ostalim popularnim značajkama.

U sljedećem tutorialu naučit ćete kako instalirati Apache web poslužitelj na Debian 11 Bullseye.

Preduvjeti

  • Preporučeni OS: Debian 11 Bullseye
  • Korisnički račun: Korisnički račun sa sudo privilegije or root pristup (su naredba).

Ažuriranje operativnog sustava

Ažurirajte svoj Debian 11 Bullseye operativni sustav kako biste bili sigurni da su svi postojeći paketi ažurirani:

sudo apt update && sudo apt upgrade

Root ili Sudo pristup

Prema zadanim postavkama, kada kreirate svoj račun pri pokretanju s Debianom u usporedbi s drugim distribucijama, on ne dobiva automatski status sudoers. Morate imati pristup root lozinka koristiti naredba su ili posjetite naš vodič na Kako dodati korisnika u Sudoers na Debianu.

Tutorial će koristiti sudo naredba i pod pretpostavkom da imate sudo status. Ako niste postavili sudo korisnika, upotrijebite sljedeću naredbu da se prijavite na root da biste nastavili.

su

Oglas


Metoda 1. Instalirajte Apache iz Debian repozitorija

Prva opcija za instaliranje Apachea je korištenje zadanog Debianovog spremišta. Ovo je praktičnije za većinu korisnika jer je vrlo stabilno i sigurno.

Da biste instalirali Apache, otvorite svoj terminal i izvedite sljedeću naredbu:

sudo apt install apache2 -y

Zatim provjerite je li instalacija bila uspješna provjerom verzije Apachea:

sudo apache2 --version

Primjer rezultata:

Server version: Apache/2.4.51

Provjerite radi li Apache2 ispravno koristeći sljedeće systemctl naredba:

systemctl status apache2

Primjer izlaza ako je sve u redu:

Kako instalirati i konfigurirati Apache s Let's Encrypt TLS/SSL na Debian 11 Bullseye

Metoda 2. Instalirajte najnoviji Apache iz Repozitorija Ondřej Surý

Prema zadanim postavkama, Apache je dostupan unutar Debianova softverska spremišta, što olakšava instalaciju. Međutim, kao što mnogi znaju kod Debiana, često može nedostajati iza onoga što je trenutno, ne toliko zbog sigurnosnih rizika. Ipak, nedostaju novije značajke i poboljšanja.

Preporučuje se korisnicima koji žele instalirati najnoviji Apache Ondřeja Surýja verzija Apachea 2, koji je najsuvremeniji i unaprijed izgrađen s dodatno široko korištenim modulima.

Prvo, ako nemate instaliran curl, upotrijebite sljedeću naredbu:

sudo apt install curl -y

Da biste dodali spremište, koristite sljedeću naredbu u svom terminalu:

curl -sSL https://packages.sury.org/apache2/README.txt | sudo bash -x

Ažurirajte svoje spremište tako da odražava novu promjenu:

sudo apt update

Sada kada ste instalirali Apache spremište i ažurirali popis spremišta, instalirajte Apache2 sa sljedećim:

sudo apt install apache2 -y

Instalacija će instalirati sve potrebne ovisnosti.

Nakon instalacije, potvrdite verziju pomoću sljedeće naredbe:

apache2 -v

Primjer rezultata:

Server version: Apache/2.4.51

Imajte na umu da su oba spremišta na istoj verziji u vrijeme vodiča zbog HITNOG ažuriranja CVE-a. Normalno, Ondřej Surý spremište je ispred zadanog Debiana 11 u svakom trenutku.

Provjerite radi li Apache2 ispravno koristeći sljedeće systemctl naredba:

systemctl status apache2

Primjer izlaza ako je sve u redu:

Kako instalirati i konfigurirati Apache s Let's Encrypt TLS/SSL na Debian 11 Bullseye

Oglas


Izborno – Konfigurirajte UFW vatrozid za Apache

Korisnici Debiana koji su instalirali UFW morat će prilagoditi UFW pravila kako bi se omogućio vanjski pristup zadanim web portovima. Srećom, tijekom instalacije, Apache se registrira u UFW-u kako bi osigurao nekoliko profila koji se mogu koristiti za omogućavanje ili onemogućavanje pristupa, što ga čini lakim i brzim za konfiguraciju.

Prema zadanim postavkama, UFW nije instaliran. Ako želite instalirati UFW, izvršite sljedeću naredbu u svom terminalu:

sudo apt install ufw -y

Zatim omogućite UFW. Kada omogućite vatrozid, on će odbiti sve dolazne i dopustiti sve odlazne prema zadanim postavkama.

sudo ufw enable

Prvo navedite profile aplikacije da vidite Apache profile koji su dostupni sljedećom naredbom:

sudo ufw app list

Primjer rezultata:

Available applications:
  Apache
  Apache Full
  Apache Secure

Iz gornjeg izlaza možete birati između tri opcije profila. da ga razbijem, apaš radi na portu 80 (HTTP), Apache Secure radi na portu 443 (HTTPS), i Apache pun je kombinacija dopuštanja oboje. Najčešći je ili Apache Full ili Apache Secure.

Za tutorial, budući da nismo postavili SSL, omogućit ćemo (Apache) profil sljedećom naredbom:

sudo ufw allow 'Apache'

Primjer rezultata:

Rule added
Rule added (v6)

Kao što je gore navedeno, pravila su dodana i za IPV4 i IPV6. Kasnije možete onemogućiti ovaj profil i omogućiti samo siguran ili onemogućiti Apache pravilo i umjesto njega koristiti pravilo Apache Full.

Provjerite Apache web poslužitelj

Sada kada ste instalirali i konfigurirali UFW vatrozid, vrijeme je da testirate je li Apache 2 dostupan i radi li ispravno tako da zatražite stranicu.

Možete pristupiti zadanoj Apache odredišnoj stranici kako biste provjerili radi li softver ispravno preko IP adrese vašeg poslužitelja. Da biste to saznali, ako ne znate, koristite sljedeću naredbu u nastavku:

hostname -I

Trebali biste dobiti natrag internu IP adresu na kojoj se poslužitelj nalazi kao primjer:

###EXAMPLE ONLY###
192.168.50.15 

Možete dobiti 2 do 3 rezultata natrag. Pokušajte svaki od njih dok ne pronađete ispravnu IP adresu.

Ako vam je potrebna vaša javna IP adresa (vanjska), umjesto toga upotrijebite sljedeću naredbu:

curl -4 icanhazip.com

Možda ćete morati instalirati CURL paket ako nedostaje. Da biste to učinili, izvršite sljedeću naredbu:

sudo apt install curl -y

Nakon što dobijete IP adresu svog poslužitelja, otvorite svoj omiljeni internetski preglednik i unesite sljedeće:

http://your_server_ip

Trebali biste dobiti sljedeću stranicu u svom internet pregledniku:

Kako instalirati i konfigurirati Apache s Let's Encrypt TLS/SSL na Debian 11 Bullseye

Čestitamo, instalirali ste Apache 2 web poslužitelj i trenutno radite.

Sljedeći korak je postavljanje virtualnih hostova.


Oglas


Stvorite i ili konfigurirajte virtualne hostove za Apache

Koristeći web-poslužitelj Apache, možete stvoriti virtualne hostove za upravljanje konfiguracijama za više od jedne domene koja se izvodi na jednom poslužitelju. Ako ste prije koristili Nginx, to je ekvivalent blokovima poslužitelja. U primjeru ispod, vodič će stvoriti domenu example-domain.com koju ćete zamijeniti imenom svoje domene.

Prema zadanim postavkama, Apache na Debianu 11 ima jedan blok poslužitelja omogućen prema zadanim postavkama koji je konfiguriran za posluživanje dokumenata iz / Var / www / html imenik. Ako koristite jednu web stranicu, ovaj blok poslužitelja možete izmijeniti tako da odgovara vašem vlastitom. Međutim, ako hostirate više web-mjesta, morate stvoriti novu strukturu imenika za svoje različite domene.

Izradite i/ili Konfigurirajte direktorije

Prvo, otići / Var / www / html direktorij netaknut kao zadani direktorij, a zatim stvorite novi direktorij, na primjer-domain.com, kao u nastavku:

sudo mkdir /var/www/example_domain

Sljedeći korak je dodijeliti vlasništvo direktorija s varijablom okoline $USER:

sudo chown -R $USER:$USER /var/www/example_domain

Obično bi dopuštenja web roots trebala biti ispravno postavljena, a možete ih provjeriti pomoću - Zapovijedam:

ls -l /var/www/example_domain

Primjer rezultata:

drwxr-xr-x 2 joshua joshua 4096 Oct 10 11:46 example_domain

Kao što vidite, imamo dozvolu za drwxr-xr-x, što je ekvivalent chmod 755. Ako nemate postavljeno ovo dopuštenje, pokrenite sljedeću naredbu:

sudo chmod -R 755 /var/www/example_domain

Sada izradite oglednu stranicu index.html koristeći svoj omiljeni uređivač teksta. Tutorial će koristiti nano kao u nastavku:

sudo nano /var/www/example_domain/index.html

U datoteci kopirajte i zalijepite sljedeći kod:

<html>
    <head>
        <title>Welcome to Website!</title>
    </head>
    <body>
        <h1>Success! The virtual host is working! You did not mess it up.</h1>
    </body>
</html>

Spremite datoteku (CTRL+O), zatim izađite (CTRL+X).

Stvorite virtualni host

Sada kada ste stvorili odredišnu stranicu i postavili ispravno vlasništvo i dopuštenja. Sada možete nastaviti stvarati virtualnu host datoteku. Prema zadanim postavkama, sve datoteke virtualnog hosta morat će se nalaziti na / etc / apache2 / web-mjesta dostupna / katalog.

Najprije upotrijebite svoj omiljeni uređivač teksta za stvaranje konfiguracijske datoteke koja se nalazi na /etc/apache2/sites-available/example_domain.conf kao ispod:

sudo nano /etc/apache2/sites-available/example_domain.conf

Sada kopirajte i zalijepite sljedeće u datoteku bloka konfiguracije, napomenu da zamijenite svoju ServerName, ServerAlias, i Korijen dokumenta sa svojim:

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName example_domain
    ServerAlias www.example_domain
    DocumentRoot /var/www/example_domain
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Napomena, ne zaboravite promijeniti potrebne direktive poslužitelja u svoje.

Spremite konfiguracijsku datoteku pomoću (CTRL+O) i izađite sa (CTRL+X).

Omogućite virtualni host

Sada kada imate spremnu konfiguracijsku datoteku virtualnog hosta, vrijeme je da je omogućite. S Apacheom, za razliku od Nginxa, gdje biste stvorili simboličku vezu pomoću naredbe ln -s, Apache koristi svoje alate, kao što će vodič pokazati u nastavku:

Prvo onemogućite postojeću zadanu instaliranu datoteku bloka poslužitelja 000-default.conf s naredbom a2dissite:

sudo a2dissite 000-default.conf

Sada omogućite svoju virtualnu host datoteku s a2mjesto naredba:

sudo a2ensite example_domain.conf

Sada, kao i većina aplikacija web poslužitelja, Apache ima a testno pokretanje funkcija. Prije nego što ga objavite, testirajte svoju konfiguracijsku datoteku pomoću sljedeće naredbe:

sudo apache2ctl configtest

Ako sve radi ispravno, primjer bi trebao biti:

Syntax OK

Sada ponovno pokrenite Apache web-poslužitelj da bi vaš novi virtualni host postao aktivan sljedećom naredbom:

sudo systemctl restart apache2

Apache bi trenutno trebao posluživati ​​odredišnu stranicu koju ste izradili za svoju novu domenu. Da biste to testirali, otvorite svoj internetski preglednik i upišite naziv svoje domene HTTP://primjer_domena gdje biste trebali dobiti sljedeću odredišnu stranicu koju ste izradili u datoteci index.html:

Kako instalirati i konfigurirati Apache s Let's Encrypt TLS/SSL na Debian 11 Bullseye

Čestitamo, uspješno ste stvorili svoj virtualni host i učinili ga da uspješno radi na vašoj domeni.

Sigurni Apache s Let's Encrypt SSL Free certifikatom

U idealnom slučaju, željeli biste pokrenuti svoj Apache HTTPS pomoću SSL certifikata. Najbolji način da to učinite je korištenje Hajdemo šifrirati, besplatno, automatizirano i otvoreno certifikacijsko tijelo koje vodi neprofitna grupa za istraživanje internetske sigurnosti (ISRG).

Prvo, instalirajte certbot paket kako slijedi:

sudo apt install python3-certbot-apache -y

Nakon instalacije, pokrenite sljedeću naredbu da započnete kreiranje certifikata:

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email you@example.com -d www.example.com

Ovo je idealno postavljanje koje uključuje prisilno HTTPS 301 preusmjeravanje, zaglavlje Strict-Transport-Security i OCSP spajanje. Samo pazite da prilagodite e-poštu i naziv domene svojim zahtjevima.

Sada će vaš URL biti https://www.example.com umjesto HTTP://www.example.com.

Napomena, ako koristite stari HTTP URL, automatski će se preusmjeriti na HTTPS.


Oglas


Upravljanje uslugom Apache

Sada kada imate uspješno pokrenut Apache na vašem poslužitelju, neke ključne riječi o upravljanju su sljedeće.

Zapisi poslužitelja Apache

Zapisnici poslužitelja Apache mogu se pronaći u direktoriju /var/log/apache2/ s pristup.log i error.log uz poštovanje zadani pristup i nazivi pogrešaka. To se u budućnosti može promijeniti u druga imena u vašoj konfiguracijskoj datoteci virtualnog hosta.

Apache naredbe

Sljedeće naredbe koje ćete nesumnjivo koristiti u svom svakodnevnom upravljanju kada radite s Apacheom. Neki od najčešćih su:

Za zaustavljanje Apache web poslužitelja:

sudo systemctl stop apache2

Za pokretanje Apache web poslužitelja:

sudo systemctl start apache2

Za ponovno pokretanje Apache web poslužitelja:

sudo systemctl restart apache2

Za ponovno učitavanje Apache web poslužitelja (Za više manjih promjena koje ne zahtijevaju ponovno pokretanje):

sudo systemctl reload apache2

Da biste onemogućili Apache pri pokretanju poslužitelja:

sudo systemctl disable apache2

Za pokretanje Apachea pri pokretanju poslužitelja (Automatski omogućeno prilikom instalacije):

sudo systemctl enable apache2

Kako ažurirati Apache

Da biste ažurirali Apache u budućnosti, to se radi s naredbom koju ste koristili da provjerite je li vaš sustav ažuriran. Napomena, uvijek stvarajte sigurnosne kopije ili slike ako imate Apache servis koji pokreće kritične usluge. Obično je prilično sigurno nadograditi, ali ponekad se mogu pojaviti greške kao i svaka nadogradnja softvera.

Za ažuriranje Apachea koristite sljedeću naredbu:

sudo apt update

Ako je dostupna nadogradnja Apachea, upotrijebite naredbu:

sudo apt upgrade

Oglas


Kako ukloniti (deinstalirati) Apache

Da biste uklonili Apache ako ga više ne koristite, to se može učiniti pomoću sljedeće naredbe:

sudo apt autoremove apache2 --purge

Ova naredba također će ukloniti sve neiskorištene ovisnosti koje ste dobili s instalacijom.

Komentari i zaključak

U tutorialu ste naučili kako instalirati Apache 2 bilo koristeći Debian zadano spremište ili preporučeni ažurirani Apache 2 koristeći spremište Ondřeja Surýa. Sve u svemu, Apache je desetljećima bio najčešće korišteni poslužitelj web aplikacija u svijetu. Međutim, Nginx je konačno tek malo prestigao vodstvo. Apache je još uvijek jedna od najrazvijenijih i najpriznatijih web aplikacija, posebno s combing LAMP stogom, koji se često koristi za pozadinske web poslužitelje. Naći ćete više prijateljskih opcija za Apache od Nginxa, što će novije korisnike navesti da uđu u hosting svog web poslužitelja, možda da isprobaju Apache preko Nginxa kao prvi korak.

Ostavite komentar