Freies Unix: die BSDs

ArticleCategory:

Forum

AuthorImage:

Georges Tarbouriech

TranslationInfo:

original in en Georges Tarbouriech

en to de Sebastian Stein 

AboutTheAuthor:

Georges ist ein langjähriger Unixnutzer. Er mag die freien BSD Varianten dieses großartigen Systems.

Abstract:

Der Familienstammbaum von Unix ist komplex. Mit der Zeit wurden mehr und mehr Zweige dem Baum hinzugefügt. Heute gibt es 2 Hauptfamilien: BSD und System V. In der BSD Familie gibt es eine Reihe von freien Unixen. Jedes hat seine individuellen Besonderheiten und sie ermöglichen dem Nutzer eine große Auswahl. Versuchen wir uns einen Überblick über diese großartigen Betriebssysteme zu verschaffen!

ArticleIllustration:

[illustration]

ArticleBody:

Die Familiengeschichte

BSD steht für Berkeley Software Distribution. Der Name trat im Jahr 1977 das erste Mal auf, als Forscher in Berkeley anfingen, Quelltext an Firmen mit einer AT&T Lizenz zu verteilten. Das Ziel war, AT&T V6 (und später V7) zu verbessern und zu erweitern.
Die erste Arbeit wurde 1BSD genannt, die zweite 2BSD. Schon hier trat zum ersten Mal eine Spaltung auf. Der eine Zweig verbesserte weiterhin den AT&T Quelltext bis hin zur letzten Version V10, und wurde dabei 2.7, 2.8, 2.9 bis 2.11 durchnummeriert. Der andere Zweig fing mit 3BSD an und entwickelte sich zu 4.0, 4.1 bis 4.4, welches die heutige Version ist. Dieser 2. Zweig versucht ein völlig von AT&T Quelltext freies System zu erstellen. 4.4BSD ist die erste Ausgabe ohne jeglichen AT&T Quelltext. Die Alpha Version erschien 1992 und die finale 1993.
Seit der Version 4.3 gibt es weitere Zweige: 4.3BSD Tahoe, 4.3 BSD Net/1, 4.3BSD Reno und 4.3BSD Net/2, beginnend 1988 für den Erstgenannten bis 1991 für den Letztgenannten.
1991 war das Jahr mit dem ersten Versuch, BSD auf 386 CPUs zu portieren. Genannt wurde es BSD/386 und hergestellt hat es Berkeley Software Design Inc. 386BSD erschien 1992 und es ist der Startpunkt der freien BSD Versionen.
NetBSD 0.8 erschien Anfang 1993 und FreeBSD am Ende des gleichen Jahres. 1994 wurde BSD Lite geboren und es wurde zur Basis für die zukünftigen freien Versionen von NetBSD und FreeBSD. Zu dieser Zeit wurde BSD/386 in BSD/OS umbenannt.
1996 veröffentlichte OpenBSD ihre erste Version, genannt OpenBSD 2.0, und 1997 veröffentlichte Apple Rhapsody.
Das ist wirklich nur ein sehr knapper Überblick und ich hoffe keinen Fehler gemacht zu haben! Wenn man die ganze Geschichte genauer studieren will, sollte man einen Blick werfen auf: ftp://ftp.freebsd.org/pub/FreeBSD/branches/-current/src/share/misc/bsd-family-tree.
Als dieses Dokument geschrieben wurde, waren die aktuellen stabilen Versionen: 4.7 von FreeBSD, 1.6 von NetBSD und 3.2 von OpenBSD.

FreeBSD

Da LinuxFocus bereits einen Artikel über FreeBSD veröffentlicht hat, werden wir nicht so viel Zeit damit verbringen. Man kann den Artikel über folgenden Link erreichen.
Um es kurz zu machen, FreeBSD ist einfach und sauber. Es ist leicht zu installieren und einfach zu konfigurieren. Die Dokumentation ist sehr gut organisiert und unterstützt den Neuling spürbar. Darüberhinaus ist es in verschiedenen Sprachen verfügbar.
FreeBSB bietet eine Masse von Anwendungen in verschiedenen Kategorien.
Netzwerkverwaltung und Sicherheit sind eine Stärke des Systems. Mit IPv6 (Standard unter FreeBSD) und IPSec kann der Administrator sehr elegant ein Virtual Private Network (VPN) verwalten. Das KAME Projekt hat großartige Arbeit geleistet, um uns mit den Tunneling Möglichkeiten zu versorgen.
Viele Sicherheitswerkzeuge sind Teil des Basissystems: Firewall, Proxy, Kryptographie, Portscanner, usw. So kann man zum Beispiel zwischen den Paketfiltern ipfw und IPFilter wählen. Diese sind natürlich nicht standardmäßig aktiviert. Man muss sie konfigurieren und den Kernel neu übersetzen.
In dem weiter oben zitierten Artikel wurde erwähnt, dass FreeBSD auf Intel und Alpha Prozessoren läuft. Es ist ein sehr schnelles System und der Kern ist sehr klein. Der Speicher wird sehr gut verwaltet und geschützt.
FreeBSD kann verschieden eingesetzt werden: als Heimsystem, in einem Netzwerk und natürlich als Server. Für den letzten Fall ist FreeBSD ein sehr guter Freund, da es alles bietet, was man braucht. So haben wir noch nicht das Jail erwähnt, was eine wesentlich erweiterte chroot Umgebung darstellt.
Erwähnt werden muss das TrustedBSD Projekt, dass sich mit Sicherheitsverbesserungen beschäftigt. Die Ergebnisse werden in FreeBSD integriert.
FreeBSD ist ein großartiges System, was mehr als nur einen Versuch verdient hat.

NetBSD

NetBSD ist der absolute Beweis für die eigentliche Unix Philosophie: "uns interessiert der Prozessor nicht". Es ist unglaublich: NetBSD läuft auf mehr als 50 verschiedenen Prozessoren... mit steigender Tendenz!!! Es läuft auf so "merkwürdigen" Maschinen wie Playstation oder Dreamcast.
Man muss sich nur die riesige Anzahl von Treibern vorstellen, die das möglich machen. NetBSD ist eines der wahrscheinlich beeindruckensten freien Softwareprojekte überhaupt. Ich kenne keine andere Firma (frei oder kommerziell), die solch eine Arbeit anbieten könnte.
Natürlich läuft NetBSD ebenso gut auf sehr modernen Prozessoren.
Wie FreeBSD, ist es auch ein einfaches und sauberes System. Es lässt sich ebenfalls einfach installieren, obwohl es kein graphisches Werkzeug bietet, wie es heute bei vielen Linux Distributionen der Fall ist. Es ist einfach zu konfigurieren und die Dokumentation ist ebenfalls super (verfügbar in mehreren Sprachen). Da die Zahl der unterstützten Plattformen sehr groß ist, gibt es für jede spezifische Dokumente. Ebenfalls erstaunliche Arbeit!
Software für NetBSD ist verfügbar als Pakete und natürlich auch als Quelltext Archive. So kann man von überall her einen Download machen, wie eben bei Linux auch. Es gibt eine Emulationsschicht, die es erlaubt, binärkompatible Software auszuführen. Kommerzielle Software ist ebenfalls verfügbar.
Wie bei FreeBSD wurde ebenfalls viel Aufwand in Netzwerkfähigkeit und Sicherheit gelegt. NetBSD stellt zum Beispiel ebenfalls IPv6 zur Verfügung.
Es muss gesagt werden, dass NetBSD und FreeBSD sehr ähnlich sind. Beide teilen große Bereiche des Quelltextes. Der Hauptunterschied besteht in den verfügbaren Plattformen.
NetBSD ist die beste Lösung, wenn man ein freies Unix für eine nicht Intel oder Alpha Maschine sucht (obwohl es natürlich auch auf diesen läuft). So ist es unmöglich, auf einigen SPARC Workstations Linux zu betreiben: NetBSD arbeitet hingegen auf diesen. So kann man diese noch als Gateway nutzen und muss sie nicht gleich aussondern. Das soll nur ein Beispiel sein, man kann natürlich noch viel mehr mit NetBSD machen.
Die gerade erwähnten Workstations könnten auch als Datenbankserver im lokalen Netz dienen. Warum dieses Beispiel? NetBSD ist ressourcenschonend und benötigt nicht "Turbo" CPUs.
Ich habe NetBSD (1.0 und 1.1) auf einem Amiga 3000T mit einer Motorola CPU 68030/25Mhz und 8 MB RAM betrieben (später kamen zusätzliche 8 MB hinzu). Es lief X auf einer 2 MB Graphikkarte!!! Und es ist niemals abgestürzt! Natürlich war es im Vergleich zu den heutigen Monstern etwas langsam.
Diese Beispiele sollen natürlich nicht sagen, dass NetBSD nur auf sehr alter Hardware läuft. Man kann damit das Gleiche wie mit FreeBSD machen, wie als Heimcomputer nutzen, einem Netzwerk hinzufügen oder einen Server aufsetzen, egal was für eine CPU drin steckt.
Eine großartige Sache!
Das war natürlich nur eine kurze Präsentation von NetBSD, obwohl es eigentlich mehr verdient. Einfach mal ausprobieren. Wie bei fast allen freien Unix Distributionen, kann man NetBSD auf seiner Homepage runterladen oder auf einer CD-Rom kaufen.

OpenBSD

OpenBSD ist die absolute Referenz was Sicherheit betrifft. Es war das erste Unix, dass mit dem Hintergrund Sicherheit entwickelt wurde.
Braucht man einen hochsicheren Server (wann ist das schon mal nicht der Fall?), dann ist dieses System die richtige Wahl. Das soll natürlich nicht bedeuten, dass alle anderen unsicher sind oder dass alle Linux Distributionen viele Schwachstellen aufweisen. Ich sage bloß, dass OpenBSD das System ist, dass bereits mit der Installation völlig abgesichert ist. Das einzige vergleichbare System ist die Linux EnGarde Distribution, da die gleiche Idee dahinter steckt: Sicherheit.
Mit OpenBSD erhält man alles aus einer Hand. Alle Sicherheitswerkzeuge sind verfügbar und Kryptographie ist ein Teil des Systems (das gleiche Team entwickelt OpenSSH). Die Entwickler haben viel daran gesetzt den Quelltextreview gut zu organisieren. Auf diese Weise hat das OpenBSD Team viel zur Entdeckung und Ausbesserung von Sicherheitslücken in Unix beigetragen. Dazu gehören auch entdeckte Sicherheitsprobleme in anderen Softwarepaketen, ein wichtiger Beitrag für die gesamte Unix Gemeinschaft (egal ob proprietär oder frei).
Darüberhinaus, da OpenBSD von NetBSD abstammt, läuft es auf mehreren Plattformen und nicht nur auf Intel oder Alpha (natürlich nicht so viele wie NetBSD). Momentan gibt es 10 Plattformen, auf denen OpenBSD läuft.
Die Devise "Sicherheit als Standardeinstellung" ist etwas, was man vor OpenBSD nicht kannte. Keiner der Unix Herausgeber (proprietär oder frei) dachte an sowas und es war immer einige Arbeit (und einiges Wissen!) nötig, um die Systeme abzusichern. So wird die Idee, beim Systemstart per Standardeinstellung keinen Dämon zu starten bis heute nicht verstanden. Viele Unix Herausgeber sind eher der Meinung, so viele Dienste wie möglich beim Hochfahren zu starten. Manchmal sind die gefährlichsten Dienste gleich mit dem Systemstart aktiviert. Man muss nur an "Dinge" wie telnetd, rshd, ftpd, usw. denken. Unglaublich!
Die meisten Herausgeber sehen OpenBSD als eine vorübergehende Modeerscheinung an, die es nicht zu kopieren gilt. Lediglich die BSD Familie hat die Lehre verstanden. Mein Dank gilt ihnen!
Daraus folgt, wenn man einen sehr sicheren Server mit sehr hoher Verfügbarkeit braucht, ist OpenBSD die Wahl. Will man es natürlich zu Hause benutzen, warum nicht? Natürlich lässt es sich einfach in das eigene Netzwerk integrieren. Darüberhinaus kann man viel über Sicherheit lernen, wenn man sich das System genauer anschaut. Man lernt was man tut, was man besser lässt, usw. Diese Erfahrungen kann man dann auf andere Systeme anwenden. Die Grundregeln sind ganz einfach: je weniger aktive Dienste, umso besser. Je weniger offene Ports, umso besser. Nutze niemals Protokolle oder Dämons, die Daten in Klartext (wie zum Beispiel Passwörter) übertragen. Ist es wirklich nicht zu vermeiden, sollte man einen SSH Tunnel für den Versand und Empfang nutzen. Es sind restriktive Zugriffserlaubnisse für Verzeichnisse und Dateien mit sensitiven Daten zu setzen. Es sind SUID und GUID Programme zu überprüfen. Und so weiter...
OpenBSD nimmt einem diese Arbeit ab, während zum Beispiel proprietäre Unixe einen Webserver aktivieren, damit man die Onlinedokumentation lesen kann!
Ich denke jetzt ist klar, wo man das richtige System für seine Server findet ;-)

Darwin

Wir sollten nicht den Kern von Mac OS X vergessen zu erwähnen: Darwin. Darwin stammt aus 4.4BSD-Lite2 ab und nutzt einen 3.0 Mach Microkernel, ursprünglich entwickelt an der Carnegie-Mellon Universität und erweitert durch die OSF, die sich heute The Open Group nennt. Die aktuelle Version ist 6.0.1 und kann in Mac OS X 10.2 gefunden werden.
Es ist wichtig zu erwähnen, dass FreeBSD der Ausgangspunkt für die Entwicklung von Darwin war. NetBSD und OpenBSD wurden ebenfalls genutzt während der Entwicklung. So stammt die integrierte Kryptographie aus OpenBSD, genauso wie das unumgängliche OpenSSH. Viele Werkzeuge und Kommandos kommen von NetBSD.
Der Kernel nennt sich XNU (ja, wie ein anderes Akronym eben) und besteht aus Mach und BSD. Mach stellt das Speichermanagement, IPC und Messaging, I/O Bereiche (Gerätetreiber) zur Verfügung, während BSD Nutzer und Zugriffsrechte, den Netzwerkstack, das virtuelle Dateisystem (VFS) und die POSIX Kompatibilitätsschicht verwaltet.
Deshalb profitiert Darwin von der Arbeit an den oben erwähnten BSDs. Wird zum Beispiel eine Sicherheitslücke gefunden, bietet Apple sehr schnell ein Update an, kurz nachdem die für die freie BSD Gemeinschaft erschienen sind.
Es sollte erwähnt werden, dass wie bei den freien BSDs Mac OS X ohne einen aktiven Dienst per Standardeinstellung ausgeliefert wird.
Darwin hatte sich zuerst Motorolas PPC CPUs verschrieben, doch seitdem Darwin ebenfalls OpenSource ist, steht eine Intel Version durch GNU-Darwin zur Verfügung.
Über Darwin liegt die schöne Aqua Oberfläche. Diese ist aber kein OpenSource. Trotzdem, Dank der BSD Gemeinschaft, bietet Apple wohl das nutzerfreundlichste Unix überhaupt. Natürlich ist es ein proprietäres Unix, aber es zeigt sich die hohe Qualität der freien BSD Software. Die Idee, Unix in der ganzen Welt verfügbar zu machen, erscheint mir eine sehr gute Idee. NeXT versuchte das Gleiche vor 15 Jahren, aber es scheiterte (leider). Ich hoffe wirklich, dass Mac OS X Erfolg hat, wo sein Vater scheiterte.

Was nun?

Jedes Mitglied der BSD Familie teilt seine Arbeit mit den anderen Mitgliedern. Sie sind in allen Bedeutungen des Wortes frei, wirklich frei. Sie sind darüberhinaus sicherer als alle anderen Unixvarianten. Sie laufen auf den meisten Plattformen. Die Distributionen sind nicht "überladen" und das Kernsystem ist relativ klein. Weiterhin kann man die meiste verfügbare Software auf ihnen betreiben. Und so weiter...
Die meisten proprietären Unixsysteme basieren auf System V. Sie kümmern sich scheinbar nicht mehr um BSD. Trotzdem bieten sie alle BSD kompatible Pakete an und ihr Ursprung liegt meist im BSD Bereich.
Leider verlieren diese proprietären Unixe immer mehr Marktanteil. Ihr Auftreten erscheint merkwürdig. Alle scheinen ein starkes Interesse für Linux zu haben. Was erwarten sie? Hoffen sie, Linux für denselben Preis zu verkaufen, wie ihre eigenen Systeme? Ich befürchte, das wird nicht funktionieren. Oder wollen sie ihre Maschinen mit Linux statt mit ihren eigenen Systemen verkaufen? Viel zu teuer meiner Meinung nach, es sei denn, sie verkaufen Low End Systeme, aber dann dürfte die Intel Lösung billiger sein. Und wie soll dieser Verlust ausgeglichen werden? Ok, ich kenne die Antwort: Service verkaufen! Aber wie lange wird das funktionieren? Was passiert mit den existierenden Lösungen? Werde diese mit dem wesentlich billigerem Linux über die Zeit ersetzt?
Dieses Jahr haben diese Firmen viele tausend Menschen entlassen! Wo führt das alles hin? Zu einer täglich stärker werdenden Microsoft Hegemonie... und zu mehr arbeitslosen Menschen. Traurig, sehr traurig!
Ich behaupte natürlich nicht, dass durch den Einsatz von BSD anstatt von System V dieses Problem gelöst würde. Ich verstehe einfach nur nicht die Pläne dieser großen Firmen. Warum nutzen sie nicht die BSD Varianten, wenn sie an einem freien Unix interessiert sind?
Scheinbar schweife ich ab, tue ich aber nicht. Proprietäre Unixe brauchen freie... aber freie Unixe brauchen auch propietäre Unixe! Jeder bekommt vom anderen etwas. Die meisten proprietären Unixe nutzen ab und zu freie Software, zum Beispiel Compiler. Freie Unixe profitieren von dem, was der Gemeinschaft durch die proprietären Unixe gegeben wurden. Ein gutes Beispiel ist OpenGL. Dank geht an SGI!
Das ist eine gute Art zu teilen und es sorgt für Nachahmung. OpenBSD hat geholfen zu zeigen, wie sichere Systeme arbeiten müssen. Und freie BSDs sind sehr wichtig für Apple. Ich kann mich nicht daran erinnern, dass sich Apple vor Mac OS X um Sicherheit viel gekümmert hätte!
Was ich eigentlich sagen will ist, dass die aktuelle Linuxentwicklung nicht gut ist. Ich mag Linux, aber ich mag nicht seine Entwicklung. Ich mag die Idee nicht, Windows und seine Software zu klonen. Ich finde es nicht gut, dass die Distributionen immer größer werden... und immer mehr kommerziell. Ich will nicht ein Monopol durch ein anderes ersetzt wissen (auch wenn ich nicht glaube, dass es passiert!). Bis jetzt muss Microsoft Linux oder andere Unixe nicht wirklich fürchten. Ich warte auf den Tag, wenn Microsoft die Macht hat, alles abzuschalten, speziell das Internet. Das mag paranoid klingen und ich hoffe, dass es nie passiert, aber... Aber nicht besorgt sein: Ich habe die Wahrheit nicht und ich bin auch kein Zukunftsforscher.
Wir brauchen eine echte Auswahl: um so mehr Betriebssysteme verfügbar, umso besser. Warum über "Weltherschafft" sprechen? Außer Microsoft, wen interessiert das schon? Wir müssen vielmehr für die Freiheit der Wahl kämpfen. Aber das hatte ich, glaube ich, schon erwähnt :-(
Die freie BSD Familie trägt viel zu dieser Freiheit bei. Die beteiligten Menschen teilen weiterhin, und das bringt super Systeme hervor. Dank geht an sie!
Übrigens, Herr RMS, sie haben nicht "empfohlen" GNU/FreeBSD oder GNU/NetBSD oder GNU/OpenBSD zu sagen (mal von GNU-Darwin abgesehen!): haben sie auch, wie die großen Unixhersteller, die BSD Familie vergessen oder wird bei diesen bloß nicht genug GNU Software eingesetzt? Natürlich mache ich nur Spaß, momentan existiert ja noch die Redefreiheit. Und ich werde ganz bestimmt nicht GNU/Linux sagen!

Leben wir nicht in einer großartigen Zeit?

Referenzen

Auf den unten gelisteten Internetseiten findet man reichlich Dokumentation, Downloadbereiche, Mirror-Server, usw. in verschiedenen Sprachen:



Weitere Ressourcen: