- 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 -y
Paigalduse kontrollimine
Pärast paigaldust kontrolli Apache versiooni:
apache2 -v
Näide väljundist:
Server version: Apache/2.4.52 (Ubuntu)
Server built: 2023-07-01T12:34:56
Kui 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 apache2
See käivitab Apache teenuse ja võimaldab veebipäringuid töödelda.
Apache automaatne käivitamine
sudo systemctl enable apache2
Apache oleku kontrollimine
Et näha, kas Apache töötab:
sudo systemctl status apache2
Kui kõik töötab, peaks kuvama teate active (running)
vms.
Apache taaskäivitamine ja peatamine
Muudatuste rakendamiseks taaskäivita Apache:
sudo systemctl restart apache2
Ajutiseks peatamiseks:
sudo systemctl stop apache2
Apache töö kontrollimine
Veendu, et Apache töötab, avades serveri IP-aadressi veebibrauseris.
1. IP-aadressi kontrollimine
hostname -I
Välise IP aadressi jaoks:
curl ifconfig.me
2. 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 status
Nä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_html
2. 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_html
3. 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.html
4. 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.conf
Nä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.conf
Lisa 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.conf
Apache seadistuse testimine
Kontrolli konfiguratsioonis vigu:
sudo apachectl configtest
Väljund Syntax OK
näitab, et kõik on korras.
Kui kõik on korras, taaskäivita Apache:
sudo systemctl restart apache2
6. Kohalik testimine (hosts faili muutmine)
Virtuaalhostide testimiseks muuda oma arvuti hosts
faili:
sudo nano /etc/hosts
Lisa järgmised read:
127.0.0.1 example.com
127.0.0.1 test.com
Pä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.log
2. 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 80
Kokkuvõ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 -y
SSL 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.com
Selle 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 apache2
2. 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.conf
Nä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 apache2
SSL-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-run
2. Uuenduste graafiku kontroll
Automaatne uuendus on kirjas /etc/cron.d/certbot
failis.
sudo systemctl list-timers | grep certbot
SSL tõrkeotsing
1. SSL-sertifikaati ei rakendata
Lahendus: taaskäivita Apache ja kontrolli seadistust
sudo systemctl restart apache2
sudo apachectl configtest
2. Sertifikaadi kehtivus lõppes
Lahendus: uuenda käsitsi
sudo certbot renew --force-renewal
3. Let’s Encrypt autentimine ebaõnnestub
Lahendus: kontrolli tulemüüri seadeid
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw reload
Kokkuvõ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 status
Ainult 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 outgoing
Avatavad pordid:
- SSH (port 22)
sudo ufw allow 22/tcp
- HTTP (port 80)
sudo ufw allow 80/tcp
- HTTPS (port 443)
sudo ufw allow 443/tcp
Tulemüüri lubamine
sudo ufw enable
SSH 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_config
Muuda 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 lubatud
Peale muudatuste salvestamist taaskäivita SSH:
sudo systemctl restart ssh
Fail2Ban kasutuselevõtt
Fail2Ban on tööriist, mis ajutiselt blokeerib IP-d, mis üritavad ebaõnnestunult SSH kaudu sisse logida.
sudo apt install fail2ban -y
Muuda seadistust:
sudo nano /etc/fail2ban/jail.local
Lisa näiteks:
[sshd]
enabled = true
port = 2222
maxretry = 3
bantime = 600
Aktiveeri Fail2Ban:
sudo systemctl restart fail2ban
sudo systemctl enable fail2ban
Apache turvaseaded
Versiooniteabe peitmine
sudo nano /etc/apache2/conf-available/security.conf
Muuda järgnevad read:
ServerTokens Prod
ServerSignature Off
Salvesta ja taaskäivita Apache:
sudo systemctl restart apache2
Kataloogide loendi keelamine
sudo nano /etc/apache2/apache2.conf
Leia vastav lõik ja eemalda Indexes
:
<Directory /var/www/>
Options -Indexes +FollowSymLinks
AllowOverride All
Require all granted
</Directory>
Taaskäivita Apache:
sudo systemctl restart apache2
Mittevajalike Apache moodulite keelamine
sudo a2dismod autoindex
sudo a2dismod status
sudo systemctl restart apache2
Turvapealkirjade lisamine
Veebilehe kaitseks lisa turvapealkirjad (security headers).
mod_headers
aktiveerimine
sudo a2enmod headers
sudo systemctl restart apache2
Pealkirjade seadistamine
sudo nano /etc/apache2/sites-available/example.com.conf
Lisa <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 apache2
Tõrkeotsing
Tulemüüri seisundi kontroll
sudo ufw status
Apache konfiguratsiooni vigade kontroll
sudo apachectl configtest
Kui 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-ip
Kokkuvõ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 mpm
Nä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 apache2
KeepAlive aktiveerimine
KeepAlive lubab kliendil kasutada sama ühendust mitmeks päringuks, vähendades ühenduste loomise kulu.
Faili muutmine:
sudo nano /etc/apache2/apache2.conf
Lisa või kontrolli järgmisi ridu:
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 5
Taaskäivita Apache:
sudo systemctl restart apache2
Vahemä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 apache2
Faili /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 apache2
mod_cache
aktiveerimine (serveri vahemälu)
sudo a2enmod cache cache_disk
sudo systemctl restart apache2
Lisa 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 apache2
Tihendus (compression)
mod_deflate
võimaldab veebisaidi sisu tihendada ja vähendada üle kantavate andmete mahtu.
mod_deflate
aktiveerimine
sudo a2enmod deflate
sudo systemctl restart apache2
Lisa 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 apache2
Ressursside piiramine
Suurte või pahatahtlike päringute korral saab piirata serveriressursside kasutust.
mod_ratelimit
aktiveerimine
sudo a2enmod ratelimit
sudo systemctl restart apache2
Lisa example.com.conf
faili:
<Location />
SetOutputFilter RATE_LIMIT
SetEnv rate-limit 200
</Location>
Taaskäivita Apache:
sudo systemctl restart apache2
Tõrkeotsing
Kui jõudluse häälestamise järel tekib probleeme:
Apache vealogide vaatamine
sudo tail -f /var/log/apache2/error.log
Apache koormuse jälgimine
sudo apachectl status
Serveri CPU ja mälu jälgimine
top
võ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 apache2
Nä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.log
Pordikasutuse kontroll
sudo netstat -tulnp | grep ':80'
või
sudo lsof -i:80
Kui sadam on juba kasutuses, muuda vajadusel /etc/apache2/ports.conf
faili.
SSL-sertifikaadiga seotud vead
SSL-sertifikaadi aegumine
sudo certbot renew --force-renewal
AH02572: 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.pem
Kui kõik on õige, taaskäivita Apache:
sudo systemctl restart apache2
Veebisait 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_html
404 Not Found
Ava /etc/apache2/sites-available/example.com.conf
ja kontrolli DocumentRoot
teed:
DocumentRoot /var/www/example.com/public_html
Kui mod_rewrite
pole lubatud:
sudo a2enmod rewrite
sudo systemctl restart apache2
500 Internal Server Error
Vaata vealogi:
sudo tail -f /var/log/apache2/error.log
Kui vaja, nimeta .htaccess
ajutiselt ümber:
mv /var/www/example.com/public_html/.htaccess /var/www/example.com/public_html/.htaccess.bak
Kõrge koormus või jõudlusprobleemid
Apache koormuse vaatamine
top
või
htop
Mittevajalike moodulite keelamine
sudo a2dismod status
sudo a2dismod autoindex
sudo systemctl restart apache2
Vahemälu optimeerimine
sudo a2enmod cache cache_disk
Võrguga seotud tõrked
IP-aadressi kontrollimine
ip a
või
curl ifconfig.me
Avatud portide kontroll
sudo netstat -tulnp | grep LISTEN
või
sudo lsof -i :80
Kui pordid 80/443 puuduvad, ava need tulemüüris:
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw reload
Kokkuvõ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! 🚀