- 1 1. Sissejuhatus
- 2 2. Ubuntu install ja algseadistused
- 3 3. Apache paigaldamine ja põhiseadistused
- 4 4. Virtuaalhostide seadistamine (mitme saidi haldus)
- 5 5. SSL/TLS kasutuselevõtt (HTTPS)
- 6 6. Veebiserveri turvalisuse tugevdamine
- 7 7. Jõudluse optimeerimine
- 8 8. Tõrkeotsing (probleemide lahendamine)
- 9 9. Kokkuvõte
1. Sissejuhatus
Mis on Ubuntu veebiserver?
Veebiserver on süsteem, mis pakub veebisaite internetis. Populaarsed veebiserveri tarkvarad on Apache, Nginx, LiteSpeed, kuid Ubuntu puhul kasutatakse enim Apache’t.
Ubuntu on kerge, stabiilne ja avatud lähtekoodiga, mistõttu seda kasutavad nii eraisikud kui ka ettevõtted. Eriti levinud on LAMP-steki (Linux, Apache, MySQL/MariaDB, PHP) ülesseadmine, mis sobib paljudele veebisaitidele ja rakendustele.
Artikli sihtrühm
See artikkel on mõeldud algajatele, kes soovivad Ubuntu veebiserverit esimest korda seadistada. Selgitame üksikasjalikult, kuidas paigaldada Ubuntu-le Apache, seadistada virtuaalhostid, SSL-sertifikaadid, optimeerida ja turvata serverit.
Mida sellest artiklist õpid
- Kuidas seadistada Ubuntu-le veebiserverit (Apache paigaldamine ja põhiline seadistamine)
- Kuidas luua virtuaalhoste ja hallata mitut veebisaiti
- Kuidas paigaldada tasuta SSL Let’s Encryptiga
- Kuidas tugevdada ja optimeerida veebiserveri turvalisust
- Levinud probleemide tõrkeotsing ja lahendused
2. Ubuntu install ja algseadistused
Süsteemi miinimumnõuded
Ubuntu veebiserverina kasutamiseks soovitame järgmisi miinimumnõudeid:
| Komponent | Miinimum | Soovituslik |
|---|---|---|
| OS | Ubuntu 22.04 LTS | Ubuntu 22.04 LTS |
| CPU | 1GHz või kiirem | 2GHz või kiirem |
| Mälu | 512MB | 2GB või rohkem |
| Salvestusruum | 10GB või rohkem | 20GB või rohkem |
| Võrguühendus | Internetiühendus | Soovitavalt kiire ühendus |
Ubuntu allalaadimine ja install
Ubuntu saab alla laadida ametlikult kodulehelt (https://ubuntu.com/download/server). Lae ISO-fail alla ja loo virtuaalmasin VirtualBoxi või VMware abil või paigalda pühendatud serverile või VPS-ile.
Installi sammud:
- Installimeediumi loomine
- USB-mälupulk (kasuta näiteks RUFUS-t)
- Virtuaalmasinale ISO-faili lisamine
- Järgi installiviisardit
- Vali keel (soovitavalt eesti või inglise keel)
- Kontrolli võrguühendust
- Loo kasutajanimi ja parool
- Paigalda SSH server (soovi korral ka hiljem võimalik)
- Peale paigaldust taaskäivita
- Logi sisse ja alusta algseadistustega
Põhilised algseadistused
Peale installi tuleks teha järgmised seadistused:
- Paketihalduri uuendamine
sudo apt update && sudo apt upgrade -y→ Süsteemi turvapaigad ja tarkvara uuendused.
- Aja- ja ajavööndi seadistamine
sudo timedatectl set-timezone Europe/Tallinn→ Seadista Eesti aeg (Tallinna aeg).
- Tulemüüri aktiveerimine
sudo ufw enable→ Kaitseb serverit volitamata ühenduste eest.
- SSH seadistamine (kaugjuhtimiseks)
- Kontrolli, kas SSH töötab
sudo systemctl status ssh - Kui pole aktiivne, käivita SSH
sudo systemctl enable --now ssh
Kui need algseadistused on tehtud, on Ubuntu server valmis veebiserverina kasutamiseks.
3. Apache paigaldamine ja põhiseadistused
Mis on Apache?
Apache (täisnimi: Apache HTTP Server) on avatud lähtekoodiga veebiserveri tarkvara, mida iseloomustavad stabiilsus, laiendatavus ja kõrge turvalisus. Ligikaudu 30% maailma serveritest kasutab Apache’t.
Peamised omadused:
- Tasuta kasutamiseks (avatud lähtekood)
- Modulaarne ülesehitus – lihtsalt laiendatav
- SSL/TLS tugi – HTTPS-i kasutamine
- Virtuaalhostid – ühe serveriga saab majutada mitut veebisaiti
Apache paigaldamine
Ubuntu puhul saab Apache kiiresti paigaldada paketihalduri apt abil.
Apache paigaldamiseks käivita:
sudo apt update
sudo apt install apache2 -yPaigalduse kontrollimine
Pärast paigaldust kontrolli Apache versiooni:
apache2 -vNäide väljundist:
Server version: Apache/2.4.52 (Ubuntu)
Server built: 2023-07-01T12:34:56Kui näed sarnast versiooniteadet, on Apache õigesti paigaldatud.
Apache käivitamine, peatamine ja taaskäivitamine
Apache haldamiseks kasutatakse systemctl käsku.
Apache käivitamine
sudo systemctl start apache2See käivitab Apache teenuse ja võimaldab veebipäringuid töödelda.
Apache automaatne käivitamine
sudo systemctl enable apache2Apache oleku kontrollimine
Et näha, kas Apache töötab:
sudo systemctl status apache2Kui kõik töötab, peaks kuvama teate active (running) vms.
Apache taaskäivitamine ja peatamine
Muudatuste rakendamiseks taaskäivita Apache:
sudo systemctl restart apache2Ajutiseks peatamiseks:
sudo systemctl stop apache2Apache töö kontrollimine
Veendu, et Apache töötab, avades serveri IP-aadressi veebibrauseris.
1. IP-aadressi kontrollimine
hostname -IVälise IP aadressi jaoks:
curl ifconfig.me2. Kontroll veebibrauseris
Sisesta brauseri aadressiribale:
http://<serveri-IP-aadress>/Või lokaalselt:
http://localhost/Näed Apache vaikimisi lehte (/var/www/html/index.html).
Näide vaikimisi lehe sõnumist:
Apache2 Ubuntu Default Page
It works!Kui see sõnum ilmub, töötab Apache õigesti.
Tulemüüri seadistamine
Ubuntu kasutab tulemüüri jaoks UFW-d (Uncomplicated Firewall).
Pärast Apache paigaldamist võivad HTTP (port 80) ja HTTPS (port 443) olla suletud.
Tulemüürireeglid Apache jaoks
sudo ufw allow 'Apache'Kui soovid lubada ka HTTPS liiklust:
sudo ufw allow 'Apache Full'Tulemüüri oleku kontroll
sudo ufw statusNäide väljundist:
Status: active
To Action From
-- ------ ----
Apache ALLOW Anywhere
Apache (v6) ALLOW Anywhere (v6)Kui see on nähtav, on Apache liiklus lubatud.
Kokkuvõte
Selles osas paigaldasime Apache Ubuntu-le ja seadistasime põhifunktsioonid.
Kokkuvõte:
- Apache paigaldamine
- Käivitus- ja automaatkäivituse seadistamine
- Töö kontrollimine (brauseri kaudu)
- Tulemüüri seadistamine
- Põhiseadistusfailide ülevaade
4. Virtuaalhostide seadistamine (mitme saidi haldus)
Mis on virtuaalhost (Virtual Host)?
Virtuaalhost võimaldab ühe Apache serveri peal hallata mitut domeeni (või alamdomeeni).
Näiteks saab ühe serveriga pakkuda nii example.com kui ka test.com veebisaite.
Virtuaalhostide tüübid on:
- Nimepõhine virtuaalhost (Name-based Virtual Host)
- Sama IP-aadressiga hallatakse mitut saiti
- Enim kasutatav veebiserverites
- IP-põhine virtuaalhost (IP-based Virtual Host)
- Iga sait kasutab eri IP-aadressi
- Vajab mitut võrguliidest ühes serveris
Tavaliselt kasutatakse nimepõhiseid virtuaalhoste (Name-based).
Virtuaalhosti seadistamise sammud
1. Vajalike kaustade loomine
Iga saidi jaoks loo eraldi kataloog:
sudo mkdir -p /var/www/example.com/public_html
sudo mkdir -p /var/www/test.com/public_html2. Omaniku määramine kataloogidele
Et Apache saaks faile lugeda, määra omanikuks www-data:
sudo chown -R www-data:www-data /var/www/example.com/public_html
sudo chown -R www-data:www-data /var/www/test.com/public_html3. Testlehtede loomine
Loo iga saidi jaoks index.html, et kontrollida, kas see töötab:
echo "<h1>Welcome to example.com</h1>" | sudo tee /var/www/example.com/public_html/index.html
echo "<h1>Welcome to test.com</h1>" | sudo tee /var/www/test.com/public_html/index.html4. Virtuaalhosti konfiguratsioonifaili loomine
Virtuaalhosti seadistusfailid asuvad kaustas /etc/apache2/sites-available/.
example.com virtuaalhosti seadistus
Loo ja ava seadistusfail:
sudo nano /etc/apache2/sites-available/example.com.confNäidissisu:
<VirtualHost *:80>
ServerAdmin admin@example.com
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/example.com/public_html
<Directory /var/www/example.com/public_html>
Options -Indexes +FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/example.com_error.log
CustomLog ${APACHE_LOG_DIR}/example.com_access.log combined
</VirtualHost>test.com virtuaalhosti seadistus
sudo nano /etc/apache2/sites-available/test.com.confLisa järgmine sisu:
<VirtualHost *:80>
ServerAdmin admin@test.com
ServerName test.com
ServerAlias www.test.com
DocumentRoot /var/www/test.com/public_html
<Directory /var/www/test.com/public_html>
Options -Indexes +FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/test.com_error.log
CustomLog ${APACHE_LOG_DIR}/test.com_access.log combined
</VirtualHost>5. Virtuaalhostide aktiveerimine
Pärast seadistusfailide loomist aktiveeri need käsuga a2ensite:
sudo a2ensite example.com.conf
sudo a2ensite test.com.confApache seadistuse testimine
Kontrolli konfiguratsioonis vigu:
sudo apachectl configtestVäljund Syntax OK näitab, et kõik on korras.
Kui kõik on korras, taaskäivita Apache:
sudo systemctl restart apache26. Kohalik testimine (hosts faili muutmine)
Virtuaalhostide testimiseks muuda oma arvuti hosts faili:
sudo nano /etc/hostsLisa järgmised read:
127.0.0.1 example.com
127.0.0.1 test.comPärast salvestamist ava brauseris http://example.com/ ja kontrolli, et kuvatakse “Welcome to example.com”. Samuti http://test.com/ peaks näitama “Welcome to test.com”.
7. Tõrkeotsing
Kui virtuaalhostid ei tööta:
1. Kontrolli Apache vealoge
sudo tail -f /var/log/apache2/error.log2. Kontrolli, kas seadistusfailid on aktiveeritud
ls /etc/apache2/sites-enabled/Kui vastavad .conf failid on nimekirjas, on virtuaalhostid aktiivsed.
3. Kontrolli Apache pordi seadeid
Veendu, et /etc/apache2/ports.conf failis oleks:
Listen 80Kokkuvõte
Selles osas õppisid kuidas seadistada Apache virtuaalhoste Ubuntu serveris.
Olulisemad punktid:
- Virtuaalhosti mõiste ja kasutus
- Kataloogide loomine iga saidi jaoks
- Virtuaalhosti seadistusfailide loomine ja aktiveerimine
- Kohalik testimine hosts faili kaudu
- Probleemide lahendamine
5. SSL/TLS kasutuselevõtt (HTTPS)
Mis on SSL/TLS?
SSL (Secure Sockets Layer) ja TLS (Transport Layer Security) on krüpteerimistehnoloogiad, mis võimaldavad turvalist andmevahetust internetis.
SSL/TLS kasutamise eelised
✅ Andmeside krüpteerimine (vähendab pealtkuulamise ja muutmise riski)
✅ Google’i SEO eelis (HTTPS saidid paigutatakse kõrgemale)
✅ Brauseri hoiatusest pääsemine (“Not Secure” hoiatus HTTP puhul)
✅ Maksed ja sisselogimised on kaitstud
Tänapäeval soovitatakse kasutada TLS-i (TLS 1.2 / 1.3). SSL 3.0 ja varasemad pole enam soovitatavad.
Tasuta SSL-sertifikaadi hankimine Let’s Encryptiga
Let’s Encrypt on tasuta sertifikaate väljastav sertifitseerimiskeskus (CA: Certificate Authority).
Sertifikaadi saab lihtsalt paigaldada certbot abil ning rakendada Apache serveris.
Let’s Encrypti klient (Certbot) paigaldamine
Kõigepealt paigalda ametlik klient certbot:
sudo apt update
sudo apt install certbot python3-certbot-apache -ySSL seadistamine automaatselt Apache jaoks
Kasuta käsku certbot --apache ning Let’s Encrypt teeb ülejäänu automaatselt:
sudo certbot --apache -d example.com -d www.example.comSelle käsuga toimub:
- Domeeni valideerimine (HTTP-01 challenge)
- SSL-sertifikaadi väljastamine
- Apache SSL seadistus
- HTTPS suunamine
SSL toimimise kontroll
Ava brauseris aadress:
https://example.com/Kui aadressiribal on lukustatud ikoon, on SSL õigesti rakendatud.
SSL käsitsi seadistamine Apache’is
Kui soovid SSL-i seadistada ilma certbot --apache käsuta, tee järgmist:
1. Apache SSL mooduli aktiveerimine
sudo a2enmod ssl
sudo systemctl restart apache22. SSL virtuaalhosti seadistamine
Muuda virtuaalhosti konfiguratsioonifaili /etc/apache2/sites-available/example.com-le-ssl.conf:
sudo nano /etc/apache2/sites-available/example.com-le-ssl.confNäide sisust:
<VirtualHost *:443>
ServerAdmin admin@example.com
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/example.com/public_html
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
<Directory /var/www/example.com/public_html>
Options -Indexes +FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/example.com_error.log
CustomLog ${APACHE_LOG_DIR}/example.com_access.log combined
</VirtualHost>
3. Seadistuse aktiveerimine ja Apache taaskäivitamine
sudo a2ensite example.com-le-ssl.conf
sudo systemctl restart apache2SSL-sertifikaadi automaatne uuendamine
Let’s Encrypti sertifikaadid kehtivad 90 päeva.
Soovitav on seada automaatne uuendamine.
1. Certboti automaatse uuenduse testimine
sudo certbot renew --dry-run2. Uuenduste graafiku kontroll
Automaatne uuendus on kirjas /etc/cron.d/certbot failis.
sudo systemctl list-timers | grep certbotSSL tõrkeotsing
1. SSL-sertifikaati ei rakendata
Lahendus: taaskäivita Apache ja kontrolli seadistust
sudo systemctl restart apache2
sudo apachectl configtest2. Sertifikaadi kehtivus lõppes
Lahendus: uuenda käsitsi
sudo certbot renew --force-renewal3. Let’s Encrypt autentimine ebaõnnestub
Lahendus: kontrolli tulemüüri seadeid
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw reloadKokkuvõte
Selles osas õppisid kuidas tasuta Let’s Encrypti abil SSL/TLS kasutusele võtta.
Olulised punktid:
- SSL/TLS põhialused
- Apache SSL seadistus Let’s Encryptiga
- Käsitsi SSL seadistamine
- Automaatne sertifikaadi uuendus
- Levinumad SSL tõrked ja nende lahendused
6. Veebiserveri turvalisuse tugevdamine
Tulemüüri (UFW) seadistamine
Ubuntu kasutab tulemüüri jaoks UFW-d (Uncomplicated Firewall), et blokeerida mittevajalik võrguliiklus.
Praeguse tulemüüri seisu kontroll
sudo ufw statusAinult vajalikud pordid avatud
Soovitatav on vaikimisi kõik sissetulevad ühendused blokeerida ja avada vaid vajalikud pordid.
sudo ufw default deny incoming
sudo ufw default allow outgoingAvatavad pordid:
- SSH (port 22)
sudo ufw allow 22/tcp- HTTP (port 80)
sudo ufw allow 80/tcp- HTTPS (port 443)
sudo ufw allow 443/tcpTulemüüri lubamine
sudo ufw enableSSH turvalisuse tugevdamine
SSH jääb vaikeseadetega sageli jõurünnakute (brute force) sihtmärgiks, seega on soovitatav muuta seadeid.
SSH pordi muutmine
sudo nano /etc/ssh/sshd_configMuuda või lisa järgnevad read:
Port 2222 # 22 asemel 2222 (või muu soovitud port)
PermitRootLogin no # root'i sisselogimine keelatud
PasswordAuthentication no # ainult võtmebaasil autentimine lubatudPeale muudatuste salvestamist taaskäivita SSH:
sudo systemctl restart sshFail2Ban kasutuselevõtt
Fail2Ban on tööriist, mis ajutiselt blokeerib IP-d, mis üritavad ebaõnnestunult SSH kaudu sisse logida.
sudo apt install fail2ban -yMuuda seadistust:
sudo nano /etc/fail2ban/jail.localLisa näiteks:
[sshd]
enabled = true
port = 2222
maxretry = 3
bantime = 600Aktiveeri Fail2Ban:
sudo systemctl restart fail2ban
sudo systemctl enable fail2banApache turvaseaded
Versiooniteabe peitmine
sudo nano /etc/apache2/conf-available/security.confMuuda järgnevad read:
ServerTokens Prod
ServerSignature OffSalvesta ja taaskäivita Apache:
sudo systemctl restart apache2Kataloogide loendi keelamine
sudo nano /etc/apache2/apache2.confLeia vastav lõik ja eemalda Indexes:
<Directory /var/www/>
Options -Indexes +FollowSymLinks
AllowOverride All
Require all granted
</Directory>Taaskäivita Apache:
sudo systemctl restart apache2Mittevajalike Apache moodulite keelamine
sudo a2dismod autoindex
sudo a2dismod status
sudo systemctl restart apache2Turvapealkirjade lisamine
Veebilehe kaitseks lisa turvapealkirjad (security headers).
mod_headers aktiveerimine
sudo a2enmod headers
sudo systemctl restart apache2Pealkirjade seadistamine
sudo nano /etc/apache2/sites-available/example.com.confLisa <VirtualHost> sektsiooni:
<IfModule mod_headers.c>
Header always set X-Content-Type-Options "nosniff"
Header always set X-XSS-Protection "1; mode=block"
Header always set X-Frame-Options "SAMEORIGIN"
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"
</IfModule>Taaskäivita Apache:
sudo systemctl restart apache2Tõrkeotsing
Tulemüüri seisundi kontroll
sudo ufw statusApache konfiguratsiooni vigade kontroll
sudo apachectl configtestKui saad Syntax OK, on kõik korras.
Kui SSH-ühendus ei toimi
Kui muutsid SSH-porti, kasuta ühendudes uut porti:
ssh -p 2222 user@server-ipKokkuvõte
Selles osas õppisid kuidas turvata veebiserverit ja Apache’t.
Peamised punktid:
- UFW tulemüüri seadistamine
- SSH turvamine (pordi vahetus, Fail2Ban)
- Apache turvaseaded (versiooniteabe peitmine, kataloogide keelamine)
- Turvapealkirjade lisamine
7. Jõudluse optimeerimine
Apache häälestamine (tuning)
Apache vaikeseaded ei pruugi anda parimat jõudlust. Mõningate seadistuste muutmisega saab serveri jõudlust oluliselt parandada.
MPM (Multi-Processing Module) optimeerimine
MPM määrab, kuidas Apache päringuid töötleb.
Hetkel aktiivse MPM-i kontroll:
apachectl -M | grep mpmNäide:
mpm_prefork_module (shared)Kui kasutusel on mpm_prefork_module, tasub kaaluda kiiremat mpm_event moodulit.
Vahetamiseks:
sudo a2dismod mpm_prefork
sudo a2enmod mpm_event
sudo systemctl restart apache2KeepAlive aktiveerimine
KeepAlive lubab kliendil kasutada sama ühendust mitmeks päringuks, vähendades ühenduste loomise kulu.
Faili muutmine:
sudo nano /etc/apache2/apache2.confLisa või kontrolli järgmisi ridu:
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 5Taaskäivita Apache:
sudo systemctl restart apache2Vahemälu kasutamine
Brauseri- ja serveripoolne vahemälu aitab vähendada tarbetuid päringuid ja parandada laadimiskiirust.
mod_expires aktiveerimine (brauseri vahemälu)
sudo a2enmod expires
sudo systemctl restart apache2Faili /etc/apache2/sites-available/example.com.conf lisa:
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 1 month"
ExpiresByType image/jpg "access plus 1 year"
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType text/css "access plus 1 month"
ExpiresByType application/javascript "access plus 1 month"
</IfModule>Taaskäivita Apache:
sudo systemctl restart apache2mod_cache aktiveerimine (serveri vahemälu)
sudo a2enmod cache cache_disk
sudo systemctl restart apache2Lisa example.com.conf faili:
<IfModule mod_cache.c>
CacheEnable disk /
CacheRoot /var/cache/apache2/mod_cache_disk
CacheDefaultExpire 86400
</IfModule>Taaskäivita Apache:
sudo systemctl restart apache2Tihendus (compression)
mod_deflate võimaldab veebisaidi sisu tihendada ja vähendada üle kantavate andmete mahtu.
mod_deflate aktiveerimine
sudo a2enmod deflate
sudo systemctl restart apache2Lisa example.com.conf faili:
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE image/svg+xml
</IfModule>Taaskäivita Apache:
sudo systemctl restart apache2Ressursside piiramine
Suurte või pahatahtlike päringute korral saab piirata serveriressursside kasutust.
mod_ratelimit aktiveerimine
sudo a2enmod ratelimit
sudo systemctl restart apache2Lisa example.com.conf faili:
<Location />
SetOutputFilter RATE_LIMIT
SetEnv rate-limit 200
</Location>Taaskäivita Apache:
sudo systemctl restart apache2Tõrkeotsing
Kui jõudluse häälestamise järel tekib probleeme:
Apache vealogide vaatamine
sudo tail -f /var/log/apache2/error.logApache koormuse jälgimine
sudo apachectl statusServeri CPU ja mälu jälgimine
topvõi
htop(htop pole vaikimisi paigaldatud – sudo apt install htop)
Kokkuvõte
Selles osas õppisid kuidas parandada veebiserveri jõudlust.
Olulised punktid:
- Apache häälestus (MPM, KeepAlive)
- Vahemälu kasutamine (brauser, server)
- Tihendus (mod_deflate)
- Ressursside piiramine (mod_ratelimit)
8. Tõrkeotsing (probleemide lahendamine)
Apache ei käivitu või peatub ootamatult
Apache oleku kontrollimine
sudo systemctl status apache2Näide:
● apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since ...Kui näed Active: failed, on serveril tõrge.
Vealogide vaatamine
sudo journalctl -xe
sudo tail -f /var/log/apache2/error.logPordikasutuse kontroll
sudo netstat -tulnp | grep ':80'või
sudo lsof -i:80Kui sadam on juba kasutuses, muuda vajadusel /etc/apache2/ports.conf faili.
SSL-sertifikaadiga seotud vead
SSL-sertifikaadi aegumine
sudo certbot renew --force-renewalAH02572: Failed to configure at least one certificate
Ava seadistusfail /etc/apache2/sites-available/example.com-le-ssl.conf ja kontrolli:
SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pemKui kõik on õige, taaskäivita Apache:
sudo systemctl restart apache2Veebisait ei avane (403, 404, 500 vead)
403 Forbidden
sudo chown -R www-data:www-data /var/www/example.com/public_html
sudo chmod -R 755 /var/www/example.com/public_html404 Not Found
Ava /etc/apache2/sites-available/example.com.conf ja kontrolli DocumentRoot teed:
DocumentRoot /var/www/example.com/public_htmlKui mod_rewrite pole lubatud:
sudo a2enmod rewrite
sudo systemctl restart apache2500 Internal Server Error
Vaata vealogi:
sudo tail -f /var/log/apache2/error.logKui vaja, nimeta .htaccess ajutiselt ümber:
mv /var/www/example.com/public_html/.htaccess /var/www/example.com/public_html/.htaccess.bakKõrge koormus või jõudlusprobleemid
Apache koormuse vaatamine
topvõi
htopMittevajalike moodulite keelamine
sudo a2dismod status
sudo a2dismod autoindex
sudo systemctl restart apache2Vahemälu optimeerimine
sudo a2enmod cache cache_diskVõrguga seotud tõrked
IP-aadressi kontrollimine
ip avõi
curl ifconfig.meAvatud portide kontroll
sudo netstat -tulnp | grep LISTENvõi
sudo lsof -i :80Kui pordid 80/443 puuduvad, ava need tulemüüris:
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw reloadKokkuvõte
Selles jaotises õppisid kõige levinumate Ubuntu (Apache) veebiserveri probleemide põhjuseid ja lahendusi.
Peamised teemad:
- Apache käivitamise tõrked ja lahendused
- SSL-sertifikaadi probleemide lahendamine
- 403 / 404 / 500 vigade põhjused ja parandused
- Jõudluse optimeerimine
- Võrguprobleemide lahendused
9. Kokkuvõte
Õpitust kokkuvõte
Toome veelkord välja iga peatüki põhipunktid.
| Sektsioon | Sisu |
|---|---|
| 1. Sissejuhatus | Ubuntu veebiserveri põhimõisted ja artikli eesmärk |
| 2. Ubuntu paigaldus ja algseadistused | OS-i paigaldamine, uuendamine, tulemüüri seadistus |
| 3. Apache paigaldus ja põhiseadistused | Apache paigaldamine, käivitamine, töö kontrollimine |
| 4. Virtuaalhostide seadistamine | Mitu veebisaiti ühes serveris |
| 5. SSL/TLS kasutuselevõtt | Let’s Encrypti abil HTTPS kasutusele võtmine |
| 6. Veebiserveri turvalisus | Tulemüüri, SSH ja Apache turvaseaded |
| 7. Jõudluse optimeerimine | Vahemälu, tihendus, Apache häälestused |
| 8. Tõrkeotsing | Apache vead, SSL tõrked, jõudluse ja võrgu probleemid |
Järgmised sammud
Kui Ubuntu veebiserveri põhisätted on paigas, võid õppida järgmisi teemasid ja täiustada oma serverit veelgi:
✅ WordPressi või PHP rakenduste paigaldamine
✅ Andmebaasiserveri (MySQL / MariaDB) seadistamine
✅ Pöördproksi (Nginx + Apache) loomine
✅ Pilvepõhine automaatne skaleerimine (nt AWS, GCP, Azure)
✅ Logihaldus ja monitooring (nt fail2ban, logwatch jt tööriistad)
Korduma kippuvad küsimused (KKK/FAQ)
K1: Kas Ubuntu puhul kasutada Nginx’i või Apache’t?
V1: Kui põhiliselt teenindad staatilist sisu, eelista Nginx’i. Dünaamilise sisu (PHP jms) puhul sobib Apache. Neid saab kasutada ka koos: Nginx pöördproksina, Apache rakenduse serverina.
K2: Kas SSL-sertifikaatide uuendamine saab olla automaatne?
V2: Jah, kui paigaldad Certboti, toimub uuendamine automaatselt. Testi sudo certbot renew --dry-run ja veendu, et croni graafik on seadistatud.
K3: Kuidas veelgi tugevdada veebiserveri turvalisust?
V3: Kasuta Fail2Bani jõurünnakute vastu, peida Apache versiooniteave ja keela mittevajalikud moodulid.
K4: Kuidas parandada Apache jõudlust?
V4: Häälesta õige MPM (event/worker), lisa vahemälu (mod_cache), aktiveeri tihendus (mod_deflate).
K5: Miks mu veebisait annab “403 Forbidden” vea?
V5: Veendu, et kataloogide omanik on www-data ja õigused on õigesti seadistatud (chmod -R 755).
Kokkuvõtteks
Ubuntu veebiserveri loomine hõlmab mitmeid samme, kuid kui saad põhiasjad selgeks, on see väga võimas platvorm.
🚀 Kasuta seda juhendit, et luua turvaline ja kiire veebiserver ning tõsta oma haldusoskusi! 🚀


