10.02.2009
Esa Turtiainen

Joka kerta, kun käytät Internetin palveluja, kerrot operaattorisi nimipalvelimelle helposti tallennettavassa muodossa esimerkiksi millä sivustoilla käyt. Pidän todennäköisenä, että operaattorit tallettavat nämä tiedot tietoliikenteen tunnistetietoina, jotka luovututetaan jälkikäteen mm. viranomaisille pyydettäessä. Operaattori saa myös käyttää tunnistetietoja markkinoinnissaan, jos olet antanut siihen luvan.

Myös muutamat turvallislta tuntuvat etäkäyttöratkaisut käyttävät nimipalvelinta paikallisesta koneesta käsin kertoen paikalliselle operaattorillesi mitä teet esimerkiksi ulkomailla.

Mikäli verkkosi on yhteisötilaajan hallussa (yritys, koulu, yliopisto, kirjasto, taloyhtiö jne.), myös yhteisötilaajalla tullee olemaan oikeus tallettaa ja analysoida tunnistetietoja. Tämä tekee esimerkiksi lehtimiehille vaikeaksi taata lähdesuoja.

Kuinka Internet toimii?

Internet on hyvin anarkistinen järjestelmä: tiedonsiirto jaetaan pieniin paketteihin, ja jokaisen paketin kuljetus perille päätetään tapauskohtaisesti tietämättä muista paketeista mitään. Teknisesti ei ole estettä siihen, että lähettäessäsi viestejä, voit lähettää joka toisen paketin ADSL-modeemin kautta ja joka toisen 3G-mokkulan kautta. Vastaanotettaessa viestejä paketilla oleva IP-osoite kuitenkin kertoo vastaanottajan ja operaattorin. IP-osoite voi olla esimerkiksi muotoa:

194.89.205.67

Tämä osoite kertoo sekä sen operaattorin, joka paketin välittää (tässä tapauksessa TeliaSonera), että sen tietokoneen operaattorin sisällä, jolle paketti on matkalla. Jos vaihdat operaattoria, IP-osoitteesi vaihtuu. Jos tietokoneeseesi on liitetty sekä ADSL-modeemi että 3G-mokkula, niillä on kummallakin oma osoite ja vastapuolen viestit tulevat siihen osoitteeseen ja sen operaattorin kautta, jonka olet vastapuolelle kertonut.

Jos et ole törmännyt IP-osoitteisiin, se ei ole ihme. Internetin jokapäiväisessä käytössä käytetään selväkielisiä verkkotunnuksia, jotka nimipalvelin muuttaa IP-osoitteiksi.

Kotikoneilla tämä toimii seuraavasti: kun kytket tietokoneesi verkkoon, se käy pyytämässä operaattorilta tietokoneellesi sopivan IP-osoitteen ja nimipalvelimen osoitteen. Kun tämän jälkeen esimerkiksi menet webbisivuille osoitteessa:

http://www.ip-adress.com/ip_tracer

Tietokoneesi kysyy nimipalvelimelta tietokoneen www.ip-adress.com osoitetta. Kun se on saatu, tietokoneesi lähettää paketteja saatuun IP-osoitteeseen (213.86.83.116), ja odottaa löytävänsä sieltä palvelun "http".

Edellä mainittu palvelu ip-adress.com:ssa kertoo sinulle oman IP-osoitteesi ja sen, mitä sen perusteella tiedetään sijainnistasi. Yleensä se osaa kertoa operaattorin lisäksi kunnan, jossa asut. (Nimessä ip-adress on vain yksi "d"; osoite, jossa on kaksi d:tä on huijaussivusto).

Ongelma

Nimipalvelin sijaitsee operaattorillasi. Jokainen palvelupyyntö, jonka teet verkossa, johtaa nimipalvelinkyselyyn, ja nimipalvelimelle on hyvin yksinkertaista tallettaa jokainen pyyntö arkistoon. Vaikka tarkka webbiosoite (URL) ei näykään nimipalvelimessa, arkistoon jää olennaisia tietoja siitä, mitä teet tietokoneellasi. Tuosta arkistosta on esimerkiksi nykyaikaisilla tiedonlouhintamenetelmillä helppo löytää kaikki säännönmukaisuudet. Tämä tarkoittaa yhtä hyvin terroristeja kuin esimerkiksi tiettyyn etniseen ryhmäänkin kuuluvia. Tai yhtä hyvin asunnon ostoa harkitsevia varakkaita ihmisiä.

Ratkaisuja

Yksityisyyden toteuttamisessa on usein kyse siitä, että jaat tiedon osiin eri paikkoihin niin, että kokonaisuutta ei voi koota ilman näiden paikkojen yhteistyötä. Esimerkiksi yksi operaattori voi tietää kuka sinä olet ja toinen tetää mitä sinä teet. Jos pidät operaattoreiden yhteistyötä sovellukseesi nähden riittävän epätodennäköisenä, yksityisyytesi on suojattu.

Täydellinen ratkaisu väistämättä edellyttää sitä, että sinulla on liittolainen nykyisen operaattorisi ulkopuolella - toinen tietokone, jonka operaattoriin luotat enemmän kuin nykyiseen. Luottamusta toiseen operaattoriin lisää se, että se on toisessa maassa toisen hallinnon alaisuudessa, eikä se siksi todennäköisesti halua auttaa kotioperaattoriasi tietojesi yhdistelemisessä. Välttämättä et joudu erikseen ylläpitämään tällaista tietokonetta, koska välittäjiä ylläpitävät myös erilaiset yhteisöt ja kaupalliset yritykset. Yhteys tietokoneesi ja tämän välittäjätietokoneen kanssa yleensä salataan, vaikka tässä käsiteltävän nimipalvelinongelman kannalta tämä ei ole olennaista.

Pakettien sisällön tarkastaminen on paljon raskaampaa kuin nimipalvelukyselyiden tallentaminen. Yksittäisiä paketteja on niin paljon ettei niitä voi tallettaa "varmuuden vuoksi". Siksi jo yksinkertainen nimipalvelimen ohittaminen saattaa parantaa olennaisesti yksityisyyttäsi.

Oma nimipalvelin

Voit asentaa omaan tietokoneeseesi samanlaisen täyden nimipalvelimen kuin operaattorillasi. Esimerkiksi ISC Bind on nimipalvelin, jota monet operaattorit käyttävät, mutta se on saatavilla myös Windows- ja Linux-tietokoneille. Nimipalvelin selvittää verkkotunnukset suoraan tekemällä kyselyn Internetin juurinimipalvelimille, joiden IP-osoite on ennalta tunnettu ja sisäänrakennettu jokaiseen nimipalvelimeen. Juurinimipalvelin ei tunne kaikkien maailman tietokoneiden osoitteita, mutta se tietää puolestaan nimipalvelimet, jotka vastaavat verkkotunnuksista kuten ".com" ja ".fi". Nämä taas tuntevat seuraavan tason. Nimipalvelin muistaa tunnetut osoitteet pitkään, jolloin saman verkkotunnuksen kysyminen uudelleen ei aiheuta uutta kyselyryöppyä. Operaattorisi ei saa automaattisesti kaikkia nimipalvelukyselyjäsi tutkimatta verkossa kulkevien pakettien sisältöä.

Oman nimipalvelimen käyttö ei ole välttämättä suositeltavaa. Nimipalvelin on hyvin monimutkainen tietokoneohjelma, ja sen virheet muodostavat jälleen uuden tavan, millä tietokoneesi voi jumiutua. Se on lisäksi tarkoitettu vakavaan käyttöön: juurinimipalvelinkyselyt tehdään varmuuden vuoksi moneen palvelimeen yhtä aikaa, mikä lisää verkon kuormitusta. Yksityisyyskään ei ole niin hyvä kuin ensin ajattelisi. Vaikka nimipalvelimelta kysyttäisiin pelkästään seuraavaa nimipalvelinta, sille annetaan aina koko haettu verkkotunnus. Yhden nimipalvelimen sijaan kerrot siis monelle nimipalvelimelle mitä palvelua käytät. Nimipalvelinkyselyt ovat sitä paitsi aina yhdessä helposti tunnistettavassa paketissa, jolloin operaattorin on helppo uudelleenohjata ne itselleen.

OpenDNS-palvelu

Muut operaattorit eivät yleensä vastaa muiden operaattoreiden asiakkaiden tekemiin verkkotunnuskyselyihin (ellei kyse ole heidän asiakkaidensa verkkotunnuksesta). On kuitenkin erityispalveluja, jotka tarjoavat nimipalvelua. Yksi tällainen ilmainen palvelu on OpenDNS.

Voit asettaa nimipalvelimen osoitteeksi kiinteän 208.67.222.222 (varaosoite 208.67.220.220), jolloin nimipalvelupyynnöt menevät suoraan OpenDNS-nimipalvelimelle. Voit myös perustaa käyttäjätunnuksen, jolla voit ohjata ja valvoa nimipalvelimen käyttöä. Esimerkiksi voit määrätä, että osoitetta ei anneta, jos kyseessä on tunnettu tietojenkalastelusivusto. Vastaavasti myös kaikenlaiset siveettömät tai jopa yhteisösivustot voidaan kieltää.

Vaikka OpenDNS-palvelu on ilmainen, sen on ennemmin tai myöhemmin rahoitettava toimintansa - ehkä sinun tietojesi myymisellä. Palvelulla voit myös kerätä tietoja nimipalvelimen käytöstä tavalla, joka on joissain tapauksissa laitonta (esimerkiksi tietojen kerääminen puolison tietokoneen käytöstä).

Oma palvelin kotiverkon ulkopuolella

Voit siirtää webbisurffailusi tapahtumaan kotiverkkosi ulkopuolella olevasta hallitsemastasi tietokoneesta. Helposti se tapahtuu sellaisissa tietokoneissa, joihin voidaan kirjautua käyttäen SSH-ohjelmaa (Tatu Ylösen kehittämä Secure Shell), Tämä on tavallista myös halvoissa Web-palvelinhotelleissa.

SSH-ohjelmissa on vähän tunnettu piirre, joka tekee tämän tyyppisen tunneloinnin helpoksi. Sitä sanotaan SOCKS-välittimeksi. Sillä siirretään sovelluksen kaikki Internet-operaatiot tapahtumaan oikeasti siinä koneessa, johon SSH-yhteys on. SOCKS on ominaisuus, jota selaimesi on tuettava, mutta esimerkiksi Firefoxista tuki löytyy.

Linuxissa yhteys muodostetaan komennolla:

ssh -D 9999 tunnus@webbihotelli.example

ja tämän jälkeen kirjaudut normaalisti kohdekoneeseen. Paikallisen koneen porttiin 9999 perustetaan SOCKS-palvelin, johon tulevat pyynnöt siirretään SSH-yhteyden toiseen päähän.. Firefoxin yhteysasetuksissa poistat välipalvelimen käytöstä ja samassa paikassa kirjaat käyttäväsi SOCKSv5-palvelinta "localhost 9999". Tämän lisäksi Firefoxissa on erikseen asetettava, että myös nimipalvelinkyselyt tehdään SOCKS-palvelimessa. Tämä tehdään kirjoittamalla osoiteriville about:config, ja varmistetaan, että seuraava asetus on tehty:

network.proxy.socks_remote_dns = true

Windowsissa SSH-ohjelma voi olla esimerkiksi Putty, joka tukee myös SOCKS-tunnelointia.

Ongelma tässä ratkaisussa on se, että on vaikea olla varma siitä, että tietokoneesi ei tee itsenäisesti nimipalvelinkyselyjä. Firefox-selain saattaa käyttää automatiikkaa, joka ohittaa SOCKS-palvelimen, jos se ei toimi. On myös olennaista käyttää SOCKS v5-asetusta, koska SOCKS v4 tekee aina nimipalvelinkyselyt paikallisessa tietokoneessa! On hyvä varmistaa se, mitä verkossa todella tapahtuu esimerkiksi Wireshark-ohjelmalla.

Linuxissa on myös ohjelma Proxychains, jolla voidaan siirtää helposti ohjelman kaikki verkkoaktiviteetit (TCP ja DNS) SOCKS-yhteyden toiseen päähän. Tällöin siis Firefox-asetuksia ei tarvittaisi vaan Firefox-selain käynnistetään komennolla

proxychains firefox

Oma välitin

WWW-sivuja usein haetaan välittimen (www-proxy) kautta. Jos hallitset palvelinta kotiverkkosi ulkopuolella, on yksinkertaista vaihtaa välitin WWW-selaimen asetuksissa, jolloin haun tarvitsema nimipalvelinkysely tehdään tuossa välittimessä eikä paikallisessa tietokoneessa. Usein käytetty välitinohjelma on Squid - vaikkakin se on raskas henkilökohtaiseen käyttöön.

Selainta ei voi pyytää salaamaan tietoliikennettä selaimen ja välittimen välillä. Sitä varten tarvitaan erillinen salattu tunnelointiratkaisu. Tunneli voidaan tehdä aiemmin mainitulla SSH-ohjelmalla tai ehkä käyttäessäsi omaa pysyvää palvelinta on helpointa salata kaikki paikallisen koneen ja palvelimen välinen liikenne OpenVPN-ohjelman avulla. Tällöin kaikki liikenne palvelimeen on näkymättömästi salattu.

Julkiset välittimet

Verkosta löytyy ilmaisia välittimiä kaikkien käytettäväksi. Lista ilmaisista välittimistä löytyy helposti hakukoneiden avulla ("anonymous proxy list").

Edellä mainittu ip-adress.com tarjoaa kaupallisesti ohjelmaa, jolla voi helposti piilottaa oman osoitteensa välittimien avulla. Ilmeisesti heillä ei ole omia välittimiä vaan he tarjoavat helpon tavan käyttää muiden ilmaiseksi tarjoamia välittimiä.

Ilmaisia välittimiä käytettäessä on muistettava, että välittimen tarjoajan motiivi saattaa olla mielenkiinto yksityisyyttä tarvitsevaa liikennettä kohtaan. Julkisen välittimen pitäjä saa käsiteltäväkseen salaamatonta "mielenkiintoista" liikennettä. Ilmaisen välittimen kautta ei kannata välittää mitään, mikä ei ole jo muutenkin salattu. Ja kuten aiemmin mainittiin, ei ole olemassa helppoa keinoa salata liikennettä oman tietokoneen ja standardi-WWW-välittimen välillä.

Kaikkia välittimiä käytettäessä on muistettava, että jos olet jo käynyt sivustolla tavanomaisella IP-osoitteellasi, se on saattanut jättää selaimeesi evästeen. Evästeestä sinut voidaan yhdistää tavanomaiseen osoitteeseesi, vaikka käytätkin anonyymiä välitintä (tai jopa myöhemmin esiteltävää sipulireititystä). Usein unohdettu ominaisuus on Flash-evästeet, joita tavanomainen selaimen evästen tuhoaminen ei poista.

Kaupalliset välittimet

Windows-tietokoneeseen voi asentaa helppokäyttöisiä ohjelmia, jotka siirtävät kaiken tietoliikenteesi kaupallisen välittäjän välittimiin. Näitä välittimiä on suuri määrä ympäri maailmaa. Silloin vastaanottajalle näkyvä IP-osoitteesi on välittimen osoite ja nimipalvelinkyselyt tapahtuvat välittäjällä. Sama palveluntarjoaja vastaa kaikista välittimistä. Yksi kauan markkinoilla ollut palveluntarjoaja on Anonymizer. Muita löytyy artikkelin liitteistä.

Webin käyttäminen palveluntarjoajan sivustolta

Joillakin välittimien tarjoajista on myös web-käyttöliittymä,. Voit syöttää varsinaisen www-osoitteen web-sivulle ja tulos näytetään web-sivun alisisältönä. Tällainen palvelu on esimerkiksi Anonymousen AnonWWW. Äärimmilleen vietynä voit käyttää myös täydellistä tietokonetta palveluntarjoajan webbisivulla. Tällaista WWW-sivulla toimivaa Linux-työpöytää tarjoaa Ulteo Online Desktop, vaikkakaan sitä ei ole tarkoitettu erityisesti suojelemaan yksityisyyttäsi.

Tor

Sipulireititys on tekniikka. jossa viestisi kulkee usean yhteistyötä tekevän palvelimen kautta ennen kuin se välitetään Internet-kyselyksi. Tällöin ensimmäinen palvelin tietää kuka sinä olet ja kuinka paljon teet kyselyitä. Viimeinen palvelin tietää kyselyiden sisällön. Keskimmäinen palvelin varmistaa sen, ettei ensimmäinen ja viimeinen palvelin ei voi yhdistää tietojaan. Kaikki linkkien välinen liikenne on salattua.

Suosittu sipulireitystä käyttävä sovellus on Tor. Firefox-selaimeen on saatavilla laajennuksia kuten Torbutton tai Foxyproxy, joilla sipulireitys saadaan helposti päälle ja pois päältä (mutta muista evästeet!). Tor mahdollistaa myös rajoitetusti anonyymien palveluiden tarjoamisen ja esimerkiksi anonyymit wikit. Tor on toteutettu osittain edellä mainitulla SOCKS v5 -järjestelmällä, ja se siirtää nimipalvelinkyselyt verkkoon.

Tor asentaa Windows-koneeseen Tor-palvelimen lisäksi Privoxy-palvelimen, joka siivoaa WWW-kyselyistä helposti jäljitettävät tiedot. Selaimen välittimeksi siis asetetaan Privoxy-palvelin, joka puolestaan välittää pyynnöt eteenpäin Tor-palvelimelle. Tor-kyselyt ovat hyvin hitaita verrattuna tavalliseen webin käyttöön.

Tor on ilmainen vapaaehtoisten ylläpitämiin palvelimiin perustuva järjstelmä. Vastaava kaupallinen palvelu on XeroBank.

Tiedostonjako

Tietoon voi päästä käsiksi myös ilman WWW-kyselyitä. Tieto voidaan ajatella tiedostoina, jotka eivät sijaitse vain yhdessä verkkopalvelimessa. Uusilla vertaisverkkoratkaisuilla voidaan toteuttaa samanlaisia hypertekstilinkkejä kuin tavallisilla WWW-sivuillakin. Tiedon saanti voi kuitenkin olla paljon hitaampaa.Erilaiset vertaisverkkoratkaisut (p2p tai f2f) ovat usein yksityisyydellesi turvallisempia kuin tavalliset WWW-sivustot. Kaikki vertaisverkkoratkaisut eivät kuitenkaan ole yksityisyysratkaisuja. Esimerkki erityisesti yksityisyyteen huomiota kiinnittävästä ratkaisusta on Freenet. Muita anonyymejä vertaisverkkoratkaisuja löytyy artikkelin lopussa olevista linkeistä.

Hieman toinen lähestymistapa on ratkaisuilla, jotka tarjoavat globaalia jaettua tietovarastoa. Näissä tieto näyttää olevan yhdessä maailmanlaajuisessa tiedostorakenteessa, mutta se on myös saatavilla tietokoneessasi samoin kuin vaikkapa ulkoinen kovalevy. Mikäli tiedosto ei ole paikallisesti saatavilla, se käydään hakemassa verkosta. Yksi tällainen ratkaisu on Wuala. Se mahdollistaa omien tietojen tallettamisen salasanalla suojattuna ja myös tietojen jakamisen ryhmille ja julkisuuteen. Kommunikaatio Wualan kanssa on salattua ja Wuala lupaa ettei salattuihin tietoihin ole pääsyä edes heillä. Wualan keskuspalvelimet ovat Sveitsissä ja julkinen osuus sisältää erityisen paljon saksankielistä materiaalia.

Tulevaisuus

Nimipalvelin ei ole välttämätön osa Internet-rakennetta. Nykyisin tehdään paljon tutkimusta verkoista, jotka rakennetaan Internetin päälle ilman, että nimipalvelimia käytettään ollenkaan. Kestää tuskin kauan, että nimipalvelimet on mahdollista korvata esimerkiksi vertaisverkkoratkaisuilla.

Tällä hetkellä ei ole näkyvissä tekniikkaa, jolla Internet-verkkoa voitaisiin sensuroida. Sen sijaan siinä tekniikassa, joka tekee kaikenlaisen sensuroinnin mahdottomaksi, on vielä paljon kehitysmahdollisuuksia. Tämä tekniikka on kuitenkin toistaiseksi melko vaikeakäyttöistä.

Suomen lainsäädäntö ja määräykset

Suomen perustuslaki 11.6.1999/731 10 §, 12 §

Laki sananvapauden käyttämisestä joukkoviestinnässä 13.6.2003/460 16 §

Viestintämarkkinalaki 23.5.2003/393 95 §, 96 §

Sähköisen viestinnän tietosuojalaki 16.6.2004/516 36 §

Pakkokeinolaki 30.4.1987/450 5 a luku

Poliisilaki 7.4.1995/493 31 c §, 32 b §, 32 c §, 32 d §, 33 §

Tunnistamistietojen tallentamisvelvollisuudesta, Viestintäviraston määräyksiä 53/2008 M (http://www.ficora.fi/index/saadokset/maaraykset.html)

Linkkejä artikkelissa mainittuihin asioihin ja tuotteisiin

ISC BIND (https://www.isc.org/software/bind)

OpenDNS (http://www.opendns.com)

SSH (http://www.openssh.com)

PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty)

Proxychains (http://proxychains.sourceforge.net)

Squid (http://www.squid-cache.org)

OpenVPN (http://openvpn.net)

Wireshark (http://www.wireshark.org)

SOCKS v5 (http://www.ietf.org/rfc/rfc1928.txt)

Anonymizer (http://www.anonymizer.com)

AnonWWW (http://anonymouse.org/anonwww.html)

Ulteo (http://www.ulteo.com/home/en/onlinedesktop ) (Huomaa Online Desktop, ei Virtual Desktop)

Tor (http://www.torproject.org)

Xerobank (http://xerobank.com )

Privoxy (http://www.privoxy.org)

Wuala (http://www.wuala.com)

Data mining for telecommunications network log analysis, Kimmo Hätönen, Väitöskirja, 30.1.2009, (http://urn.fi/URN:ISBN:978-952-10-5196-8)

Lista anonymistointipalvelua tarjoavista yrityksistä (http://www.dmoz.org/Computers/Internet/Proxying_and_Filtering/Hosted_Proxy_Services)

Anonyymisyyttä tarjoavia p2p -ohjelmia (http://www.anonymous-p2p.org)

Suositeltavaa luettavaa

Handbook for Bloggers and Cyber-Dissidents, Reporters sans frontières

(http://www.rsf.org/IMG/pdf/guide_gb_md.pdf)

Electronic Frontier Finland ry (http://effi.org)