M431 Projekt - SerjoschaE/M431 Wiki

Realisierung eines teamfähigen Passwort-Managers

Titelbild

16.5.2022 - 4.7.2022

Lehrperson: Marcello Calisto

Kandidat: Serjoscha Evci

Teil 1 -- Umfeld und Ablauf

Projektorganisation und Aufgabenstellung

Personen und Adressen

Schüler: Serjoscha Evci
Betrieb (=Durchführungsort): Rafisa Informatik GmbH
Adresse: Bernstrasse 88, PLZ 8953
Telefon: 078 745 02 22
Mail: [email protected]

Lehrperson: Marcello Calisto
Betrieb: Technische Berufsschule Zürich TBZ
Adresse: Ausstellungsstrasse 70, PLZ 8005
Telefon: 044 446 96 00
Mail: [email protected]

Aufgabestellung

In der Rafisa Informatik GmbH werden zurzeit 50 Lernende der Fachrichtungen Applikationsentwicklung, ICT-Fachmann/Fachfrau, Systemtechnik und Betriebsinformatik sowie Plattformentwicklung zu InformatikerInnen EFZ ausgebildet. Neben dem regulären Ausbildungsbetrieb bietet die Rafisa auch Eignungsabklärungen, Arbeitstrainings, Vorbereitungen für eine Informatik-Ausbildung sowie Bewerbungs- und Job-Coachings an.

Das Projekt wird in einer abgesicherten Laborumgebung der Firma durchgeführt.

Für die Verwaltung der Rafisa Infrastruktur werden eine Vielzahl von Benutzernamen und Kennwörtern benötigt. Diese werden heute dezentral verwaltet. Zur Verbesserung der Koordination und Steigerung der Sicherheit soll ein zentrales Passwort-Management eingerichtet werden. Der Passwort-Manager soll in einer virtuellen Maschine auf der Virtualisierungsplattform Proxmox VE installiert werden.

Die Anforderungen an das System sind:

  • Open Source Software
  • LDAP-Anbindung
  • Kostenlos
  • Self-hosted

Projektaufbauorganisation

Die Prüfungsexperten bilden zusammen mit dem Fachverantwortlichen der Ausbildung und dem Kunden den Auftraggeber. Zusammen sind sie für die Formulierung der Aufgabenstellung und Benotung der Projektarbeit zuständig.

Personen

Lehrperson: Marcello Calisto
Schüler: Serjoscha Evci

Rollen

Projektleiter: Serjoscha Evci
Auftraggeber, Kunde: Marcello Calisto

Aufgaben

Der Projektleiter ist für die komplette Realisierung und Dokumentation des Projektes zuständig.
Der Auftraggeber ist für die Genehmigung des Auftrages zuständig.

Verantwortung

Die Realisierung des Projektes liegt allein in der Verantwortung des Schülers.

Projektorganigramm

Organigramm

Vorgehen

Projektmethode IPERKA

IPERKA ist eine Projektmethode und steht für:

Informieren: Sich über etwas eine Übersicht verschaffen. Informationen aus dem Internet suchen. Quellenangaben nicht vergessen. Bilder sollten ebenfalls mit einer Quelle verzeichnet sein. Informationen gut veranschaulichen und wenn nötig gleich erklären. Tatsachen und Umstände definieren und sich Gedanken über eine Umsetzung machen.

Planen: Mit den recherchierten Informationen ein notwendiges Konzept für ein Thema (Dienst, Teilauftrag) planen. Die Planung sollte immer einen günstigen Fall bevorzugen und falls möglich mehrere Alternativen zu einer bereits geplanten bzw. gegebenen Umsetzung bieten.

Entscheiden: Aufgrund der Planung und deren Möglichkeiten wird hier entschieden, wie die Umsetzung erfolgen sollte. Die Umsetzung sollte einen günstigen Fall bevorzugen.

Realisieren: In diesem Schritt werden getroffene Entscheidungen umgesetzt. Bei der Realisierung sollten getroffene Entscheidungen bzw. mögliche Vorgehensweisen (Planung) beachtet werden und Umgesetztes sollte dokumentiert werden in einer gut verständlichen, korrekten Fachsprache.

Kontrollieren: Die umgesetzte Arbeit wird kontrolliert. Mögliche Konfigurationen bzw. Einstellungen, welche nicht dem günstigsten Fall entsprechen, sollten diesem angepasst werden. (Testing)

Auswerten: Hier wird schliesslich dokumentiert, was alles kontrolliert und angepasst wurde. Es wird sozusagen praktisch untermauert, dass (möglichst) alle Konfigurationen dem Idealfall entsprechen und entsprechend dokumentiert sind. Bei der Auswertung werden das Projekt bzw. der Projektverlauf als Ganzes beurteilt. Hier sind auch Verbesserungsvorschläge zu nennen.

Sicherung der Resultate

Die Dokumentation sowie die wichtigsten Konfig-Files werden in Git versioniert.

Zeitplan (A3)

Zeitplan (Planung und Realität, max. 2 Seiten, 2- oder 4-Std-Raster, Teilschritte gemäss Aufgabestelleung, wird im Teil «Entscheiden» noch zu Arbeitspaketen verfeinert).
Hier kann man den zur Verfügung gestellten Excel-Zeitplan am Schluss als OLE-Objekt einfügen.

Teil 2 -- Projekt

Kurzfassung Projektbericht (B1)

Eine konzeptionelle Zusammenfassung der Arbeit und des erarbeiteten Ergebnisses erleichtert dem mit dem Projekt befassten Leser des Berichts (Fachvorgesetzte, Experten) den Einstieg für das Verständnis der geleisteten Arbeit. Die Kurzfassung enthält nur Text und keine Grafik.

Informieren

Erfassung der zur Verfügung stehenden Hardware

Gerät Modell CPU(s) RAM Disk NIC OS GPU
Proxmox-Server HP ProLiant DL380p Gen8 Xeon E5-26432 Sockets à 4 Cores 144GB 24-Channel DDR3ECC 1.8TB SAS HW-RAID 4x Broadcom BCM5719 GbE Proxmox Virtual Environment Matrox MGA G200EH
PC im Betrieb ASUS M32CD4-K I7-77004 cores 16GB 2-Channel DDR4 1TB SATA single disk 1x Realtek GbE Manjaro-Gnome Intel HD 630 iGPU
Laptop für die Schule ByoD Acer Nitro 5 An517-41 Ryzen 7 5800h8 cores 32GB 2-Channel DDR4-3200 CL22-22-22 XMP 2TB NVMe Linux-Software-Raid 1x Killer E260010GbE mit Linux, Windows nur 2.5GbE wegen Lizenzen Kubuntu, das ist aber krüpplig, weil auf Debian basierend, darum bald Manjaro-Gnome Nvidia RTX 30606GB dGPU
Vega 8 iGPU

Erfassung der zur Verfügung gestellten Services

Die Virtualisierungsumgebung Proxmox VE

Proxmox Virtual Environment (Proxmox VE oder PVE) ist ein Open-Source-Software-Server um VMs und Container zu verwalten. PVE ist ein Hypervisor, der Betriebssysteme wie Linux und Windows auf x64-CPUs ausführen kann. Es handelt sich um eine GNU/Linux-Distribution auf Basis von Debian auf einem modifizierten Linux-Kernel und nutzt für die VMs KVM sowie LXC für die Container. Proxmox VE umfasst ein Webinterface und CLI-Tools. PVE ermöglicht es, mit mehreren Proxmox-Nodes High Availability-Systeme aufzubauen. Des Weiteren können mehrere arbeitende Proxmox-Nodes von einem Webinterface aus verwaltet werden.

Die Minimal-Anforderungen an die Proxmox-Hardware sind:

  • CPU: 64bit (Intel EMT64 oder AMD64)Intel VT/AMD-V-fähige CPU/Mainboard (für KVM Full Virtualization Unterstützung)
  • Mindestens 1 GB RAM
  • Festplatte
  • Eine Netzwerkkarte

Manjaro GNU/Linux

Manjaro ist eine benutzerfreundliche Linux-Distribution, die auf dem unabhängig entwickelten Arch-Betriebssystem basiert. In der Linux-Gemeinschaft ist Arch selbst dafür bekannt, dass es eine außergewöhnlich schnelle, leistungsstarke und schlanke Distribution ist, die Zugang zur allerneuesten und innovativsten Software bietet. Arch richtet sich jedoch auch an erfahrenere oder technisch interessierte Benutzer. Daher wird es im Allgemeinen als unerreichbar für diejenigen angesehen, die nicht über das nötige technische Know-how (oder die nötige Ausdauer) verfügen, um es zu benutzen.

Manjaro wurde in Österreich, Frankreich und Deutschland entwickelt und bietet alle Vorteile des Arch-Betriebssystems in Kombination mit einem Schwerpunkt auf Benutzerfreundlichkeit und Barrierefreiheit. Manjaro folgt Archlinux und bietet offiziell nur eine 64-Bit-Version an. Manjaro eignet sich sowohl für Neueinsteiger als auch für erfahrene Linux-Nutzer. Für Neueinsteiger wird ein benutzerfreundliches Installationsprogramm bereitgestellt, und das System selbst ist so konzipiert, dass es direkt nach dem Auspacken voll funktionsfähig ist.

Was sind teamfähige Passwortmanager?

Warum braucht ein Unternehmen einen Passwortmanager?

In jedem Unternehmen müssen die Mitarbeiter ihre geschäftsbezogenen Passwörter und vertraulichen Informationen sicher aufbewahren. Das bedeutet, dass Passwörter nicht wiederverwendet werden dürfen, dass eindeutige und sichere Anmeldedaten erstellt werden müssen und dass alle diese Informationen an einem sicheren Ort aufbewahrt werden müssen. Und "sicher" bedeutet sicherer als ein Post-It-Zettel. Glücklicherweise bieten viele bekannte Sicherheitsunternehmen auf Unternehmen zugeschnittene Passwort-Manager an.

Welche vorteile haben Passwort-Manager?

Mit einem Passwort-Manager für Unternehmen müssen die Mitarbeiter eines Unternehmens weniger Zeit damit verbringen, sich sichere und eindeutige Passwörter für alle ihre Konten zu merken. Der Passwort-Manager speichert die Anmeldedaten der einzelnen Personen und hilft ihnen, neue, zufällige Passwörter zu erstellen. Mit den besten Passwortmanagern für Unternehmen können Administratoren auch die Passworthygiene der Mitarbeiter im Auge behalten. Das heißt, Sie können sehen, welche Mitarbeiter schwache oder wiederverwendete Passwörter haben und wer seine Konten nicht mit der Multi-Faktor-Authentifizierung schützt, so dass Sie sie auffordern können, ihre Sicherheit zu verbessern.

Sobald Sie oder ein Mitarbeiter einen Passwort-Manager installiert und eingerichtet haben, erledigt der Passwort-Manager den größten Teil der restlichen Arbeit automatisch. Wenn Sie sich bei einer sicheren Website anmelden, bietet Ihnen Ihr Passwort-Manager an, Ihre Anmeldedaten zu speichern, damit er die Informationen ausfüllen kann, wenn Sie die Website später wieder besuchen. Viele Passwort-Manager bieten eine Browsererweiterung an, die eine Liste Ihrer Logins speichert, so dass Sie auf eine Webadresse klicken und sich automatisch anmelden können.

Die meisten Passwort-Manager können auch persönliche oder Unternehmensdaten in Webformulare eintragen, was sicherer und weniger fehleranfällig ist als die manuelle Eingabe von Informationen. Sie können sensible Unternehmensdaten im verschlüsselten Tresor des Passwortmanagers bearbeiten und speichern. Die Speicherung von Zahlungs- und Identitätsdaten im Tresor Ihres Unternehmens ist sicherer als die Speicherung in Ihrem Browser.

Welche Funktionen sind für Unternehmen relevant?

Die gemeinsame Nutzung von Passwörtern ist eine wichtige Funktion für Passwort-Manager im Geschäftsleben. Wir raten davon ab, Passwörter weiterzugeben, aber wenn Sie es tun müssen, ist ein Passwortmanager die sicherste Option. Mitarbeiter müssen oft Unternehmensinformationen und Notizen an andere Mitarbeiter und Administratoren weitergeben. Mit einigen Passwort-Managern können Sie eine Anmeldung freigeben, ohne das Passwort sichtbar zu machen, und Sie können die freigegebenen Daten widerrufen, sobald die andere Person sie verwendet hat, oder den Empfänger zum Eigentümer der Anmeldedaten machen.

Viele Passwort-Manager bieten Single Sign-On oder Integrationen mit Unternehmenssoftware wie Zoom oder Google Workspace. Diese Integrationen bieten Ihrem Unternehmen eine weitere Ebene der Bequemlichkeit und Sicherheit, da die Mitarbeiter nicht jedes Mal Passwörter eingeben müssen, wenn sie verschiedene arbeitsbezogene Anwendungen nutzen wollen.

Projektumfeld: Netzplan der Rafisa

Ist-Plan L3

FQDN IP Betriebssystem Dienste
Gerät --- --- ---
proxmox.1.tisch.org 172.16.56.21 Proxmox VE Virtualisierung
pw-mgr.password.rafisa.intern 172.16.56.verfügbar Server-OS TBD Passwort-Manager
PC-ZH-Manjaro 192.168.77.DHCP Manjaro Rolling Arbeits-PC
Serjoscha-Nitro-AN515-44 DHCP Kubuntu 22.04 Laptop mit Win11-Schul-VM

Planen

Planen VMs auf Proxmox

Bei der Erstellung einer virtuellen Maschine in Proxmox hat man viele Möglichkeiten, bestimmte Hardwareressourcen zuzuweisen. Die Kenntnis dieser Ressourcen ist wichtig, um die richtige Hardware für bessere Kompatibilität und Leistung auszuwählen.

In der nachstehenden Tabelle sind Ressourcen-Kategorien mit möglichen Varianten:

Ressourcen Varianten
Disk Bus oder Device IDE
* SATA
* VirtIO (Paravirtualised)
* SCSI
Disk Format * Raw Disk Image
* QEMU Image Format
* VMWare Image Format
CPU Variabel
RAM Variabel
Netzwerkadapter * Intel E1000
* VirtIO (paravirtualized)
* Realtek RTL8139
* VMware vmxnet3

Block Device Bus

IDE: Bietet sehr gute Kompatibilität mit allen Betriebssystemen. Der Datendurchsatz ist für heutige Verhältnisse niedrig, des Weiteren
kann IDE nur 4 Geräte ansteuern.
SATA: Bietet sehr gute Kompatibilität mit Betriebssystemen. Die Performance ist heutzutage okay, SATA Kann mit 6 Geräten umgehen.
VirtIO: Ermöglicht die Einbindung von bis zu 14 Geräten. Abgelöst durch SCSI.
SCSI: Nicht ganz so schnell wie das von Proxmox noch nicht als virtueller Bus eingeführte NVMe, jedoch immer noch recht flink, ermöglicht
es wie der Vorgänger bis zu 14 Geräte zeitgleich angeschlossen zu haben.

In Frage kommende Passwort-Manager

Nach einer Webrecherche unter [1], [2] und [3] habe ich neun Passwortmanager herausgesucht, die ich nach den Muss-Kriterien aus der Aufgabenstellung in folgender Tabelle vorgefiltert habe:

Vorauswahltabelle

Name Open-Source? LDAP-Unterstützung? Free? Kann Self-Hosted sein?
Bitwarden Ja Im Enterprise-Plan ja Wenn LDAP nötig, Nein Ja
LessPass Ja Nein Ja Ja
Passbolt Ja Business-Plan aufwärts Wenn LDAP nötig, Nein Ja
Padloc Ja Nein Nein Ja
Passit Ja Ja Ja Ja
Psono Ja Nur EE EE Nein Ja
Passwork Für Source-Code-Audits Ja Ja Nein Ja
RoboForm Nein im Business-Plan ja, aber nur AD Business-Plan Nein Ja
Teampass Ja Ja Ja Ja

Nach Auswertung dieser Tabelle sind noch sysPass, Passit und Teampass im Auswahlverfahren drin, da nur diese drei alle Muss-Kriterien erfüllen.

Testkonzept

Entscheiden

Entscheidung für Passwort-Manager

Dann habe ich die Soll-Kriterien auf einer Skala von 1 bis 11 verglichen:

Name Einfachkeit der Installation Einfachkeit des Postinstall-Setups
Gewichtung 50% 50%
sysPass 7/11 1/11
Passit 1/11 8/11
Teampass WIP WIP

Entscheiden Proxmox

Soll-Plan der Netzwerk-Umgebung

Meilensteine

Als Meilensteine dienen mir die einzelnen Phasen von IPERKA.


IPERKA-Phase Erledigt bis


Informieren 13.06.2022

Planen 20.06.2022

Entscheiden 20.06.2022

Realisieren 27.06.2022

Kontrollieren 04.07.2022

Auswerten 04.07.2022

Arbeitspakete

Realisieren

Aufsetzen der VM

Aufsetzen des Passwort-Managers

Einrichten des Passwort-Managers

Kontrollieren

Dürchführung der Tests

Auswerten

Kriterien und Fragen in dieser Phase

Rückblick auf das Projekt, Auswertung der ErfahrungenGedanken über das FolgeprojektWelche Probleme wurden gelöstWas war erfolgreichWas muss verbessert werdenFazit und Reflexion

Literaturverzeichnis

[0] C. Jacob, „c-jakob," 18 07 2008. [Online]. Available: http://c-jacob.ch/iperka.pdf. [Zugriff am 10 06 2020]. [1] https://wisdomplexus.com/blogs/self-hosted-password-managers/ [2] https://medevel.com/14-web-password-managers/ [3] https://nerdschalk.com/8-best-self-hosted-password-managers/

Teil 3 -- Anhang

Glossar