FreeBSD: Egy nyílt forrású alternatíva a Linux(R) mellett

Lavigne, Dru

Verzió: 43184

A FreeBSD a FreeBSD Foundation bejegyzett védjegye.

A Linux Linus Torvalds bejegyzett védjegye.

A UNIX a The Open Group bejegyzett védjegye az Egyesült Államokban és más országokban.

A gyártók és terjesztők által használt megnevezések közül sok védjegy jogot követel. Ahol ilyen megnevezés tűnik fel ebben a dokumentumban, és a FreeBSD Projektnek tudomása volt a védjegyről, a megnevezést a "TM" vagy a "(R)" szimbólum követi.

A dokumentum továbbadása forrás (SGML DocBook) és feldolgozott formában (SGML, HTML, PDF, PostScript, RTF, stb.) módosítással vagy anélkül a következő feltételek mellett lehetséges:

  1. A forráskódnak (SGML DocBook) tartalmaznia kell a fenti copyright megjegyzést és a feltételek ezen listáját, valamint a következő jogi nyilatkozatot, bármiféle módosítás nélkül.

  2. Feldolgozott dokumentum továbbadásakor (más DTD, PDF, PostScript, RTF és más formátumok) szintén meg kell tartani a fenti copyright megjegyzést, a feltételek listáját, valamint a következő jogi nyilatkozatot a dokumentumban, vagy a dokumentumot kísérő anyagokban.

Fontos:

EZT A DOKUMENTUMOT A FREEBSD DOKUMENTÁCIÓS PROJEKT A JELEN FORMÁJÁBAN BIZTOSÍTJA ÉS LEMOND MINDEN KIFEJEZETT VAGY TÖRVÉNYI SZAVATOSSÁGRÓL, BELEÉRTVE AZ ELADHATÓSÁG ÉS EGY ADOTT CÉLRA VALÓ ALKALMASSÁG SZAVATOSSÁGÁT. A FREEBSD DOKUMENTÁCIÓS PROJEKT SEMMILYEN ESETBEN SEM TEHETő FELELőSSÉ A DOKUMENTUM HASZNÁLATÁBÓL EREDő BÁRMILYEN KÖZVETLEN, KÖZVETETT JÁRULÉKOS, KÜLÖNLEGES, BÜNTETő VAGY KÖVETKEZMÉNYES KÁRÉRT (BELEFOGLALVA, DE NEM KORLÁTOZVA A HELYETTESÍTő JAVAK BESZERZÉSÉRE, HASZON, ADAT VAGY PROFIT ELVESZTÉSÉRE, ILLETVE ÜZLETI FORGALOM KIESÉSÉRE) VAGY EGYÉB MÁS ESETBEN SEM, AMIKOR ERőS TEHER VAGY KÍN (HANYAGSÁG VAGY EGYÉB) ERED A DOKUMENTUM AKÁRMIFÉLE FELHASZNÁLÁSÁBÓL, MÉG HA ERRE KÜLÖN FEL IS HÍVTUK a FIGYELMET.

2013-11-13 írta hrs.
Kivonat

Ez a dokumentum a FreeBSD adottságait és előnyeit tekinti át; hol alkalmazható, illetve hogyan viszonyulnak ezek az adottságok a Linux(R)hoz. Ez a dokumentum kiindulási pontot nyújt azoknak, akik édekeltek a Linux(R) mellett más nyílt forrású alternatívák megismerésében is.

Fordította: Kövesdán Gábor

[ Fejezetekre darabolt dokumentum / Teljes dokumentum ]

Tartalom
1. Bevezetés
2. A FreeBSD adottságai
3. Biztonság
4. Támogatás
5. Mi szól a FreeBSD választása mellett?
6. Konklúzió
7. Függelék

1. Bevezetés

A FreeBSD egy UNIX(R)-szerű operációs rendszer, amely a Berkeley Software Distribution alapjaiból fejlődött ki. A FreeBSD és a Linux(R) nagyon hasonlónak tűnik, de vannak köztük különbségek:

  1. A Linux(R) ö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 FreeBSD komplett operációs rendszer (kernel és felhasználói programok), tiszteletre méltó örökséggel a UNIX(R) 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 FreeBSD honlapján.

  2. A FreeBSD 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(R) 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.

  3. Igaz, hogy a FreeBSD és a Linux(R) is nyílt forrású licencet használ, de a konkrét licencek különbözőek. A Linux(R) kernel a GPL licencet használja, amíg a FreeBSD 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 FreeBSD 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.

2. A FreeBSD adottságai

2.1. Támogatott platformok

A FreeBSD nagy hírnévre tett szert az Intel(R) (i386TM) platformon mint egy biztonságos és stabil operációs rendszer. Emellett a FreeBSD a következő architektúrákat is támogatja:

  • alpha
  • amd64
  • ia64
  • i386TM
  • pc98
  • SPARC64(R)

Továbbá a FreeBSD portolása folyamatban van a következő architektúrákra is:

  • ARM(R)
  • MIPS(R)
  • PowerPC(R)

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 FreeBSD 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(R) 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 FreeBSD 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 FreeBSD számára.

  • A PC-BSD, amely egy könnyen használható GUI telepítőt nyújt a desktop FreeBSD felhasználóknak.

2.2. Kiterjeszthető keretrendszerek

A FreeBSD rengeteg kiterjeszthető keretrendszerrel rendelkezik, amelyek lehetővé teszik, hogy könnyen testreszabja a FreeBSD-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 FreeBSD-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 FreeBSD-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 FreeBSD ú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 gmirror(8) segítségével, stripe kötetet a gstripe(8) használatával, a shared secret eszközök készítésére pedig a 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 FreeBSD rendszer bármilyen követelmény szerint konfigurálható, a HIPAA-megfelelőségtől kezdve a katonai rendszerekig.

A FreeBSD 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(R), a FreeBSD 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(R) felhasználónév/jelszó azonosítási modellt. A FreeBSD 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.

3. Biztonság

A biztonság nagyon fontos a FreeBSD 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 FreeBSD biztonsági procedúráiról és további információforrásairól a http://www.FreeBSD.org/security/ 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 FreeBSD a VuXML segítségével igyekszik megoldani ezt a problémát. Minden szoftver, ami a FreeBSD-ben, vagy a Ports Collectionben található, összevetésre kerül az ismert, megoldatlan sebezhetőségek adatbázisával. Az adminisztrátor a portaudit(1) program segítségével gyorsan megállapíthatja, hogy bármely szoftver a FreeBSD 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 FreeBSD számos mechanizmussal rendelkezik, amellyel a biztonsági elvárásoknak megfelelően konfigurálható:

  • A 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 chflags(1) segédprogram kibővíti a hagyományos UNIX(R) 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 FreeBSD 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 FreeBSD kernel könnyen testreszabható, így az adminisztrátor eltávolíthatja belőle a számára szükségtelen funkciókat. A FreeBSD 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.

4. Támogatás

Ahogyan a Linux(R), a FreeBSD is rengeteg támogatást nyújt, léteznek ingyenes és kereskedelmi támogatási formák is.

4.1. Ingyenes lehetőségek

  • A FreeBSD 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 FreeBSD kézikönyv háttérinformációkat és konfigurációs példákat nyújt majdnem minden feladathoz, amin egy FreeBSD felhasználó keresztül mehet a rendszer használata során.

  • A FreeBSD 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 http://www.FreeBSD.org. oldalon.

  • Sok FreeBSD IRC csatorna, fórum és felhasználói csoport létezik. Tekintse meg a http://www.FreeBSD.org/support.html oldalt a választékért.

Ha FreeBSD adminisztrátort, fejlesztőt, vagy konzulenst keres, küdjön egy levelet a munka leírásával és földrajzi helyzetével a e-mail címre.

4.2. Kereskedelmi lehetőségek

Sok cég nyújt kereskedelmi támogatást a FreeBSD-hez. A következő címeken találhat egy közeli céget:

Ezen kívül létezik egy kezdeményezés, hogy a BSD rendszeradminisztrátorok tanúsítványt szerezhessenek: http://www.bsdcertification.org.

Ha a projektje Common Criteria tanúsítványt igényel, a FreeBSD-ben található TrustedBSD MAC keretrendszer megkönnyítheti a certifikációs folyamatot.

5. Mi szól a FreeBSD választása mellett?

Sok előny szól amellett, hogy a FreeBSD megoldásait használja az IT infrastruktúrájában:

  • A FreeBSD jól dokumentált és sok szabványt követ, így a haladó vagy szakértő Linux(R) és UNIX(R) rendszeradminisztrátorok könnyen átválthatnak a FreeBSD szolgáltatásaira.

  • A belső fejlesztőknek teljes hozzáférésük van a FreeBSD 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(R) 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 FreeBSD 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 FreeBSD kódjába olvasztásra. Bővebben: http://www.FreeBSD.org/support.html#gnats

  • 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.

6. Konklúzió

A FreeBSD kiforrott UNIX(R)-szerű operációs rendszer, amely rengeteg olyan adottsággal rendelkezik, amely egy modern UNIX(R) 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 FreeBSD valóban kiváló megoldás.

7. Függelék

  1. A http://www.oreilly.com/catalog/opensources/book/kirkmck.html oldalon találhat egy rövid történetet.

  2. Ha egy eléggé elfogulatlan áttekintés érdekli a különböző licencekről tekintse meg a http://en.wikipedia.org/wiki/BSD_and_GPL_licensing oldalt.

  3. A FreeBSD Ports Collection használata: a szoftverek telepítéséhez mindössze ennyit kell begépelnie: pkg_add -r csomagnév.

  4. Ezenkívül a teljes kód böngészhető a webes interfészen keresztül: http://www.FreeBSD.org/cgi/cvsweb.cgi/.

  5. Érdekes áttekintés található a Linux(R) fejlesztési modelljéről itt: http://linuxdevices.com/articles/AT4155251624.html.