LINUXSOFT.cz Přeskoč levou lištu

ARCHIV



   

> OpenBSD 4.1

Seznámení s projektem OpenBSD s přihlédnutím k jeho využití na routeru.

17.9.2007 13:00 | Radim Kolář | Články autora | přečteno 11917×

OpenBSD

Většina z Vás již něco slyšela o OpenBSD. V současné době se jedná se po FreeBSD o druhý nejrozšířenější systém z rodiny BSD, pokud nepočítáme Mac OS X. Kromě vlastního operačního systému je OpenBSD projekt znám zejména díky programu OpenSSH, který dnes není třeba představovat. Ostatní programy napsané OpenBSD teamem (dhclient, openntpd, opencvs, atd) již nejsou tak známé. Jedinou vyjímku tvoří OpenBGPD, který je příležitostně nasazován i u větších ISP.

Primárním cílem OpenBSD projektu je sice bezpečnost, ale velký důraz se klade i na kvalitu kódu a přijatelnost licence. OpenBSD je portované na většinu dnes běžných platforem. Jako u všech BSD, tak i u tohoto projektu je kladen velký důraz na kvalitní a aktuální dokumentaci.

Doménou vhodnou pro nasazení OpenBSD jsou zařízení, kde se vyžaduje vysoká míra bezpečnosti a spolehlivosti, malá spotřeba paměti a kde je aktualizace software během životnosti zařízení spíše vyjímkou nežli pravidlem (tzv. install and forget).

OpenBSD je tradičně nasazováno na routery, firewally, wifi access pointy a embedded zařízení. Wifi podpora včetně driverů je tradičně na velmi dobré úrovni. Pokud není požadována vysoká bezpečnost, tak je na velké servery díky nižšímu výkonu a slabé podpoře SMP nasazováno poměrně zřídka, Na desktopech či notebooku se s OpenBSD setkáte jen u jeho skalních příznivců.

OpenBSD je nejpomalejším OS z celé BSD rodiny. Nižší výkon je sice nepříjemný, ale existuje řada úloh při kterých není server moc zatěžován a zde menší výkon nevadí. Výkon OpenBSD můžeme rozdělit na dvě části: kernel a userland.

Výkon v userlandu je snížen sadou GCC patchů známou pod jménem Pro Police (Vyvinuto IBM), zajišťující obranu proti klasickému útoku typu stack overflow. Podle testů Pro Police brzdí systém maximálně o 5 procent, obvykle jsou to jen 2-3 procenta. Další ochranou je sada patchů známá pod označením Purify, která obsahuje W^X stack, .rodata segment, Guard pages, Randomized malloc(). Tyto patche snižují výkon zhruba stejně. Nejsou tady ničím závratně zpomalujícím. Tímto jsem chtěl poukázat na nepravdivost pověstí tvrdících, že OpenBSD je díky své bezpečnosti pomalé.

Největší brzdou výkonu v OpenBSD je kernel. Ačkoliv se aplikační rozhraní Unix kernelu za posledních 20 let prakticky nezměnilo a naprosté většině softwaru stačí ke spokojenosti BSD4.3 API, staré verze Unixu byly naprogramovány s využitím jednoduchých ale neefektivních a nepříliš škálovatelných algoritmů. Kernel OpenBSD je co se efektivity týče z pravěku a jeho odpůrci se často vyjadřují slovy jako ,,je dobrý jen na to, aby tam šlo spustit vi /etc/pf.conf''.

Efektivitu OpenBSD kernelu zde dopodrobna rozebírat nechci, poukáži jen na test propustnosti routerů, ve kterém OpenBSD dosahuje přibližně poloviční propustnosti (packety/sec) oproti ostatním systémům. Tento test odpovídá reálnému nasazení, protože OpenBSD je velmi často používáno jako router. V poslední době se tato nepříjemná situace zlepšila, protože během přidávání podpory 10 Gbit Ethernetu došlo i na optimalizaci síťového subsystému.

O OpenBSD se humorně říká, že je to nejlepší Linuxová distribuce na router. Sám jsem s OpenBSD na routerech velmi spokojen a zbytek článku bude tomu nasazení věnován.

Hardware

Pravděpodobně nejpoužívanějším hardwarem pro routery jsou embedded PC. OpenBSD je velmi nenáročný systém. K provozu mu stačí 32MB RAM (bez swapu), 128MB CF, sériový port pro consoli, 1 nebo 2 onboard síťové karty a případně USB pro připojení Wifi karty. Pokud jde o procesor, nejpomalejší CPU co dnes seženete jsou taktovány na cca 400Mhz, což je nejen více než dostatečné pro 100Mbit routing, ale zvládá i IPSEC a WPA šifrování používané při stavbě Wifi Access Pointů.

Instalace

O instalaci OpenBSD bylo napsáno mnoho dobrého i zlého. Některým se jednoduchá instalace libí a ostatní již z principu zatracují všechny negrafické instalační programy. OpenBSD se nikdy nezaměřovalo na koncového uživatele a instalační program tomu odpovídá. Je nejjednoduší z celé BSD rodiny. To je jeho hlavní klad, nikoliv nedostatek. Neklade mnoho otázek a tím šetří čas administátora a snižuje se riziko selhání instalace způsobené lidským faktorem. Nejnáročnější částí instalace je vytváření diskových partitions tradičním BSD způsobem t.j. dvouúrovňově partition/disklabel.

Nejjednoduší způsob instalace OpenBSD je bootovací disketa + zbytek stáhnout ze sítě. OpenBSD je jediným BSDčkem kterému k instalaci stačí jedna jediná disketa. NetBSD používá dvě a FreeBSD čtyři. Instalační program pak dotáhne z Vámi vybraného mirroru zbytek. Při instalaci na více počítačů se doporučuje použití proxy cache. Projekt OpenBSD poměrně netypicky pro Open Source nedává volně k dispozici instalační ISO image. Instalační lisovaná CD lze zakoupit na stánkách projektu a projekt tímto finančně podpořit nebo si je svépomocí vyrobit.

Běžná instalace na router se skládá z 6MB jádra, 40MB základního systému, 1MB konfigurace, 7MB man stránek a 2MB ostatní dokumentace. V některých případech můžeme přidat i 75MB GCC. Posledním balíčkem který můžeme volitelně nainstalovat jsou 63MB X Windows.

Po instalaci

Po instalaci a dekomprimaci instalačních balíků zabere OpenBSD 4.1 bez kompilátoru a X Windows 180 MB. S vynaložením jistého úsilí (např. deinstalace manpages) lze systém ručně ořezat tak, aby se pohodlně vešel na 128MB flash drive. Vyplatí se to pouze pokud máme v plánu instalovat desítky podobných systémů (ušetříme zhruba 5 USD/kus). Pokud někdo víte o již ořezaném OpenBSD distru pro 128MB, dejte prosím v diskuzi vědět. Ořezávat systém na 64MB se dnes již vzhledem k minimálnímu cenovému rozdílu (v době psaní článku průměrně 1,5 USD) flash pamětí nevyplatí.

Dobrým zvykem je před uvedením do produkce systém opatchovat. To je u OpenBSD trošku problém. Patche k dispozici jen ve formě diff souborů a na routeru se nám těžko bude chtít překládat kernel, pokud tam vůbec je překladač GCC instalován. Toto lze řešit dvěma způsoby:

  1. Při instalaci neinstalovat z oficiálního FTP serveru ale z neoficiálního serveru s větví stable např. ftp://ftp.bsdjournal.net/pub/OpenBSD/4.1-stable/
  2. systém přeložit na jiném stroji, velmi vhodné je k tomuto účelu používat jeden z mnoha dostupných emulátorů.

OpenBSD vydává dvě hlavní verze ročně. Bezpečnostní a errata patche jsou podporovány pouze pro dvě poslední verze. Pokud chcete mít aktuální systém je nutné provádět aktualizaci každých šest měsíců, protože přeskakování jednotlivých verzí není při aktualizacích oficiálně podporováno. Aktualizační politiku proto nepovažuji vzhledem k nutnosti častých upgradů za příliš šťastnou.

Nainstalovaný Software

OpenBSD obsahuje v základním systému vynikající kolekci software. Osobně považuji základní systém OpenBSD za nejucelenější ze všech BSDček. Nenastávají tu problémy jako například u FreeBSD, kdy kernel sice umí IPSEC, ale daemon pro dynamickou výměnu klíčů již v systému není. Dobře vybraný software v základním systému OpenBSD je jedním z velkých plusů OpenBSD, neboť výrazně zkracuje čas nutný k uvedení nově nainstalovaného systému do provozu.

Routovací daemoni: routed, route6d, ospfd, bgpd multicast - ripd, mrouted, dvmrpd
Správa IP address: rarpd, dhcpd, dhclient, dhcrelay, rtsold, rtadvd
Síťový čas: timed, rdate, ntpd
Bootování: tftpd, rbootd, bootparamd, mopd
IPSEC: isakmpd, sasyncd
Wifi: hostapd
Load balancing: hostated
Standardní unix služby: ftpd, identd, rwhod, portmap, inetd, kerberos, nis
Sdílení souborů: nfsd, lockd, amd, afs
Klasika: BIND 9.3.4, Sendmail 8.14.0 + spamlogd, Apache 1.3.29, OpenSSH 4.6, OpenSSL 0.9.7j

Další sofware je se doinstalovává z tzv. portů - připravených binárních balíčků, v případě krize manuální kompilací. Pro provoz routeru si můžeme přihodit pár drobností jako vim, screen, případně PHP. Na access pointech je populární mít nainstalován tzv. captive portal a většina těchto portálů je napsána právě v PHP.

OpenBSD v QEMU

OpenBSD se velmi hezky provozuje v QEMU. Jednak se s ním pomocí QEMU můžete bezrizika seznámit a jednak je to snadný způsob výroby binárek pro patchování ostatních systémů bez nutnosti obětovat OpenBSD celý počítač či partition. Pro instalaci do qemu stačí stáhnout obraz instalační diskety floppy41.fs a spustit ji:

qemu-img create -f qcow2 openbsd.qemu 2GB
qemu -m 40 -hda openbsd.qemu -fda floppy41.fs -boot a -net nic -net tap

Komunita

OpenBSD uživatelů není sice mnoho, ale rádi o sobě dávají vědět. Projekt prodává cédéčka, trička, plakáty a drobné reklamní předměty. Nové verze jsou vydávané nejen pravidelně, ale také s patřičnou parádou -- na počest každé nové verze je složena píseň. OpenBSD je také nejvíce ze všech BSD zmiňované v BSD sekci slashdotu.

Nejznámějším informačním serverem OpenBSD komunity je bezesporu Undeadly, kde se dozvíte aktuální novinky ze světa OpenBSD. Nelze opomenout vůdce projektu Theo de Raadta, který je znám občasnými flamewary zaměřenými na Linux a GPL licenci. Kromě flamewarů poskytuje také občasná interview různé kvality z nich nejznámější je Linux is for losers.

Verze pro tisk

pridej.cz

 

DISKUZE

pekny clanek 23.9.2007 22:15 Aldagautr
L Re: pekny clanek 25.9.2007 00:47 Radim Kolář
Instalacia 30.9.2007 22:55 Jaroslav Imrich
  L Re: Instalacia 15.10.2007 19:38 Radim Kolář




Příspívat do diskuze mohou pouze registrovaní uživatelé.
> Vyhledávání software
> Vyhledávání článků

28.11.2018 23:56 /František Kučera
Prosincový sraz spolku OpenAlt se koná ve středu 5.12.2018 od 16:00 na adrese Zikova 1903/4, Praha 6. Tentokrát navštívíme organizaci CESNET. Na programu jsou dvě přednášky: Distribuované úložiště Ceph (Michal Strnad) a Plně šifrovaný disk na moderním systému (Ondřej Caletka). Následně se přesuneme do některé z nedalekých restaurací, kde budeme pokračovat v diskusi.
Komentářů: 1

12.11.2018 21:28 /Redakce Linuxsoft.cz
22. listopadu 2018 se koná v Praze na Karlově náměstí již pátý ročník konference s tématem Datová centra pro business, která nabídne odpovědi na aktuální a často řešené otázky: Jaké jsou aktuální trendy v oblasti datových center a jak je optimálně využít pro vlastní prospěch? Jak si zajistit odpovídající služby datových center? Podle jakých kritérií vybírat dodavatele služeb? Jak volit vhodné součásti infrastruktury při budování či rozšiřování vlastního datového centra? Jak efektivně datové centrum spravovat? Jak co nejlépe eliminovat možná rizika? apod. Příznivci LinuxSoftu mohou při registraci uplatnit kód LIN350, který jim přinese zvýhodněné vstupné s 50% slevou.
Přidat komentář

6.11.2018 2:04 /František Kučera
Říjnový pražský sraz spolku OpenAlt se koná v listopadu – již tento čtvrtek – 8. 11. 2018 od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Tentokrát bez oficiální přednášky, ale zato s dobrým jídlem a pivem – volná diskuse na téma umění a technologie, IoT, CNC, svobodný software, hardware a další hračky.
Přidat komentář

4.10.2018 21:30 /Ondřej Čečák
LinuxDays 2018 již tento víkend, registrace je otevřená.
Přidat komentář

18.9.2018 23:30 /František Kučera
Zářijový pražský sraz spolku OpenAlt se koná již tento čtvrtek – 20. 9. 2018 od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Tentokrát bez oficiální přednášky, ale zato s dobrým jídlem a pivem – volná diskuse na téma IoT, CNC, svobodný software, hardware a další hračky.
Přidat komentář

9.9.2018 14:15 /Redakce Linuxsoft.cz
20.9.2018 proběhne v pražském Kongresovém centru Vavruška konference Mobilní řešení pro business. Návštěvníci si vyslechnou mimo jiné přednášky na témata: Nejdůležitější aktuální trendy v oblasti mobilních technologií, správa a zabezpečení mobilních zařízení ve firmách, jak mobilně přistupovat k informačnímu systému firmy, kdy se vyplatí používat odolná mobilní zařízení nebo jak zabezpečit mobilní komunikaci.
Přidat komentář

12.8.2018 16:58 /František Kučera
Srpnový pražský sraz spolku OpenAlt se koná ve čtvrtek – 16. 8. 2018 od 19:00 v Kavárně Ideál (Sázavská 30, Praha), kde máme rezervovaný salonek. Tentokrát jsou tématem srazu databáze prezentaci svého projektu si pro nás připravil Standa Dzik. Dále bude prostor, abychom probrali nápady na využití IoT a sítě The Things Network, případně další témata.
Přidat komentář

16.7.2018 1:05 /František Kučera
Červencový pražský sraz spolku OpenAlt se koná již tento čtvrtek – 19. 7. 2018 od 18:00 v Kavárně Ideál (Sázavská 30, Praha), kde máme rezervovaný salonek. Tentokrát bude přednáška na téma: automatizační nástroj Ansible, kterou si připravil Martin Vicián.
Přidat komentář

   Více ...   Přidat zprávičku

> Poslední diskuze

31.7.2023 14:13 / Linda Graham
iPhone Services

30.11.2022 9:32 / Kyle McDermott
Hosting download unavailable

13.12.2018 10:57 / Jan Mareš
Re: zavináč

2.12.2018 23:56 / František Kučera
Sraz

5.10.2018 17:12 / Jakub Kuljovsky
Re: Jaký kurz a software by jste doporučili pro začínajcího kodéra?

Více ...

ISSN 1801-3805 | Provozovatel: Pavel Kysilka, IČ: 72868490 (2003-2024) | mail at linuxsoft dot cz | Design: www.megadesign.cz | Textová verze