Protokoli so dogovorjena pravila, po katerih se naprave in programi sporazumevajo v omrežju. Določajo, kako se podatki pošljejo, prejmejo, preverijo in obdelajo. Brez protokolov brskalniki, strežniki, poštni programi in druge storitve ne bi mogli zanesljivo sodelovati.
Na spletu najpogosteje srečamo protokole za prenos spletnih strani, razreševanje domen, prenos datotek, elektronsko pošto, klepet in varno oddaljeno prijavo.
Pomni: Protokol je dogovor o načinu komunikacije. Ne določa samo, kaj se pošilja, temveč tudi kako se zahteva oblikuje, kako se odgovor vrne in kako se obravnavajo napake.
Osnovna pravila
- Za prenos spletnih strani uporabljamo predvsem HTTP oziroma HTTPS.
- Za pretvorbo domenskih imen v IP naslove skrbi DNS.
- Za prenos datotek se lahko uporabljajo FTP, SFTP ali FTPS.
- Za elektronsko pošto sodelujejo različni protokoli, najpogosteje SMTP, POP3 in IMAP.
- Za varno oddaljeno prijavo in upravljanje strežnikov uporabljamo SSH.
- Pri sodobnih storitvah imajo prednost šifrirane povezave.
Pozor: Če protokol sam po sebi ne šifrira prenosa, se lahko podatki med prenosom lažje prestrežejo. Zato danes praviloma izbiramo varnejše različice, na primer HTTPS namesto HTTP in SFTP ali FTPS namesto osnovnega FTP.
HTTP
HTTP (HyperText Transfer Protocol) je aplikacijski protokol za prenos spletnih strani in drugih spletnih virov med brskalnikom in spletnim strežnikom. Ko v brskalnik vpišemo spletni naslov, brskalnik strežniku pošlje zahtevo, strežnik pa vrne odgovor z vsebino ali s sporočilom o napaki.
HTTP je po zasnovi protokol brez stanja. To pomeni, da posamezne zahteve niso samodejno povezane v trajno sejo. Za prijave, košarice in druge oblike stanja se zato uporabljajo dodatni mehanizmi, na primer piškotki, seje ali žetoni.
Danes se poleg HTTP/1.1 uporabljata tudi HTTP/2 in HTTP/3. HTTP/2 izboljša učinkovitost prenosa, HTTP/3 pa temelji na protokolu QUIC in je prilagojen sodobnim omrežjem.
HTTP metode
| Metoda | Pomen |
|---|---|
GET |
pridobi vsebino vira s strežnika |
HEAD |
vrne le glave odgovora brez telesa vsebine |
POST |
pošlje podatke strežniku, na primer iz obrazca |
PUT |
ustvari ali zamenja vir na strežniku |
DELETE |
zahteva brisanje vira |
OPTIONS |
vrne informacije o podprtih metodah |
CONNECT |
uporablja se za vzpostavitev tunela, na primer prek posredniškega strežnika |
Statusne kode HTTP
- 1xx – informativne kode,
- 2xx – uspešno izvedena zahteva, na primer 200 OK,
- 3xx – preusmeritve, na primer 301 Moved Permanently,
- 4xx – napake na strani odjemalca, na primer 404 Not Found,
- 5xx – napake na strani strežnika, na primer 500 Internal Server Error.
HTTPS
HTTPS je varnejša različica protokola HTTP. Pri HTTPS se podatki med brskalnikom in strežnikom prenašajo po šifrirani povezavi, zato jih je bistveno težje prestreči ali spremeniti med prenosom.
V sodobnem spletu HTTPS temelji na protokolu TLS (Transport Layer Security). TLS zagotavlja zaupnost, celovitost podatkov in preverjanje pristnosti strežnika. Zaradi večje varnosti je HTTPS danes privzeta izbira za sodobna spletišča.
HTTP običajno uporablja vrata 80, HTTPS pa vrata 443.
Pomni: HTTPS ne pomeni, da je celotno spletišče nujno varno, pomeni pa, da je povezava med brskalnikom in strežnikom šifrirana.
DNS – sistem domenskih imen
DNS (Domain Name System) je sistem, ki domenska imena pretvarja v IP naslove. Ljudje si lažje zapomnimo ime, kot je nsa-splet.si, računalniki pa za komunikacijo potrebujejo IP naslov.
DNS zato deluje kot imenik interneta. Ko uporabnik vpiše domeno v brskalnik, DNS poišče pripadajoči IP naslov in omogoči povezavo s pravim strežnikom.
DNS strežniki
- rekurzivni DNS strežnik poišče odgovor za uporabnika,
- avtoritativni DNS strežnik hrani uradne podatke o domeni.
Domenski prostor je urejen hierarhično. Na vrhu je korenska domena, pod njo pa so vrhnje domene, kot so .si, .com in druge.
Način delovanja DNS
- računalnik pošlje poizvedbo rekurzivnemu DNS strežniku,
- če odgovor ni v predpomnilniku, strežnik poišče ustrezne vrhnje in avtoritativne strežnike,
- avtoritativni strežnik vrne ustrezen DNS zapis,
- rekurzivni strežnik vrne odgovor uporabnikovi napravi.
Odgovori se pogosto začasno shranijo v predpomnilnik, zato so ponovne poizvedbe hitrejše. Za dodatno zaščito DNS prometa se lahko uporabljata tudi DoH (DNS over HTTPS) in DoT (DNS over TLS).

Drevesna struktura domenskega prostora
Tipi DNS zapisov
| Zapis | Pomen |
|---|---|
A |
preslika ime gostitelja v naslov IPv4 |
AAAA |
preslika ime gostitelja v naslov IPv6 |
CNAME |
določa drugo oziroma nadomestno ime |
MX |
določa poštne strežnike za domeno |
NS |
določa avtoritativne DNS strežnike za domeno |
PTR |
omogoča obratno preslikavo IP naslova v ime |
TXT |
vsebuje dodatne besedilne podatke |
SOA |
vsebuje osnovne podatke o DNS coni |
Prenos datotek: FTP, SFTP in FTPS
FTP (File Transfer Protocol) je protokol za prenos datotek med računalniki. Uporablja se za nalaganje datotek na strežnik ali za prenos datotek s strežnika na lokalni računalnik.
Osnovni FTP ni šifriran. Zato se danes za varnejši prenos pogosto uporabljata SFTP ali FTPS. SFTP deluje prek SSH, FTPS pa uporablja TLS za zaščito povezave.
Pozor: SFTP in FTPS nista ista protokola. Oba omogočata varnejši prenos datotek, vendar delujeta na drugačen način.
Elektronska pošta: SMTP, MIME, POP3 in IMAP
SMTP
SMTP (Simple Mail Transfer Protocol) je osnovni protokol za pošiljanje elektronske pošte. Uporablja se za prenos sporočil od pošiljateljevega odjemalca do poštnega strežnika in med poštnimi strežniki.
SMTP je bil prvotno zasnovan za preprost prenos besedila, zato se za pošiljanje priponk, šumnikov in različnih vrst vsebin uporablja skupaj z razširitvijo MIME.
MIME
MIME (Multipurpose Internet Mail Extensions) razširja možnosti elektronske pošte. Omogoča pošiljanje različnih vrst vsebin, na primer besedila z različnimi znakovnimi nabori, slik, dokumentov, zvoka, videa in drugih priponk.
POP3
POP3 je protokol za prevzem elektronske pošte s strežnika na uporabnikovo napravo. Zasnovan je predvsem za preprost prenos sporočil iz poštnega strežnika v poštni program.
POP3 je uporaben, kadar želi uporabnik pošto prenesti lokalno, vendar je manj primeren za delo na več napravah.
IMAP
IMAP (Internet Message Access Protocol) je protokol za dostop do elektronske pošte na strežniku. Sporočila praviloma ostanejo shranjena na strežniku, uporabnik pa do njih dostopa z različnih naprav.
IMAP omogoča delo z mapami, sinhronizacijo med več napravami, označevanje sporočil in učinkovitejše upravljanje pošte. Zaradi teh lastnosti je danes pogosto primernejša izbira kot POP3.
Komunikacija in oddaljeni dostop
IRC
IRC (Internet Relay Chat) je besedilni protokol za spletni klepet v realnem času. Uporabniki se povežejo na strežnik in komunicirajo v kanalih ali zasebnih pogovorih.
Čeprav danes ni več tako razširjen kot sodobne klepetalne platforme, je IRC pomemben del zgodovine internetne komunikacije.
SSH
SSH (Secure Shell) je varen protokol za prijavo v oddaljen računalnik in upravljanje sistema na daljavo. Vsi podatki se prenašajo šifrirano, zato je SSH bistveno varnejši od starejših rešitev, kot je Telnet.
SSH se uporablja za oddaljeno administracijo strežnikov, varen prenos datotek, tuneliranje povezav in preverjanje pristnosti z gesli ali kriptografskimi ključi.
- ssh – povezava z oddaljenim strežnikom prek ukazne vrstice,
- sftp – varen prenos datotek prek SSH,
- scp – kopiranje datotek prek SSH.
Primerjava najpogostejših protokolov
| Protokol | Osnovni namen |
|---|---|
| HTTP | prenos spletnih strani in drugih spletnih virov |
| HTTPS | varen prenos spletnih strani po šifrirani povezavi |
| DNS | pretvorba domenskih imen v IP naslove |
| FTP | prenos datotek med računalniki |
| SMTP | pošiljanje elektronske pošte |
| POP3 | prevzem pošte s strežnika na napravo |
| IMAP | dostop do pošte na strežniku in sinhronizacija med napravami |
| SSH | varna oddaljena prijava in upravljanje strežnika |
Priporočila
- Za spletne strani uporabljaj HTTPS, kadar je to mogoče.
- Za prenos datotek raje uporabi SFTP ali FTPS kot nešifriran FTP.
- Za delo z elektronsko pošto na več napravah je praviloma primernejši IMAP kot POP3.
- Za oddaljeno upravljanje strežnikov uporabljaj SSH in ne starejših nešifriranih rešitev.