OpenBSD: Difference between revisions
Line 42: | Line 42: | ||
===OpenNTPD=== | ===OpenNTPD=== | ||
OpenNTPD on vabavaraline lihtsalt kasutatav NTP protokolli implementatsioon. See pakub võimalust sünkroniseerida kohalikku kella mõne NTP serveriga kui ka toimib ise NTP serverina. | |||
===OpenCVS=== | ===OpenCVS=== | ||
Revision as of 22:22, 1 May 2010
Ülevaade
OpenBSD on vabalt saadaval olev, avatud lähtekoodiga ning paljusid riistvaraplatvorme toetav UNIXi-laadne operatsioonisüsteem. OpenBSD põlvneb BSD-st (Berkeley Software Distribution - California Ülikoolis Berkeleys loodud Unix). Projektiga alustas 1995. aasta lõpus Theo de Raadt, kes oma Kanada kodust seda projekti tänaseni koordineerib. OpenBSD logo ja maskott on kerakala nimega Puffy. OpenBSD projekti puhul pannakse erilist rõhku koodi korrektsusele, turvalisusele, krüptograafiale, standardimisele ning porditavusele. OpenBSD toetab enamuse SVR4 (Solaris), FreeBSD, Linuxi, BSDI, SunOSi ja HPUXi programmide binaarset emulatsiooni (on võimalik kasutada muidu vaid nende operatsioonisüsteemide all töötavat tarkvara). OpenBSD-d arendavad vabatahtlikud. Projekti arenduskulud kaetakse CD-de müügist ja annetustest.
OpenBSD ajaloost
Detsembris 1994 lahkus Theo de Raadt, üks NetBSD loojatest ja arendajatest ning tuumikgrupi liikmetest, NetBSD meeskonnast. 1995. aasta oktoobris alustas ta NetBSD 1.0 lähtekoodil põhinevat OpenBSD projekti. Esimene väljalase (OpenBSD 1.2) ilmus 1996. aasta juulis, millele sama aasta oktoobris järgnes versioon 2.0. Sellest ajast on projekti ajakavas järgitud tava tuua uus versioon välja iga poole aasat tagant, mida hallatakse ja toetatakse peale väljatulekut ühe aasta jooksul. Viimane versioon (OpenBSD 4.6) tuli välja 18. oktoobril 2009, järgmine versioon (OpenBSD 4.7) tuleb välja 19. mail 2010.
25. juulil 2007 anti teada OpenBSD Fondi loomisest, mis on Kanadas asuv mittetulunduslik organisatsioon. Fondi eesmärk on olla üldiseks kontatiks isikutele ja organisatsioonidele, kes soovides OpenBSD projekti kuidagi toetada, vajavad suhtlemiseks konkreetset juriidilist isikut.
OpenBSD-le omane
OpenBSD projekti puhul pannakse erilist rõhku koodi korrektsusele, turvalisusele, krüptograafiale, standardsusele ning porditavusele. OpenBSD toetab enamuse SVR4 (Solaris), FreeBSD, Linuxi, BSDI, SunOSi ja HPUXi programmide binaarset emulatsiooni (st. on võimalik kasutada muidu vaid nende operatsioonisüsteemide all töötavat tarkvara).
Avatud lähtekood
OpenBSD loomisel otsustas Theo de Raadt, et lähtekood peab olema kõigile igal ajahetkel lihtsalt ligipääsetav ja loetav. Seetõttu pani ta üles avaliku anonüümse CVS serveri, mis oli tol ajal tarkvaraarenduse maailmas esimene omasugune: tol ajal oli pigem kombeks, et vaid väikesel rühmal arendajatel on ligipääs projekti lähtekoodi repositooriumile. Selline otsus võimaldas kasutajatel võtta tarkvaraarenduses veidi aktiivsem roll ja lihtsustas arendajate tööd ning ühtlasi oli rohkem kooskõlas avaliku lähtekoodi filosoofiaga. OpenBSD avatusele suunatud poliitika laieneb ka riistvara dokumentatsioonile. de Raadti väitel teevad arendajad sageli draiverite kirjutamisel vigu ning valmis binaarsel kujul draiverid ei ole OpenBSD puhul üldse vastuvõetavad, sest need ei ole usaldatavad ning nendes ilmnevaid vigu ei saa ka parandada.
Litsentsipoliitika
OpenBSD projekti üks eesmärke on säilitada nö algse Berkeley Unixi autoriõiguste vaimu, mis lubas Unixi lähtekoodi levitamist suhteliselt väheste piirangutega. Selleks on uue koodi puhul eelistatud Internet Systems Consortium (ISC) litsents, mis on lihtsustatud versioon 2-punktlilisest BSD litsentsist (ära on jäetud sõnastus, mis on täidetud Berni konventsiooniga). Kuid ka MIT ja BSD litsentid on aktsepteeritud. Laialdaselt kasutatav GNU General Public License loetakse nendega võrreldes liialt piiravaks.
2001. aastal võeti ette süstemaatiline OpenBSD litsentsiaudit ning leiti üle saja faili, milles sisaldus koodi, mis oli kasutuses litsentseerimata või mille kasutamine rikkus mingil moel litsentsiõigusi. Selle tulemusena osa koodi eemaldati, palju asendati ning mõnedel juhtudel muutis litsentsiomanik tingimusi, et OpenBSD-s saaks tema koodi jätkuvalt kasutada.
Litsentseerimispiirangutest tingituna on OpenBSD arendajad kirjutanud tarkvara nullist või adopteerinud mõne sobiva litsentsiga tarkvara. Märkida võib näiteks pf paketifiltri loomist peale seda, kui IPFilter'ile rakendusid liigsed litsentsipiirangud. OpenBSD arendajad on ka asendanud GPL-i aluseid utiliite samaväärsete BSD litsentsi alusel olevatega (näiteks diff, grep, gzip ja pkg-config) ning loonud uusi projekte, sh. OpenBGPD ja OpenNTPD.
Turvalisus
Paljud turvaspetsialistid peavad OpenBSD-d kõige turvalisemaks UNIXi-laadseks operatsioonisüsteemiks üldse. Turvalisus on pideva ja põhjaliku lähtekoodi auditeerimise tulemus. OpenBSD veebilehel on kirjas teade: "Vaid kaks turvaauku vaikimisi installatsioonis ühe igavesti pika aja jooksul". See väide on leidnud ka kriitikat, kuna vaikimisi install sisaldab suhteliselt vähe töötavaid teenuseid, ning üldjuhul kasutajad siiski paigaldavad täiendavat tarkvara. Arendajate väitel on aga vaikimisi install taotluslikult minimalistlik, et algajad kasutajad ei peaks koheselt olema eksperdid erinevates turvaküsimustes.
OpenBSD sisaldab mitmeid turvalisuse tõstmiseks loodud funktsionaalsusi. Nende hulgas: API lisandused, erinevad mälu kaitsmise tehnikad, krüprograafia ja juhuarvudega seotud omadused. Et vähendada riski, et turvaaugust või valest konfigureerimisest tulenevalt on mingil kasutajal liiga palju õigusi, on mõnedesse programmidesse kirjutatud võimalus kasutada õiguste eraldatust, õiguste tühistamist ja chroot'imist. Õiguste eraldamine on esmakordselt just OpenBSD-s kasutusele võetud tehnika, mille puhul programm on jaotatud kaheks või rohkemaks osaks, millest üks täidab mingeid õigusi vajabvaid operatsioone, ning teine osa töötab ilma igasuguseid õigusi omamata. Õiguste tühistamine on eelmisele sarnane, kuid tähendab seda, et programm täidab vajalikud operatsioonid õigustes, millega ta käivitub ning seejärel loobub õigustest. Chroot-imine tähendab rakenduse piiramist töötama vaid ühes failisüsteemi osas, takistades tal sellega juurdepääs süsteemifailidele või muudele oluliste failidele. Arendajad on lisanud need omadused OpenBSD versioonidele mitmetest üldlevinud rakendustest, nagu näiteks tcpdump ja Apache veebiserver.
The project has a policy of continually auditing code for problems, work that developer Marc Espie has described as "never finished ... more a question of process than of a specific bug being hunted".[48] He went on to list several typical steps once a bug is found, including examining the entire source tree for the same and similar issues, "try[ing] to find out whether the documentation ought to be amended", and investigating whether "it's possible to augment the compiler to warn against this specific problem". A standard code style, the Kernel Normal Form, which dictates how code must look in order to be easily maintained and understood, must be applied to all code before it is considered for inclusion in the base operating system; existing code is actively updated to meet the style requirements.
Linux kernel creator Linus Torvalds has expressed the view that development efforts should be focused on fixing general problems rather than targeting security issues, as non-security bugs are more numerous ("all the boring normal bugs are _way_ more important, just because there's a lot more of them"[49]). On July 15, 2008, he criticised the OpenBSD policy: "[T]hey make such a big deal about concentrating on security that they pretty much admit that nothing else matters to them". [50] OpenBSD developer Marc Espie replied to Torvalds' statement: "It's a totally misinformed opinion ... [Fixing normal bugs] is exactly what people in the OpenBSD project do, all the time".[51] Developer Artur Grabowski also expressed surprise: "That's the funniest part about this ... [Torvalds] was saying the same things we say"
Krüptograafia
OpenBSD projekt asub ametlikult Kanadas, kus puuduvad krüptograafiatarkvara ekspordipiirangud.
Seotud projektid
OpenSSH
OpenSSH (OpenBSD Secure Shell) tarkvarakomplekt, mis pakub ssh protokolli kasutades krüpteeritud võrgukommunikatsiooni, turvalist asendust tavalisele telnetile. See loodi kui avatud lähtekoodiga alternatiiv SSH Communications Security poolt pakutavale Secure Shell tarkvarakomplektile. OpenSSH-d arendatakse osana OpenBSD projektiks. Algselt võtsid arendajad aluseks viimase piisavalt vaba litsentsiga originaalse SSH koodi ning arendasid sellest edasi OpenSSH. Esimest korda ilmus see OpenBSD 2.6 versioonis ning on tänaseks päevaks kõige populaarsem SSH implementatsioon ning kasutusel paljudes operatsioonisüsteemides.
OpenBGPD
OpenBGPD on vabavaraline implementatsioon Border Gateway Protocol versioon 4-st. See võimaldab tavalistel arvutitel toimida ruuteritena, vahetades ruutimisinfot teiste BGP protokolli tundvate süsteemidega.
Projekt sai alguse rahulolematusest teiste saadaval olevate implementatsioonidega. Tänaseks päevaks on OpenBGPD küllaltki täiuslik implementatsioon. Kasutajad kiidavad sageli selle lihtsust ning suurt jõudlust ning ka töökindlust. OpenBGPD kaaslane OpenOSPFD lisab toe OSPF ruutimisprotokollile.
OpenNTPD
OpenNTPD on vabavaraline lihtsalt kasutatav NTP protokolli implementatsioon. See pakub võimalust sünkroniseerida kohalikku kella mõne NTP serveriga kui ka toimib ise NTP serverina.
OpenCVS
Theo de Raadt
Theo de Raadt on sündinud 19. mail 1968 Pretorias, Lõuna Aafrikas. Ta elab Calgarys, Kanadas. Ta on tarkvarainsener, kes on OpenBSD ja OpenSSH projektide looja ning üks NetBSD projekti loojatest. 1992. aastal omandas ta Calgary Ülikoolist bakalaureusekraadi arvutiteaduses. Aastal 1993 asutas ta koos kolme teise mehega NetBSD projekti. Nad ei olnud rahul Jolixi, tolleaegse standardse BSD, kiiruse ja kvaliteediga ning uskusid, et rohem avalikum arendusmudel tuleb operatsioonisüsteemi arendamisel suureks kasuks.
1994. aasta detsembris paluti de Raadtil astuda tagasi oma kohalt NetBSD vanemarendajana ja NetBSD põhimeeskonnast. Sellepõhjus pole päris selge, kuid on kõlanud väiteid isikute kokkosobimatusest. De Raadti on kritiseeritud tema veidi keerulise ja konfliktse iseloomu pärast. Mõned leiavad tema otsekohesuse olevat ka värskendava ning vähesed eitavad, et ta on andekas häkker ja turvaguru.
Oktoobris 1995 asutas de Raadt OpenBSD projekti.
De Raadt on OpenBSD loomisest peale olnud ka vaba tarkvara valjuhäälne propageerija. Ta on ka tugev sõnavabaduse pooldaja, pidades vahete-vahel avalikke vaidlusi erinevate gruppidega, alates Linuxi propageerijatest kuni valitsusteni välja. Selline sõnakas käitumine, kuigi vahel konfliktiallikas, on toonud talle ka palju kiitust.
de Raadt has given presentations at open source, free software and security conferences around the world — including FOSDEM in Brussels, Belgium, Usenix in San Antonio, Texas, U.S., AUUG Conference in Melbourne, Australia and fisl in Porto Alegre, RS, Brazil.
Lingid
Autor
Siim Liivand AK31