Siirry suoraan sisältöön

Evästeasetukset

Valitse, mitä evästetyyppejä sallit. Voit muuttaa valintaasi milloin tahansa jokaisen sivun alareunassa olevasta kohdasta Evästeasetukset. Tietosuojaseloste

Välttämättömät

Aina käytössä

Tarvitaan sisäänkirjautumiseen, ostoskorin säilyttämiseen ja valintojesi muistamiseen. Nämä ovat aina käytössä.

Mitkä evästeet?
  • weboke_sessie, weboke_klant, weboke_remember: istuntosi ja sisäänkirjautuneena pysyminen
  • weboke_basket: ostoskorisi
  • wkBtwIncl: hintojen näyttäminen verollisina tai verottomina
  • wok_cookies: evästevalintasi, 12 kuukautta

Mittaa, mikä mainos johtaa käyntiin tai tilaukseen, jotta emme maksa mainoksista, joista ei ole hyötyä.

Mitkä evästeet?
  • Google Ads Google Tag Managerin kautta (_gcl_au, _gcl_aw), enintään 90 päivää
  • OpenAI Ads, mainokset ChatGPT-palvelussa
  • wok_aff: minkä kumppanin kautta tulit meille (kumppaniohjelma), 60 päivää

4,6

Maa ja kieli

Jokaisella maalla on oma sivustonsa, jossa on kyseisen maan hinnat ja ALV.

Näytä

Pakettienhallinta apt:lla

Moduuli 4: Ohjelmistot ja päivitykset · Lukuaika: 10 minuuttia

Tavoite: Tämän oppitunnin jälkeen osaat asentaa, päivittää ja poistaa ohjelmia apt:lla, näet mistä paketti tulee ja tunnistat, mitkä päivitykset ovat tietoturvapäivityksiä.

Keskeiset käsitteet: paketti, pakettilähde (repository), sources.list, .sources-tiedosto (deb822), signed-by, apt update, apt upgrade, apt full-upgrade, remove, purge, autoremove, apt-cache policy, tietoturvalähde, dnf

Miksi pakettienhallinta?

Windowsissa lataat asennusohjelman verkkosivulta. Linux-palvelimella teet niin tuskin koskaan. Ohjelmat tulevat paketteina pakettilähteestä (repository): jakelun palvelimelta, jossa on tuhansia ohjelmia, jotka kaikki on käännetty ja testattu juuri sinun Debian- tai Ubuntu-versiollesi. Ohjelmaa, joka hakee, asentaa ja päivittää nämä paketit, kutsutaan pakettienhallinnaksi. Debianissa ja Ubuntussa se on apt (jonka alla toimii dpkg), AlmaLinuxissa ja Rocky Linuxissa dnf.

Tästä on kolme suurta etua:

  1. Yksi komento päivittää kaiken. Verkkopalvelin, SSH-palvelin, kirjastot ja kernel tulevat samasta lähteestä. Sinun ei tarvitse tarkistaa jokaisen ohjelman verkkosivulta, onko uusi versio ilmestynyt.
  2. Alkuperä on tarkistettu. Jokainen pakettilähde on allekirjoitettu avaimella. apt hylkää paketit, joiden allekirjoitus ei täsmää.
  3. Riippuvuudet hoidetaan. Jos nginx tarvitsee kirjaston, apt asentaa sen automaattisesti mukaan ja siivoaa sen myöhemmin pois.

Pakettilähteet: mistä ohjelmat tulevat?

apt:n käyttämät lähteet on määritelty hakemistossa /etc/apt/. Pitkään se oli yksi tiedosto sources.list, jossa oli tällaisia rivejä:

deb http://deb.debian.org/debian bookworm main

Ubuntu 24.04 ja uudemmat, Debianin pilvi-imaget ja yhä useammat uudet asennukset käyttävät uudempaa deb822-muotoa: erillisiä tiedostoja, joiden pääte on .sources, hakemistossa /etc/apt/sources.list.d/. Vanhan sources.list-tiedoston voi muuntaa komennolla sudo apt modernize-sources (apt 3, Debian 13). Esimerkiksi Debian 13:ssa:

anna@web1:~$ cat /etc/apt/sources.list.d/debian.sources
Types: deb
URIs: http://deb.debian.org/debian
Suites: trixie trixie-updates
Components: main
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg

Types: deb
URIs: http://deb.debian.org/debian-security
Suites: trixie-security
Components: main
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg

Lue se näin: suite on versio (trixie on Debian 13; noble on Ubuntu 24.04), component on lähteen osa (main Debianissa; main, universe, restricted ja multiverse Ubuntussa), ja Signed-By kertoo, millä avaimella lähteen on oltava allekirjoitettu. Viimeinen kohta on tärkeä: avain kuuluu yhteen lähteeseen, ei kaikkiin lähteisiin kerralla. Kun lisäät myöhemmin valmistajan lähteen (Docker, Caddy, PostgreSQL), se saa oman avaintiedostonsa ja oman Signed-By-rivinsä (oppitunti 9.2).

Lähde, jonka nimessä on -security, on tietoturvalähde. Sieltä tulevat tietoturvapäivitykset, yleensä samana päivänä, kun haavoittuvuus tulee julki. Ubuntussa tämän suiten nimi on noble-security (tai oman versiosi nimi).

Jos käytät vielä vanhaa sources.list-tiedostoa, kaikki toimii normaalisti. Älä kuitenkaan määrittele samaa lähdettä molemmissa muodoissa, sillä silloin apt valittaa päällekkäisistä riveistä.

update, upgrade ja full-upgrade

Näiden kolmen käsitteen ero on aloittelijan ensimmäinen sudenkuoppa.

KomentoMitä se tekee
apt updateHakee listan siitä, mitä paketteja ja versioita lähteissä on. Ei asenna mitään.
apt upgradePäivittää asennetut paketit listan uusimpaan versioon. Ei koskaan poista mitään. Päivitys, joka vaatisi toisen paketin poistamista, ohitetaan.
apt full-upgradeSama, mutta saa myös poistaa paketteja tai asentaa uusia tarvittaessa. Tarvitaan julkaisupäivityksessä (oppitunti 4.3) ja joskus uuden kernelin kanssa.

Eli aina ensin update, sitten upgrade:

anna@web1:~$ sudo apt update
Hit:1 http://deb.debian.org/debian trixie InRelease
Get:2 http://deb.debian.org/debian-security trixie-security InRelease [43.4 kB]
...
3 packages can be upgraded. Run 'apt list --upgradable' to see them.
anna@web1:~$ apt list --upgradable
Listing... Done
libssl3t64/trixie-security 3.5.1-1+deb13u1 amd64 [upgradable from: 3.5.1-1]
openssh-server/trixie-security 1:10.0p1-7+deb13u1 amd64 [upgradable from: 1:10.0p1-7]
tzdata/trixie-updates 2026b-0+deb13u1 all [upgradable from: 2026a-0+deb13u1]

(Yllä olevat versionumerot ovat esimerkkejä.) Nimen perässä näkyy, mistä suitesta uusi versio tulee. Kaikki, missä on -security, on tietoturvapäivitys: ne haluat asentaa mahdollisimman nopeasti. -updates ovat muita vakaita päivityksiä, kuten uusia aikavyöhyketietoja.

Sen jälkeen:

anna@web1:~$ sudo apt upgrade

apt näyttää, mitä muuttuu, ja pyytää vahvistusta. Lue lista. Jos siinä lukee "The following packages will be REMOVED" (seuraavat paketit poistetaan), jotain poikkeuksellista on tekeillä ja haluat ensin tietää miksi.

Asentaminen, poistaminen ja siivous

anna@web1:~$ sudo apt install nginx
anna@web1:~$ sudo apt remove nginx       # ohjelma pois, asetukset hakemistossa /etc jäävät
anna@web1:~$ sudo apt purge nginx        # ohjelma ja asetukset pois
anna@web1:~$ sudo apt autoremove         # siivoa pois se, mitä mikään ei enää tarvitse

Ero komentojen remove ja purge välillä on kätevä: jos haluat poistaa jotain väliaikaisesti ja asentaa sen myöhemmin uudelleen samoilla asetuksilla, käytä remove. Jos haluat todella aloittaa puhtaalta pöydältä, purge.

Hakeminen ja lisätiedot:

anna@web1:~$ apt search fail2ban
anna@web1:~$ apt show fail2ban
anna@web1:~$ apt-cache policy openssh-server
openssh-server:
  Installed: 1:10.0p1-7
  Candidate: 1:10.0p1-7+deb13u1
  Version table:
     1:10.0p1-7+deb13u1 500
        500 http://deb.debian.org/debian-security trixie-security/main amd64 Packages
 *** 1:10.0p1-7 500
        500 http://deb.debian.org/debian trixie/main amd64 Packages

apt-cache policy on komento, jota käytät, kun haluat tietää, mistä paketti tulee ja minkä version apt valitsee. *** on asennetun version kohdalla, Candidate on se, minkä päivitys asentaisi.

Debian-versiot ja ohjelman versio

Usein kuultu valitus: "Debianissa on vanha nginx-versio." Se pitää paikkansa, ja se on tarkoituksellista. Debian ja Ubuntu jäädyttävät versiot julkaisun yhteydessä ja lisäävät sen jälkeen vain tietoturvakorjauksia ja vakavien vikojen korjauksia, ilman uusia ominaisuuksia. Siksi paketissa, jolla on "vanha" versionumero, voi silti olla kaikki tuoreet tietoturvakorjaukset: ne on siirretty takaisin (backport) vanhaan versioon. Sen tunnistaa päätteestä, kuten +deb13u1 tai ubuntu0.1.

Älä siis koskaan vertaa pelkkää versionumeroa valmistajan verkkosivuun arvioidessasi, oletko haavoittuvainen. Katso jakelusi tietoturvatiedotteita: Debian Security Tracker (security-tracker.debian.org) ja Ubuntu Security Notices (ubuntu.com/security/notices) kertovat jokaisen haavoittuvuuden kohdalla, onko sinun versiosi korjattu.

Muutama sääntö rauhalliseen palvelimeen

  • Asenna vain se, mitä tarvitset. Jokainen paketti on koodia, jota pitää päivittää, ja joskus palvelu, joka kuuntelee (oppitunti 5.1).
  • Mieluummin jakelusta kuin verkkosivulta. Ohjelmaa, jonka käännät itse tai lataat erillisenä tiedostona, apt upgrade ei päivitä. Silloin sinun on itse seurattava tietoturvatiedotteita.
  • Lisälähde vain valmistajalta itseltään, omalla avaimella ja Signed-By-määrityksellä. Älä koskaan lisää avainta "kaikkeen" äläkä koskaan lähdettä tuntemattomalta verkkosivulta (oppitunti 4.3).
  • Lue, mitä apt kysyy. Päivityksen aikana apt voi kysyä, haluatko korvata muokatun asetustiedoston valmistajan uudella versiolla. Jos et tiedä, mitä olet siihen muuttanut, valitse "keep the local version" (oletus, eli säilytä paikallinen versio) ja katso ero myöhemmin komennolla diff: uusi versio on tallennettu viereen nimellä .dpkg-dist.

AlmaLinuxissa ja Rocky Linuxissa

Niissä pakettienhallinta on dnf ja paketit ovat .rpm-muotoisia. Komennot muistuttavat apt:n komentoja: dnf check-update (lista), dnf upgrade (päivitys, update ja upgrade yhdessä), dnf install, dnf remove, dnf info. Lähteet ovat hakemistossa /etc/yum.repos.d/*.repo. Paljon lisäohjelmia (kuten fail2ban) tulee erillisestä EPEL-lähteestä, jonka otat ensin käyttöön komennolla dnf install epel-release. Pelkät tietoturvapäivitykset saat näkyviin komennolla dnf updateinfo list --security.

Käytännössä: VPS-näkymä

WebOkéllä, kuten useimmilla muillakin palveluntarjoajilla, VPS:n asennus määrittää jakelun oletuslähteet valmiiksi oikein. Niihin ei yleensä tarvitse koskea. Päivitä palvelin heti ensimmäisen kirjautumisen jälkeen komennoilla apt update ja apt upgrade (oppitunti 1.2), ja ota ennen suuria muutoksia snapshot palveluntarjoajasi hallintapaneelissa.

Yhteenveto

  • Debianissa ja Ubuntussa ohjelmat tulevat allekirjoitetuista pakettilähteistä; apt hakee, asentaa, päivittää ja siivoaa.
  • apt update hakee vain listan; apt upgrade päivittää poistamatta mitään; apt full-upgrade saa myös poistaa.
  • Tietoturvapäivitykset tulevat suitesta, jonka nimessä on -security; apt list --upgradable ja apt-cache policy näyttävät, mistä versio tulee.
  • Vanhassa versionumerossa, jossa on +deb13u1 tai ubuntu0.x, voivat olla kaikki korjaukset (backport): katso jakelusi tietoturvatiedotteita.
  • Lisälähde vain valmistajalta itseltään, omalla avaimella Signed-By-määrityksessä.

Tietovisa (quiz)

1. Kirjoitat sudo apt upgrade palvelimella, jolle et ole tehnyt mitään viikkoon, ja apt ilmoittaa kaiken olevan ajan tasalla. Tiedät kuitenkin, että eilen julkaistiin OpenSSH-päivitys. Mikä on todennäköisin selitys?



2. Mikä on ero komentojen apt remove ja apt purge välillä?



3. Komennon apt list --upgradable tulosteessa lukee openssh-server/noble-security .... Mitä osa noble-security kertoo?



4. Ohjelman verkkosivulla on versio 2.8, kun taas Debian toimittaa version 2.6, jossa on +deb13u2. Kollega sanoo: "Debian on siis haavoittuvainen kaikille aukoille, jotka korjattiin versioissa 2.7 ja 2.8." Mikä pitää paikkansa?



5. Miksi lisäpakettilähteeseen kuuluu oma avain ja Signed-By?



Tehtävä

Tehtävä Z4.1: Mitkä päivitykset ovat tietoturvapäivityksiä? Esimerkkitiedostossa apt-upgradable.txt on komentojen apt list --upgradable ja apt-cache policy tuloste Debian 13 -palvelimelta. Vastaa: mitkä paketit tulevat tietoturvalähteestä, mikä paketti tulee valmistajan lähteestä Debianin sijaan, mikä openssh-server-versio on nyt asennettuna, ja mikä paketti on tavallinen vakaa päivitys ilman tietoturvasyytä? Ohjelma vertaa vastauksiasi kiinteään vastausavaimeen. Jos sinulla on jo oma palvelin, aja samat komennot ja katso, mitä näet.

Tehtävä Z4.1: Mitkä päivitykset ovat tietoturvapäivityksiä?

Tähän tehtävään liittyvä tiedosto: apt-upgradable.txt





Sitä, mitä kirjoitat ja mitä löydämme, ei tallenneta. Selaimesi muistaa vastauksesi ja sen, oletko suorittanut tehtävän. Jos olet kirjautunut sisään, tallennamme kohtaan Omat kurssit vain sen, että tehtävä oli (lähes) oikein; voit poistaa sen myös sieltä.

Lue lisää

Hetkinen…

Määritä verkkotunnuksesi

Määritä kullekin verkkotunnukselle nimipalvelimet, liitos webhotelliin ja se, kuka tulee omistajaksi.

Ladataan verkkotunnuksia…