OpenBSD

**OpenBSD** on UNIXi-laadne operatsioonisüsteem, mis kuulub BSD perekonda ning on keskendunud turvalisusele ja pühendab palju tähelepanu krüpteerimisele. Samuti on OpenBSD porditud paljudele platvormidele, mis küll tuleneb NetBSD-ga ühisest päritolust. OpenBSD peamine eestvedaja on Theo de Raadt, kes elab Calgarys Alberta provintsis Kanadas.

OpenBSD hargnes NetBSD projektist 1995. aastal Theo de Raadti juhtimisel. OpenBSD on tuntud kui väga järjekindlalt avatud lähtekoodi ja kvaliteetset dokumentatsiooni nõudev projekt, mis ei tee tarkvara litsentside osas kompromisse ning keskendub turvalisusele ja koodi korrektsusele. Projekti maskotiks on ogakala Puffy. 

OpenBSD sisaldab turvafunktsioone, mis teistes süsteemides puuduvad või on valikulised. OpenBSD arendajatel on tavaks viia läbi lähtekoodi auditeid vigade ja turvaaukude leidmiseks. Tarkvaralitsentsidest on BSD litsents eelistatuim ja minevikus on litsentside kasutamise osas auditeid läbi viidud. Selle tulemusel on eemaldatud või ümber kirjutatud koodi osasid, mis kasutasid vähemaktsepteeritavaid litsentse. 

Sarnaselt teiste BSD-põhiste operatsioonisüsteemidega arendatakse OpenBSD tuuma ja kasutajaprogramme, näiteks kest (*shell*), ning selliseid levinud tööriistu nagu cat ja ps, koos ühes allikate hoidlas. Kolmandate osapoolte tarkvara on saadaval binaarpakkidena või saab neid kompileerida, kasutades portide puud. 

OpenBSD projekt on porditud 17 tarkvaraplatvormile, näiteks DEC Alpha, Intel i386, Hewlett-Packard PA-RISC, AMD AMD64 ja Motorola 68000 protsessorid, Apple PowerPC arvutid, Sun SPARC ning SPARC64 põhised arvutid VAX ja Sharp Zaurus.

## Ajalugu ja levik
Detsembris 1994. aastal paluti NetBSD kaasasutajal Theo de Raadtil vanemarendaja kohalt tagasi astuda ja NetBSD meeskonna tuumikust lahkuda ning tema juurdepääsuõigus lähtekoodi hoidlale (*repository*) tühistati. Selle põhjused ei ole täpselt teada, kuid on väidetud, et see oli tingitud isikutevahelistest kokkupõrgetest NetBSD projektis ja selle postiloendites. De Raadti on kritiseeritud oma mõnikord keerulise iseloomu pärast: Peter Wayner väidab oma raamatus "Free for All", et enne lahkumist NetBSDst "hakkas de Raadt mõnele inimestele vastukarva olema". Linus Torvalds on teda iseloomustanud kui "rasket" isiksust. Üks intervjueerija tunnistas, et oli tema suhtes enne kohtumist ebakindel. On ka vastupidiseid arvamusi: sama intervjueerija kirjeldab de Raadti transformatsiooni pärast OpenBSD asutamist ja tema "soovi oma meeskonna eest hoolitseda". Mõned peavad tema otsekohesust värskendavaks ja vähesed eitavad tema programmeerimisannet või "turva-guruks" olemist. 

De Raadt asutas OpenBSD projekti 1995. aasta oktoobris NetBSD 1.0 hargmikuna (*fork*). Esimene väljalase oli OpenBSD 1.2 ja see ilmus 1996. aasta juulis. Sama aasta oktoobris ilmus OpenBSD 2.0. Sellest alates on OpenBSD järginud 6-kuulist uuendamistsüklit. Iga versiooni toetatakse üks aasta. Viimane OpenBSD stabiilne versioon 4.6 ilmus 18. oktoobril 2009.

OpenBSD arendaja Bob Beck teatas 25. juulil 2007 OpenBSD sihtasutuse (*OpenBSD Foundation*) moodustamisest. Tegemist on Kanada mittetulundusühinguga, mille eesmärk on toimida OpenBSD juriidilise esindajana ning kontaktina inimestele ja organisatsioonidele, kes OpenBSD projekti toetada tahavad. 

OpenBSD levikut on raske on hinnata, sest arendajad ei kogu ega avalda infot kasutajate arvu kohta ning muid allikaid on vähe. Septembris 2005 viis BSD Certification Group läbi küsitluse, mille andmetel 32,8% BSD kasutajatest (1420 4330 vastanust) kasutas OpenBSD. See asetas OpenBSD kasutatavuselt teisele kohale, FreeBSD järgi (77%) ja NetBSD (16,3%) ette. Veebileht DistroWatch avaldab statistikat külastatavuse kohta ja seda kasutatakse tihti GNU/Linuxi ja muude seal kajastatavate operatsioonisüsteemid populaarsuse hindamiseks. Seisuga 3. märts 2010 oli OpenBSD 49. kohal 148 külastusega päevas, FreeBSD 14. kohal 566 külastusega päevas ja NetBSD 79. kohal 105 külastusega päevas.

## Avatud tarkvara ja avatud dokumentatsioon

Kui OpenBSD loodi, otsustas Theo de Raadt teha sellega seotud allikad püsivalt kõigile kättesaadavaks. Selle saavutamiseks avas ta Chuck Cranori abiga avaliku anonüümse CVS-serveri. See oli esimene omataoline tarkvaraarenduse maailmas: sel ajal oli tavaks, et ainult väike arendajate meeskond omas juurdepääsu projekti andmetele. Sellisel lähenemisel oli negatiivne külg: arendajad, kes polnud projektiga otseselt seotud, ei saanud selle kulgemist päris täpselt jälgida ja seetõttu võis nende poolt tehtud kaastöö dubleerida juba tehtut. De Raadti otsus nii vastupidi toimida viis OpenBSD nime kasutamise ja nii projekti lähtekood kui dokumentatsioon peavad olema alati avalikud. 

Seda poliitikat iseloomustav intsident toimus märtsis 2005, kui de Raadt postitas teate *openbsd-misc* postiloendisse. Ta teatas, et pärast nelja kuud läbirääkimisi polnud Adaptec avaldanud dokumentatsiooni, mis oli vajalik, et parandada OpenBSD draivereid firma AAC RAID kontrollerite jaoks. Sarnaselt varasemate juhtumitega minevikus kutsus de Raadt OpenBSD kogukonda asjas osalema ja oma arvamust Adaptecile avaldama. Varsti pärast seda tegi endine Adapteci töötaja, FreeBSD arendaja ja FreeBSD AAC RAID-i toe autor Scot Lang de Raadtile peapesu OSNews'i veebilehel, et viimane polnud otse temaga selles küsimuses ühendust võtnud. Sealt liikus arutelu edasi *freebsd-questions* postiloendisse, kus de Raadt väitis, et Scott Lang polnud talle varem abi pakkunud ja ka Adaptec polnud tema poole pöörduda soovitanud. Vaidlust võimendas ka kahe projekti toetajate erinev suhtumine binaarsete kahendobjektide ja NDA lepingutesse. OpenBSD kasutajad ei luba suletud lähtekoodiga tarkvara ja NDA lepingutesse suhtuvad vastumeelselt. FreeBSD suhtumine oli aga teistsugune ja enamus Scott Langi OpenBSD-le pakutud koodist oli suletud ja kirjutatud NDA all. Kuna mingit dokumentatsiooni ei avaldatud enne OpenBSD 3.7 ilmumise tähtaega, eemaldati Adaptec AAC RAID kontrollerite tugi tavalisest OpenBSD tuumast (kernelist).

OpenBSD avatuse poliitika laieneb riistvara dokumentatsioonile. Oma 2006. aasta detsembris toimunud ettekandes väitis de Raadt, et ilma dokumentatsioonita "teevad arendajad sageli vigu draiverite kirjutamisel" ja osutas, et "oo-ma-sain-selle-tööle-tunnet on raskem saavutada, nii et paljud arendajad lihtsalt annavad alla". Ta ütles ka, et tarnijate draiverid on OpenBSD jaoks vastuvõetamatud – neid ei saavat usaldada ja "ei ole võimalik neid parandada, kui need katki lähevad". Tarnijate allikad on "vaevu vastuvõetavad" ja endiselt keerulised parandada, kui vead tekkima peaks.

## Litsents

OpenBSD projekti eesmärk on "hoida Berkeley UNIXi autoriõiguste vaimu", mis lubas "suhteliselt piiramatult UNIXi allikaid levitada". Praeguseni on ISC (*Internet Systems Consortium, Inc*) litsents eelistatud uue koodi jaoks, kuigi MIT või BSD litsentsid on samuti lubatud. ISC litsents on lihtsustatud versioon BSD litsentsist, kust liigne sõnastus vastavalt Berni konventsioonile on eemaldatud. Levinud GNU Üldist Avalikku Litsentsi peetakse eelnevatega võrreldes liialt piiratuks. Sobimatu litsentsiga koodi süsteemi põhiosasse enam ei lubata. Olemasolevat koodi kirjutatakse ümber või litsentseeritakse võimalusel sobivalt. Kui see pole praktiline või põhjustab liigset ajakulu, siis tehakse ka erandeid, näiteks on SSH-l põhineva OpenSSH arendamine OpenBSD meeskonna poolt. OpenSSH ilmus esmakordselt koos OpenBSD 2.6-ga ja on nüüd kõige populaarsem SSH rakendus, mida kasutatakse mitmetes operatsioonisüsteemides. Märkimist väärivad arengud pärast litsentsi piirangute kehtestamist IPFilterile pf tulemüüris, mis ilmus koos OpenBSD 3.0-ga ja on nüüd saadaval ka DragonFly BSDs, NetBSDs ja FreeBSDs. OpenBSD arendajad on hiljuti asendanud sellised GPL litsentsi alla käivad tööriistad nagu diff, grep, gzip ja pkg-config BSD litsentsi kasutavate ekvivalentidega ja on asutanud selliseid projekte nagu OpenBGPD, OpenNTPD, OpenOSPFD ja OpenSMTPD. Septembris 2007 alustati GNU Compiler Collectioni (GCC) asendamist Anders Magnussoni Portable C Compileriga (PCC), mis kasutab BSD litsentsi.

IPFilteri litsentsi sõnastuse muutmine Darren Reedi poolt algatas 2001. aasta juunis OpenBSD portide ja allikate puu koodi litsentsi auditi. Rohkem kui sajas failis leiduv kood leiti olevat litsentseerimata, segaselt litsentseeritud või oli selle kasutamine vastuolus kasutatava litsentsi tingimustega. Kõigi litsentside järgimise tagamiseks võeti ühendust kõigi autoriõiguste omanikega. Osa koodist eemaldati, palju asendati ja osa litsentseeriti ümber. Näiteks mitmikedastus marsruutimise tööriistad mrinfo ja map-mbone, mis olid Xeroxi poolt litsentseeritud ainult uurimistöös kasutamiseks, litsentseeriti ümber, et OpenBSD saaks jätkata nende kasutamist. 

Auditi käigus eemaldati tarkvara, mille oli kirjutanud Daniel J. Bernstein. Bernstein nõudis, et kõik muudatused, mis tema loodud koodis tehakse, tuleb talle kinnitamiseks saata, kuid OpenBSD arendajad leidsid, et selleks kulub liigselt aega ja vaeva. See viis konfliktini Bernsteiniga, kelle arvates oli tema koodi eemaldamine ebaõiglane. Ta viitas veebibrauserile Netscape, mis oli oluliselt piiratuma litsentsiga kui tema tarkvara. Bernstein süüdistas OpenBSD arendajaid silmakirjalikkuses, kuna nood jätsid Netscape'i koodi alles samal ajal, kui tema oma eemaldati. OpenBSD projekti seisukoht oli, et kuigi Netscape litsents oli piiratum, oli seda siiski lihtsam järgida. Nad väitsid, et Bernsteini nõue oma koodi derivaate kontrollida põhjustas palju lisatööd ja selle eemaldamine oli parim viis tema enda nõudmistele vastu tulla.

## Vaata ka
* BSD
* GNU
* OpenSSL
* OpenSSH
* Linux
* Operatsioonisüsteem

## Viited

## Kirjandus

* Jacek Artymiak.*[http://www.devguide.net/books/obclc1 The OpenBSD Command-Line Companion, 1st ed.]* ISBN 83-916651-8-6.
* Jacek Artymiak.*[http://www.devguide.net/books/bfwoap2 Building Firewalls with OpenBSD and PF: Second Edition]* ISBN 83-916651-1-9.
* Yanek Korff, Paco Hope ja Bruce Potter.*[http://www.oreilly.com/catalog/mfreeopenbsd/ Mastering FreeBSD and OpenBSD Security]* ISBN 0-596-00626-8.
* Michael W. Lucas.*[http://www.nostarch.com/frameset.php?startat=openbsd Absolute OpenBSD, Unix for the Practical Paranoid]* ISBN 1-886411-99-9.
* Brandon Palmer ja Jose Nazario.*[http://cseng.aw.com/catalog/academic/product/0,1144,0321193660,00.html Secure Architectures with OpenBSD]* ISBN 0-321-19366-0.
* *[http://www.reedmedia.net/books/pf-book/ The OpenBSD PF Packet Filter Book: PF for NetBSD, FreeBSD, DragonFly and OpenBSD]* kirjastaja Reed Media Services. ISBN 0-9790342-0-5.
* Wes Sonnenreich ja Tom Yates.*[http://www.wiley.com/legacy/compbooks/catalog/35366-3.htm Building Linux and OpenBSD Firewalls]* ISBN 0-471-35366-3.
* Jem Matzan.*[http://www.oreilly.com/catalog/openbsd4/ The OpenBSD 4.0 Crash Course]* ISBN 0-596-51015-2.
* Peter N.M. Hansteen*[http://nostarch.com/pf.htm The Book of PF A No-Nonsense Guide to the OpenBSD Firewall]* ISBN 978-1-59327-165-7.

## Välislingid

*The OpenBSD project
*OpenBSD Journal
*Eesti BSD kasutajaid
*One Floppy OpenBSD MP3 Player and One Floppy Router