Besuchen Sie uns auf der it-sa 2024!

Code auf einem Bildschirm

Was ist Open Source?

Open Source (wörtlich übersetzt: „freie Quelle“) bezeichnet gemeinhin Software, deren Quellcode frei verfügbar ist und von unabhängigen Dritten eingesehen werden kann. Je nach zugrundeliegender Open-Source-Lizenz lässt er sich auch mehr oder weniger frei verwenden, verändern und weitergeben. Lizenzgebühren dürfen hingegen nicht erhoben werden.

Myra Services zum Thema: Flexibler Schutz vor einer Vielzahl von Bedrohungsszenarien mit der Myra Hyperscale WAF
Zwei Personen sitzen vor einem Laptop und schreiben Code

01

Open Source: eine Definition

Der Begriff „Open Source“ wurde 1998 von der Open Source Initiative (OSI) ins Leben gerufen. Er geht ursprünglich auf Open-Source-Software (OSS) zurück und steht für ein dezentrales, kollaboratives Arbeitsmodell: Eine Entwickler-Community tauscht untereinander Wissen aus, um Probleme zu lösen und zum Nutzen aller ein Projekt gemeinsam zu pflegen und zu verbessern. Dieser Kollektivgedanke ist ein zentrales Element von Open Source. Konkret äußert er sich darin, dass der Quellcode frei zugänglich ist und von jedermann zu (fast) jedem Zweck genutzt, kopiert und verteilt werden darf. Das schließt auch den Verzicht auf Lizenzgebühren ein. Allerdings muss Open-Source-Software nicht zwingend kostenlos sein – beispielsweise kann ein Anbieter für die Bereitstellung von Software-Sammlungen (Distributionen) und Support ein Entgelt verlangen.

02

Was ist Open-Source-Software (OSS)?

Nach der offiziellen Definition der Open Source Initiative genügt der freie Zugang zum Quellcode allein nicht aus, damit ein Programm als Open-Source-Software gilt. Folgende Kriterien müssen erfüllt sein:

Freie Weiterverbreitung

Die Lizenz muss es jedermann erlauben, die Software weiterzugeben oder als Teil einer Sammlung zu verkaufen. Es dürfen aber keine Lizenzgebühren verlangt werden.

Zugang zum Quellcode

Die Software muss im Quelltext in verständlicher Form verfügbar sein.

Zulässigkeit von abgeleiteten Werken

Die Lizenz muss Modifikationen und Weiterentwicklungen zulassen und deren Weitergabe unter denselben Bedingungen erlauben wie die Original-Software.

Integrität des Quellcodes des Autors

Zwar muss die Lizenz die Weitergabe von Software mit verändertem Quellcode zulassen, darf aber verlangen, dass abgeleitete Werke einen anderen Namen oder eine andere Versionsnummer tragen müssen.

Keine Diskriminierung von Personen oder Gruppen

Die Lizenz darf die Nutzung der Software nicht für bestimmte Zwecke oder Tätigkeitsbereiche ausschließen, etwa den Einsatz in Unternehmen.

Keine Nutzungseinschränkung

Die Lizenz darf die Nutzung der Software nicht für bestimmte Zwecke oder Tätigkeitsbereiche ausschließen, etwa den Einsatz in Unternehmen.

Allgemeingültigkeit der Lizenz bei Weitergabe

Die Lizenz muss für alle gelten, an die die Software weitergegeben wird. Es dürfen keine zusätzlichen Lizenzen vergeben werden.

Produktneutralität der Lizenz

Die Lizenz darf nicht davon abhängen, ob die Software Teil einer bestimmten Distribution ist. Sie muss auch dann gelten, wenn das Programm eigenständig verwendet oder zusammen mit anderer Software weiterverbreitet wird.

Keine Einschränkung anderer Software

Die Lizenz darf keine Einschränkungen für andere Software enthalten, die zusammen mit der lizenzierten Software weitergegeben wird.

Technologieneutralität

Die Lizenz darf die Weitergabe der Software nicht auf eine bestimmte Technologie beschränken.

03

Worin unterscheiden sich Open-Source-, freie und proprietäre Software?

Synonym zu Open-Source-Software wird auch häufig die Bezeichnung „Free Software“ oder „Freie Software“ verwendet. Beide Begriffe umschreiben denselben Leitgedanken der frei zugänglichen Software – analog zum freien Wissens- und Gedankenaustausch. Laut Free Software Foundation (FSF) gibt es allerdings deutliche Unterschiede hinsichtlich der zugrundeliegenden Philosophie: Bei Open Source geht es in erster Linie um den praktischen Nutzen, der sich aus der kollaborativen Entwicklungsmethodik ergibt. Hinter dem in den 1980er Jahren entstandenen Begriff „Freie Software“ verbirgt sich zusätzlich eine soziale Bewegung, die sich für Freiheit und Gerechtigkeit einsetzt.

Nach Definition der FSF ist freie Software solche Software, die die Freiheit und Gemeinschaft der NutzerInnen respektiert.

„Frei“ bedeutet hier nicht „kostenlos“ wie in Freibier oder Freeware, sondern ist im Sinne von freie Meinungsäußerung zu verstehen. Ganz allgemein bedeutet das, dass NutzerInnen die Freiheit haben, Software auszuführen, zu kopieren, zu verbreiten, zu untersuchen, zu ändern und zu verbessern.

Dem entgegen steht proprietäre Software, deren Nutzung und Weiterverbreitung durch rechtliche Bestimmungen seitens des Herstellers stark eingeschränkt wird. Der Quellcode proprietärer Software ist nicht frei verfügbar und kann somit auch nicht eingesehen, verändert oder weitergegeben werden. Zusätzlich lässt sich solche herstellergebundene Software meist nur gegen Bezahlung verwenden. Es wird lediglich ein Nutzungsrecht in Form einer Lizenz erteilt. Die Software selbst bleibt im Besitz des Herstellers, der das Urheberrecht und somit die vollständige Kontrolle über das Produkt hat.

Code auf einem Bildschirm

04

Was sind die wichtigsten Unterschiede bei Open-Source-Lizenzen?

Open-Source-Software wird unter verschiedenen Lizenzen zur Verfügung gestellt. Alle haben gemein, dass sie dem Lizenznehmer ein Vervielfältigungs- und Verarbeitungsrecht einräumen. Wichtigstes Unterscheidungsmerkmal ist, welche Anforderungen an die Weiterverbreitung modifizierter Versionen oder abgeleiteter Werke gestellt werden. Am besten lassen sich die verschiedenen Lizenztypen anhand des sogenannten Copyleft-Effekts unterscheiden:

  • Lizenzen mit strengem Copyleft-Effekt: Lizenznehmer sind verpflichtet, von der ursprünglichen Software abgeleitete Werke ebenfalls nur unter den Bedingungen der Ursprungslizenz weiterzuverarbeiten. Beispiele: GNU General Public License (GPL), Open Software License (OSL)

  • Lizenzen mit beschränktem Copyleft-Effekt: Bestimmte Bearbeitungen bzw. abgeleitete Werke sind vom Copyleft-Effekt ausgenommen, müssen also nicht unter die Lizenz des ursprünglichen Werks gestellt werden. Beispiele: GNU Lesser General Public Licence (LGPL), Mozilla Public License (MPL)

  • Lizenzen ohne Copyleft-Effekt („Permissive Licenses“): Lizenznehmer genießen alle Freiheiten einer Open-Source-Lizenz, müssen aber keine Bedingungen hinsichtlich des zu verwendenden Lizenztyps erfüllen. Veränderte Versionen können somit unter beliebigen Lizenzbedingungen weiterverbreitet werden, etwa auch als proprietäre Software. Beispiele: MIT License, BSD License, Apache License

Eine Übersicht über alle wichtigen Open-Source-Lizenzen findet sich beim Institut für Rechtsfragen der Freien und Open-Source-Software.

05

Welche Vorteile bietet Open-Source-Software?

Open-Source-Software bietet eine Reihe von Vorteilen. Der offensichtlichste besteht darin, dass sie in der Regel kostenlos nutzbar ist, weil anders als bei kommerzieller Software keine Lizenzgebühren fällig werden. Außerdem besteht nicht die Gefahr eines Vendor Lock-in, der einen späteren Wechsel zu einem anderen Produkt oder Anbieter erschwert. Unternehmen können Open-Source-Software je nach zugrundeliegender Lizenz an ihre Bedürfnisse anpassen (lassen), um maßgeschneiderte Lösungen zu finden.

Ein zentraler Vorteil liegt zudem in der meist sehr engagierten Entwickler-Community: Da viele unabhängige Entwickler gemeinsam am Code arbeiten und ihn fortlaufend überprüfen, werden Fehler sowie Sicherheitslücken häufig schnell gefunden und beseitigt. Das wirkt sich positiv auf Qualität, Stabilität und Sicherheit der Software aus.

Die Vorteile von Open-Source-Software im Überblick:

  • Keine Lizenzgebühren

  • Keine Abhängigkeit von einem Hersteller

  • Transparenz durch Einblick in den Quellcode

  • Interoperabilität durch offene Standards und Dateiformate

  • Software lässt sich flexibel an eigene Bedürfnisse anpassen

  • Zügige und effiziente Fehlerbehebung durch Vielaugenprinzip und Schwarmintelligenz

  • Hohe IT-Sicherheit, weil jedermann den Code auf Schwachstellen oder Hintertüren prüfen kann

  • Einsparungen durch geteilte Entwicklungskosten innerhalb von Open-Source-Projekten

  • Geringerer Entwicklungsaufwand durch Einsatz von OSS-Komponenten

  • Beschleunigte Innovation, weil nicht alle Teile einer Software neu geschrieben werden müssen und Unternehmen ohne Kostenrisiko verschiedene Lösungen ausprobieren können

Laptop mit Code auf dem Bildschirm

06

Was sind Beispiele für Open-Source-Software?

Open-Source-Komponenten sind heute Bestandteil vieler kommerziellen Anwendungen, weshalb sich inzwischen auch Konzerne wie Microsoft, Google, Amazon, Intel, IBM, Hewlett-Packard, Oracle und SAP in Open-Source-Projekten engagieren. OSS ist in der Software-Landschaft entsprechend weit verbreitet und treibt ebenfalls den Großteil des Internets an. Open Source spielt etwa eine wichtige Rolle bei (Server-)Betriebssystemen, Web- und Mailservern, Datenbanken, Programmiersprachen und Content-Management-Systemen (CMS). Darüber hinaus gibt es noch viele weitere Anwendungsgebiete.

Häufige Einsatzfelder und bekannte Beispiele für Open-Source-Software:

  • (Server-)Betriebssysteme: GNU/Linux

  • Webserver: Apache, Nginx

  • Mailserver: Open-Xchange, Zimbra

  • Datenbanken: MySQL, Hadoop, MariaDB

  • Programmiersprachen: PHP, Python, Java, Ruby

  • Content-Management-Systeme: TYPO3, WordPress

  • Cloud / Virtualisierung: OpenStack, Docker, Kubernetes, KVM

  • Verschlüsselung: GnuPG, OpenSSH, OpenSSL, OpenVPN

  • Desktop-Anwendungen: Mozilla Firefox und Thunderbird, LibreOffice, OpenOffice, GIMP

07

Ist Open-Source-Software sicher?

Aktiv gepflegte Open-Source-Software gilt mindestens als genauso sicher wie proprietäre Software. Ihr größter Vorteil ist die Transparenz: Da der Quelltext frei zugänglich ist, kann jede Person mit den erforderlichen Programmierkenntnissen den Code selbst prüfen statt auf Sicherheitsversprechen des Herstellers vertrauen zu müssen.

Open-Source-KritikerInnen argumentieren in diesem Zusammenhang genau umgekehrt, dass gerade der freie Zugang zum Quelltext das Einschleusen von Schadcode erleichtere. Laut „The 2020 State of Octoverse“-Report der Versionsverwaltungsplattform GitHub sind jedoch nur 17 Prozent aller Sicherheitslücken in Open-Source-Software auf böswillige Eingriffe in den Code (z.B. versuchte Installation von Backdoors) zurückzuführen, die restlichen 83 Prozent resultieren aus Programmierfehlern. In der Regel werden dank des Vielaugenprinzips solche Probleme oder Sicherheitslücken rasch erkannt und zeitnah durch die Entwicklergemeinde behoben.

Darüber hinaus sind die normalerweise namentlich bekannten EntwicklerInnen einer Open-Source-Software auch auf ihren guten Ruf bedacht und wollen nicht mit schädlichem Code in Verbindung gebracht werden. Allein schon deshalb genießt Sicherheit bei Open-Source-Projekten seit jeher einen hohen Stellenwert. Das bedeutet nicht, dass Open-Source-Software per se sicher ist. Aber vertrauenswürdige Projekte mit einem kontrollierten Entwicklungsprozess und einer engagierten Community liefern mindestens genauso sichere Produkte wie Hersteller proprietärer Software.

Handy und Laptop mit Code auf dem Bildschirm

08

Open Source: Das müssen Sie wissen

Open Source beschreibt eine kollaborative Entwicklungsmethodik, die auf dem freien Wissens- und Gedankenaustausch beruht. Entsprechend ist der Quellcode von Open-Source-Software im Gegensatz zu dem proprietärer Software frei zugänglich und kann von allen Interessierten eingesehen und je nach Lizenzbedingungen mehr oder weniger frei genutzt, kopiert, verändert und weitergegeben werden. Die Open-Source-Lizenzen schreiben zudem den Verzicht auf Lizenzgebühren vor. Die größten Vorteile von Open-Source-Software sind ihre Transparenz, Flexibilität und Kosteneffizienz. Das Sicherheitsniveau entspricht meist mindestens dem proprietärer Software. Dadurch eignet sich Open-Source-Software auch für den professionellen Einsatz in Unternehmen oder Behörden. So setzt etwa der Deutsche Bundestag im Serverbereich das Betriebssystem GNU/Linux und andere Open-Source-Software ein. Der Großteil des Internets wird ebenfalls mit Open-Source-Software betrieben. Und seit 2018 laufen auch die 500 leistungsfähigsten Supercomputer der Welt (Top 500) ausschließlich unter Linux.