&os;: Egy nyílt forrású alternatíva a &linux; mellett Dru Lavigne
dru@isecom.org
2005 Dru Lavigne $FreeBSD$ $FreeBSD$ &tm-attrib.freebsd; &tm-attrib.linux; &tm-attrib.unix; &tm-attrib.general; &legalnotice; Ez a dokumentum a &os; adottságait és előnyeit tekinti át; hol alkalmazható, illetve hogyan viszonyulnak ezek az adottságok a &linux;hoz. Ez a dokumentum kiindulási pontot nyújt azoknak, akik édekeltek a &linux; mellett más nyílt forrású alternatívák megismerésében is. Fordította: &a.hu.gabor;
Bevezetés A &os; egy &unix;-szerű operációs rendszer, amely a Berkeley Software Distribution alapjaiból fejlődött ki. A &os; és a &linux; nagyon hasonlónak tűnik, de vannak köztük különbségek: A &linux; önmagában egy rendszermag (kernel). A disztribúciók (pl. Red Hat, SuSE és egyebek) biztosítják a telepítőt és a felhasználó számára elérhető segédprogramokat. A http://www.linux.org/dist több mint 300 disztribúciót sorol fel. Amíg ilyen sok disztribíció biztosítja a felhasználó felé a maximális rugalmasságot, meg is nehezítik egy másik disztribúcióra váltást a felhasználó számára. A disztribúciók nem csak a telepítés nehézségében és a szoftverkínálatban térnek el, a könyvtárszerkezetük, elérhető shelljeik és ablakkezelőik, illetve a szoftvertelepítő- és foltozó alkalmazásaik is különbözőek. A &os; komplett operációs rendszer (kernel és felhasználói programok), tiszteletre méltó örökséggel a &unix; fejlődésének gyökereitől.[1] Mivel a kernel és a rendelkezésre álló segédprogramok is ugyanazon kiadási csapat felügyelete alá tartoznak, kisebb a valószínűsége a programkönyvtárak közötti inkompatibilitásnak. A biztonsági sebezhetőségek szintén gyorsan orvosolhatóak a biztonsági csapat segítségével. Ha új felhasználói programok, vagy kernel funkciók kerülnek a rendszerbe, a felhasználónak csupán egyetlen fájt kell elolvasnia, a Kiadási Jegyzeteket, amelyek szabadon elérhetőek a &os; honlapján. A &os; nagy és jól szervezett fejlesztői háttérrel rendelkezik, amely biztosítja, hogy a változtatások gyorsan és szervezetten menjenek végbe. Több száz programozó rendszeresen hozzájárul a projekt fejlődéséhez, de csak körülbelül 300 rendelkezik commit jogosultsággal, csak ők férnek hozzá közvetlenül a kernelhez, a segédprogramokhoz, illetve a hivatalos dokumentációhoz. A kiadási csapat garantálja a minőséget és a biztonsági csapat felel a biztonsági problémák elhárításáért. Ezen kívül a 8 tagú core csapat, amely senior committerekből áll, határozza meg a projekt általános céljait. Ezzel ellentétben, a &linux; kernelt érintő változásoknak várniuk kell addig, amíg a kernel karbantartója, Linus Torvalds, jóvá nem hagyja azokat. A disztribúciókban a változások különbözőképpen történhetnek, ez a disztribúció fejlesztői bázisának méretétől és a szervezeti felépítéstől függ. Igaz, hogy a &os; és a &linux; is nyílt forrású licencet használ, de a konkrét licencek különbözőek. A &linux; kernel a GPL licencet használja, amíg a &os; a BSD licencet. Ezekről és más nyílt forrású licencekről részletesebben olvashat az Open Source Initiative weboldalán. A fő vezérelv a GPL mögött, hogy a kód nyílt maradjon. Ezt úgy valósítja meg, hogy megszorításokat alkalmaz a GPL alá eső kód terjesztésével kapcsolatban. Ezzel ellentétben a BSD licenc nem tartalmaz ilyen megszorításokat, hanem Önre bízza, hogy a kódot nyitva hagyja, vagy zárttá teszi egy kereskedelmi termék részeként[2]. A stabil és megbízható kód a vonzó BSD licenccel együtt azt eredményezi, hogy sok operációs rendszer, mint például az Apple OS X, a &os; kódjára épül. Továbbá azt is eredményezi, hogy ha BSD licences kódot használ a saját projektjeiben, nem kell tartania semmiféle jogi kötelezettségtől. A &os; adottságai Támogatott platformok A &os; nagy hírnévre tett szert az &intel; (&i386;) platformon mint egy biztonságos és stabil operációs rendszer. Emellett a &os; a következő architektúrákat is támogatja: alpha amd64 ia64 &i386; pc98 &sparc64; Továbbá a &os; portolása folyamatban van a következő architektúrákra is: &arm; &mips; &powerpc; Friss hardverlista is elérhető minden architektúrához, így egy pillanat alatt meg tudja állapítani, hogy az Ön hardvere támogatott-e. A kiszolgálók számára fejlett RAID és hálózati interfész támogatás érhető el. A &os; szintén jól használható munkaállomások és laptopok operációs rendszereként. Támogatja az X Window rendszert, amelyet a &linux; disztribúciók is használnak desktop felhasználói felületként. Továbbá támogat több mint 13.000 könnyen telepíthető külső alkalmazást,[3] mint például a KDE, Gnome és OpenOffice. Több projekt is létezik, amelyek megkönnyítik a &os; telepítését desktop rendszerként. A legjelentősebbek: A DesktopBSD, amely stabil és erőteljes operácós rendszer hivatott lenni a desktop felhasználók számára. A FreeSBIE egy LiveCD disztribúció a &os; számára. A PC-BSD, amely egy könnyen használható GUI telepítőt nyújt a desktop &os; felhasználóknak. Kiterjeszthető keretrendszerek A &os; rengeteg kiterjeszthető keretrendszerrel rendelkezik, amelyek lehetővé teszik, hogy könnyen testreszabja a &os;-t a saját igényeinek megfelelően. A fontosabb keretrendszerek a következőek: Netgraph A Netgraph egy moduláris hálózati alrendszer, amely a már létező hálózati kernel infrastruktúra kibővítésére használható. Horgok biztosítják a fejlesztők számára, hogy saját modulokat származtassanak. Ennek eredményeként gyorsan, könnyen és kevesebb hibával hozhatóak létre javított hálózati szolgáltatások. Rengeteg működő modul települ a &os;-vel, amelyek a következő szolgáltatásokat támogatják: PPPoE ATM ISDN Bluetooth HDLC EtherChannel Frame Relay L2TP, csak, hogy néhányat említsünk. GEOM A GEOM egy moduláris lemez I/O transzformációs keretrendszer. Mivel ez egy csatlakoztatható tároló réteg, könnyen fejleszthetőek és integrálhatók új tároló szolgáltatások a &os;-be a GEOM segítségével. Néhány példa, ahol ez hasznos lehet: RAID megoldások készítése Az adatok teljes kriptografikus védelemmel való ellátása A &os; újabb verziói számos adminisztrációs segédeszközt nyújtanak a meglévő GEOM modulok használatához. Például lérehozhat tükrözött kötetet a &man.gmirror.8; segítségével, stripe kötetet a &man.gstripe.8; használatával, a shared secret eszközök készítésére pedig a &man.gshsec.8; alkalmazható. GBDE A GBDE, vagy GEOM alapú lemez titkosítás (GEOM Based Disk Encryption) erős kriptografikus védelmet nyújt. Alkalmazható fájlrendszereken, swap eszközön és egyéb tárolóeszközökön. Ráadásul a GDBE transzparens módon titkosítja az egész fájlrendszert, nem csak a különálló fájlokat. Titkosítatlan szöveg egyáltalán nem kerül a lemezre. MAC A MAC, avagy Mandatory Access Control lehetővé teszi a fájlokhoz való hozzáférési jog finomhangolását, kiegészítve ezzel a hagyományos fájl hozzáférési jogokat. Mivel a MAC moduláris keretrendszerként lett megvalósítva, a &os; rendszer bármilyen követelmény szerint konfigurálható, a HIPAA-megfelelőségtől kezdve a katonai rendszerekig. A &os; tartalmaz modulokat az itt felsorolt rendszerekhez, de a keretrendszer segítségével saját modult fejleszthet bármilyen szükséges követelményhez. Biba integritási modell Port ACL-ek MLS, avagy Multi-Level Security bizalmi házirend LOMAC, avagy Low-watermark Mandatory Access Control adat integritási házirend Processz particionálási házirend PAM Ahogy a &linux;, a &os; is támogatja a PAM, azaz Pluggable Authentication Modules rendszert. Ez biztosítja az adminisztrátor számára, hogy kibővítse a hagyományos &unix; felhasználónév/jelszó azonosítási modellt. A &os; modulokat biztosít rengeteg azonosítási mechanizmus használatához, mint például: Kerberos 5 OPIE RADIUS TACACS+ Ezen felül azt is lehetővé teszi az adminisztrátor számára, hogy szabályokat vezessen be az azonosításhoz, mint például a felhasználó által választott jelszavakra vonatkozó megszorítások. Biztonság A biztonság nagyon fontos a &os; Release Engineering Team számára. Ez több területen is megnyilvánul: Minden biztonsági sebezhetőséggel és javítással a Security Team foglalkozik és ezeket szabadon elérhetővé teszik a biztonsági bejelentéseken keresztül. A Security Team nagy megbecsülésnek örvend a felfedezett biztonsági hibák gyors javításáért. Több információ a &os; biztonsági procedúráiról és további információforrásairól a oldalon található. Az egyik probléma, amit a nyílt forrású szoftvereknek tulajdonítanak, az elérhető alkalmazások alacsony száma. Valójában több tízezer nyílt forrású alkalmazás létezik, amelyek különböző szinten foglalkoznak a biztonsággal. A &os; a VuXML segítségével igyekszik megoldani ezt a problémát. Minden szoftver, ami a &os;-ben, vagy a Ports Collectionben található, összevetésre kerül az ismert, megoldatlan sebezhetőségek adatbázisával. Az adminisztrátor a &man.portaudit.1; program segítségével gyorsan megállapíthatja, hogy bármely szoftver a &os; rendszeren sebezhető-e, és amennyiben igen, úgy kap egy leírást a problémáról, illetve egy URL-t, ahol részletesebb információkat találhat. A &os; számos mechanizmussal rendelkezik, amellyel a biztonsági elvárásoknak megfelelően konfigurálható: A &man.jail.8; segédprogram lehetővé teszi processzek bebörtönzését, ez akkor ideális, ha az adott alkalmazás nem biztosít saját chroot környezetet. A &man.chflags.1; segédprogram kibővíti a hagyományos &unix; jogosultságokat. Például képes arra, hogy bizonyos fájlokat védetté tegyen módosítás vagy törlés ellen még a root felhasználóval szemben is. A &os; 3 beépített állapotkezelő, NAT-ot támogató tűzfallal rendelkezik, ezzel rugalmasan biztosítva, hogy a felhasználó a számára legalkalmasabbat választhassa ki. A &os; kernel könnyen testreszabható, így az adminisztrátor eltávolíthatja belőle a számára szükségtelen funkciókat. A &os; szintén támogatja a betölthető kernel modulokat, és biztosít eszközöket a modulok megtekintésére, betöltésére és eltávolítására. A sysctl mechanizmussal az adminisztrátor újraindítás nélkül megtekintheti és megváltoztathatja a kernel állapotát. Támogatás Ahogyan a &linux;, a &os; is rengeteg támogatást nyújt, léteznek ingyenes és kereskedelmi támogatási formák is. Ingyenes lehetőségek A &os; az egyik legjobban dokumentált operációs rendszer, és a dokumentációja egyaránt elérhető a rendszer részeként és az Interneten is. A man oldalak világosak és tömörek és működő példákat is tartalmaznak. A &os; kézikönyv háttérinformációkat és konfigurációs példákat nyújt majdnem minden feladathoz, amin egy &os; felhasználó keresztül mehet a rendszer használata során. A &os; sok levelezési listával rendelkezik, ahol a válaszok archiválva vannak és teljes mértékben kereshetőek. Ha olyan kérdése van, amelyre a Kézikönyv nem ad választ, nagy valószínűséggel azt már megválaszolták valamelyik levelezési listán. A Kézikönyv és a levelezési listák több nyelven is elérhetőek, amelyek mindegyike könnyen fellelhető a . oldalon. Sok &os; IRC csatorna, fórum és felhasználói csoport létezik. Tekintse meg a oldalt a választékért. Ha &os; adminisztrátort, fejlesztőt, vagy konzulenst keres, küdjön egy levelet a munka leírásával és földrajzi helyzetével a freebsd-jobs@FreeBSD.org e-mail címre. Kereskedelmi lehetőségek Sok cég nyújt kereskedelmi támogatást a &os;-hez. A következő címeken találhat egy közeli céget: A Kereskedelmi Elárusítók oldal a &os; weblapjain: FreeBSDMall, akik közel 10 éve nyújtanak támogatást: A BSDTracker adatbázis: Ezen kívül létezik egy kezdeményezés, hogy a BSD rendszeradminisztrátorok tanúsítványt szerezhessenek: . Ha a projektje Common Criteria tanúsítványt igényel, a &os;-ben található TrustedBSD MAC keretrendszer megkönnyítheti a certifikációs folyamatot. Mi szól a &os; választása mellett? Sok előny szól amellett, hogy a &os; megoldásait használja az IT infrastruktúrájában: A &os; jól dokumentált és sok szabványt követ, így a haladó vagy szakértő &linux; és &unix; rendszeradminisztrátorok könnyen átválthatnak a &os; szolgáltatásaira. A belső fejlesztőknek teljes hozzáférésük van a &os; kódjához[4], egészen a legelső kiadásig visszamenőleg. A kóddal együtt elérhető az összes naplóbejegyzés is, amelyek a változtatások és hibajavítások leírását tartalmazzák. Továbbá a fejlesztők könnyen kinyerhetik a kódból bármelyik kiadást a megfelelő címke alkalmazásával. Ezzel szemben a &linux; eredetileg nem követte ezt a modellt, de mostanában átváltottak egy kiforrottabb fejlesztési modellre.[5] A belső fejlesztőknek szintén teljes hozzáférésük van a &os; GNATS hibakövető adatbázisához. Képesek lekérdezni és nyomonkövetni a fennálló hibákat, illetve beküldeni a saját patcheiket jóváhagyásra és a &os; kódjába olvasztásra. Bővebben: A BSD licenc megengedi, hogy szabadon módosítsa a kódot, hogy megfeleljen az üzleti céljainak. A GPL-el szemben, itt nincsenek megszorítások az eredményként létrejött szoftver terjesztésével kapcsolatban. Konklúzió A &os; kiforrott &unix;-szerű operációs rendszer, amely rengeteg olyan adottsággal rendelkezik, amely egy modern &unix; rendszertől elvárható. Azoknak, akik nyílt forrású megoldással kívánják kiegészíteni a jelenlegi infrastruktúrájukat, a &os; valóban kiváló megoldás. Függelék A oldalon találhat egy rövid történetet. Ha egy eléggé elfogulatlan áttekintés érdekli a különböző licencekről tekintse meg a oldalt. A &os; Ports Collection használata: a szoftverek telepítéséhez mindössze ennyit kell begépelnie: pkg_add -r csomagnév. Ezenkívül a teljes kód böngészhető a webes interfészen keresztül: . Érdekes áttekintés található a &linux; fejlesztési modelljéről itt: .