Azubi-Projekt: Wie funktioniert das AAA-System?

Unsere Auszubildenden bei der Provectus Technologies GmbH erhielten die Aufgabe in unserem Labor eine AAA-Authentifizierung per NetScaler zu einer Webanwendung einzurichten. Wie funktioniert es, wie läuft der Datenfluss ab und was haben sie dabei gelernt? Lesen Sie ihre Erfahrungen in diesem Artikel.

Wie funktioniert AAA?

Unter Authentication, Authorization and Auditing (AAA) oder Authentifizierung, Autorisierung und Aufzeichnung, versteht man die Beschreibung eines Systems zur Kontrolle des Zugriffs auf Computerressourcen. Es dient dazu die Identität eines Nutzers festzustellen und ihm gemäß seiner Rechte Zugriff auf für ihn nötige Ressourcen und Services zu gewähren, sowie alle erforderlichen Informationen für Statistiken und die Abrechnung zu sammeln. Im Einzelnen sind dies:

Authentifizierung: Die sichere Identifizierung des Nutzers, mindestens anhand von Namen und Passwort. Es gibt aber weitere und sicherere Möglichkeiten, wie Security-Token oder die Abfrage biometrischer Merkmale, wie Fingerabdruck, Augen Iris oder Gesichtserkennung. Kombiniert man mehrere dieser Möglichkeiten, wie zum Beispiel Passwort und Security-Token, spricht man von einer Multi-Faktor-Authentifizierung.

Autorisierung: Anwendung von Policies, auf welche Ressourcen, Anwendungen und Services der authentifizierte Nutzer zugreifen kann und auf welche nicht.

Aufzeichnung: Auf welche Ressourcen greift der Nutzer zu, inkl. Nutzungsdauer und Menge der Daten, die er nutzt. Die so gewonnen Daten dienen zur Erstellung von Statistiken, zur Planung aktuell und zukünftig benötigter Ressourcen, sowie eventueller Abrechnungszwecke für kostenpflichtige Dienste etc.

 

Mit dieser Definition, einem recht vereinfachten Ablaufdiagramm und einer kurzen Demonstration unserer wissenden Kollegen bewaffnet, machten wir uns daran den zu erwartenden Traffic-Flow laut der offiziellen Citrix-Doku „How AAA works“ zu erarbeiteten. Dabei stellte sich heraus, dass man dort in zwei Punkten den Application-Server und den Authentication-Server verwechselte, was uns ganz schön aus der Bahn warf und für angeregte Diskussionen sorgte. Denn laut der Doku kontaktet der Client bereits im zweiten Schritt den Application-Server, was unlogisch erscheint, denn zu diesem Zeitpunkt ist der Nutzer noch gar nicht authentifiziert, dürfte also noch gar kein Traffic von ihm bis zum Application-Server durchgehen. Dem ist auch so, wie ein später gezogener Trace bewies. Selbstverständlich fängt der Load-Balancer die erste Anfrage des Client ab und leitet sie zum Authentication-Server weiter. So entstand der folgende von uns erarbeitete Traffic-Flow.

Traffic Flow:

  1. Der Client meldet sich mit der URL zur gewünschten Webanwendung an den Application-Server. Diese landet beim NetScaler Traffic-Management-Virtual-Server, der ihn zum Authentication-vServer umleitet.
  2. Der Authentication-vServer stellt fest, dass der Nutzer noch nicht authentifiziert ist und sendet eine Response via TM vServer zum Client.
  3. Der Client antwortet mit einer Post-Request an den TM vServer.
  4. Der Authentication-vServer erstellt eine Session und setzt ein Cookie mit der ursprünglichen URL des TM vServers. Sodann sendet er eine Response zum TM vServer, welche dieser zum Client weiterleitet.
  5. Der Client antwortet mit einer Get-Request an den TM vServer.
  6. Der TM vServer leitet den Client zur Login-Page auf dem Authentication-vServer.
  7. Der Nutzer gibt seine Credentials ein und sendet eine Post-Request mit den Credentials zurück zur Login-Page.
  8. Sind die eingegebenen Credentials korrekt, wird der Client vom Authentication vServer angemeldet und zur ursprünglichen URL, wie im ursprünglichen Get-Request angegeben, zum Application Server weitergeleitet.

Traffic Flow

In diesem Flow nicht dargestellt ist die Verwendung eines externen Authentication Servers, was aber durchaus möglich und in der produktiven Praxis üblich ist. In dem Falle findet bei den einzelnen Schritten der Authentifizierung noch eine Kommunikation zwischen dem Authentication-vServer und dem externen Authentication-Server statt, zum Beispiel einem Radius- oder LDAP-Server. In dem hier beschriebenen Fall hingegen kümmert sich der Authentication-vServer um alle Belange der Authentifizierung.

Wie sind wir in der Praxis vorgegangen um AAA in unserer Laborumgebung einzurichten?

Wir erstellten auf dem Citrix NetScaler VPX (1000) unter NetScaler Gateway einen virtuellen Server, gemäß dem Vorbild der bereits vorhandenen, was falsch war. Virtual Server ist eben nicht gleich Virtual Server, da gibt es verschiedene. Jetzt hatten wir zwar einen VPN-Tunnel ins Nirgendwo, aber nicht die gewünschte AAA-Verbindung zu einer Webanwendung. Darum auf Anraten eines kundigen Kollegen den vServer wieder gelöscht und von Vorne angefangen.

Wir erstellten im zweiten Anlauf unter Security -> AAA-Application Traffic einen neuen virtuellen Server. An diesen banden wir das bereits vorhandene Wildcard-Zertifikat, damit eine verschlüsselte Verbindung per SSL bzw. TLS hergestellt werden kann. Als Authentication-Policie verwendeten wir LDAPS. Schlussendlich suchten wir uns im IP-Adressverzeichnis eine freie Adresse und gaben sie dem Server.

Ziel war es die AAA-Authentifizierung gegenüber der Open-Source-Analyseplattform Kibana anzuwenden, die ebenfalls schon existierte. Wir kaperten den bereits vorhandenen Load-Balancer und bogen die Authentication FQDN und den Authentication Virtual Server auf unseren um. Damit der Server im Netz unter dem gewünschten FQDN auch wirklich erreichbar ist, mussten wir nur noch am DNS einen neuen Host (A) mit der richtigen IP-Adresse einrichten. Zwar hätte es auch funktioniert, zumindest auf unserem eigenen Rechner, wenn wir IP-Adresse und FQDN in unsere Hosts-Datei eingetragen hätten, handwerklich sauber aber wäre das nicht gewesen. Der DNS erledigte seinen Job und prompt meldete sich nach Eingabe der von uns vergebenen URL die Login-Page des Authentication-Servers, wohinter Kibana wartete.

Gelernt haben wir dabei, dass wir schon an der Nomenklatur der vorhandenen vServer erkennen hätten müssen, dass wir mit dem virtuellen Gateway-Server auf dem Holzweg waren. Wieder ein Fehler über den man als Azubi stolpert, der glücklicherweise so offensichtlich war, dass man ihn nie wieder vergessen wird. Weswegen man dieses kleine Projekt durchaus als Erfolg bezeichnen kann, denn der gewünschte Lerneffekt trat ein.

Was halten Sie vom Vorgehen unserer Auszubildenden? Haben sie das Gelernte korrekt und verständlich wiedergegeben, oder welche Verbesserungsvorschläge würden Sie ihnen mit auf den Weg geben? Schreiben Sie es uns in die Kommentare.

Alex Vollmer
26 Aug 2018 12:45    Reply

Hey, super Artikel. Schön anschaulich und verständlich beschrieben. Evtl. der eine oder andere Fachausdruck zu viel. Da könnte man vielleicht noch etwas verständlicher werden. Aber alles in allem sehr ausdrucksstark.
Daumen hoch! Bitte mehr davon 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *

 

Unser Verhaltenskodex

Partnerschaft, Zuverlässigkeit, Integrität, Offenheit und Nachhaltigkeit sind zentrale Werte unserer Unternehmenskultur. Als Unternehmen steht es für uns im Vordergrund, im täglichen Geschäftsleben fair und ethisch korrekt zu arbeiten und bestehende Gesetze einzuhalten. Gleiches erwarten wir auch von unseren Kunden, Beratern, Lieferanten und Dienstleistern. Unsere Richtlinien und Prinzipien haben wir aus diesem Grund in unserem Verhaltenskodex festgelegt.

Datenschutzerklärung

Datenschutzkonzept

Verantwortliche Stelle im Sinne der Datenschutzgesetze ist:

  • Provectus Technologies GmbH
  • Leopoldstr. 250b, 80807 München, Deutschland
  • info@provectus.de
  • +49 (89) 7104092 0

Erfassung allgemeiner Informationen

Wenn Sie auf unsere Webseite zugreifen, werden automatisch Informationen allgemeiner Natur erfasst. Diese Informationen (Server-Logfiles) beinhalten etwa die Art des Webbrowsers, das verwendete Betriebssystem, den Domainnamen Ihres Internet Service Providers und Ähnliches. Hierbei handelt es sich ausschließlich um Informationen, welche keine Rückschlüsse auf Ihre Person zulassen. Diese Informationen sind technisch notwendig, um von Ihnen angeforderte Inhalte von Webseiten korrekt auszuliefern und fallen bei Nutzung des Internets zwingend an. Anonyme Informationen dieser Art werden von uns statistisch ausgewertet, um unseren Internetauftritt und die dahinter stehende Technik zu optimieren.

Um die Sicherheit Ihrer Daten bei der Übertragung zu schützen, verwenden wir dem aktuellen Stand der Technik entsprechende Verschlüsselungsverfahren (z. B. SSL) über HTTPS.

Kommentarfunktion

Wenn Nutzer Kommentare im Blog hinterlassen, werden neben diesen Angaben auch der Zeitpunkt ihrer Erstellung und der zuvor durch den Webseitenbesucher gewählte Nutzername gespeichert. Dies dient unserer Sicherheit, da wir für widerrechtliche Inhalte auf unserer Webseite belangt werden können, auch wenn diese durch Benutzer erstellt wurden.

Kontaktformular

Treten Sie per E-Mail oder Kontaktformular mit uns in Kontakt, werden die von Ihnen gemachten Angaben zum Zwecke der Bearbeitung der Anfrage sowie für mögliche Anschlussfragen gespeichert.

Verwendung von Google Analytics

Diese Webseite benutzt Google Analytics, einen Webanalysedienst der Google Inc. („Google“). Google Analytics verwendet sog. „Cookies“, Textdateien, die auf Ihrem Computer gespeichert werden und die eine Analyse der Benutzung der Webseite durch Sie ermöglichen. Die durch den Cookie erzeugten Informationen über Ihre Benutzung dieser Webseite werden in der Regel an einen Server von Google in den USA übertragen und dort gespeichert. Aufgrund der Aktivierung der IP-Anonymisierung auf diesen Webseiten, wird Ihre IP-Adresse von Google jedoch innerhalb von Mitgliedstaaten der Europäischen Union oder in anderen Vertragsstaaten des Abkommens über den Europäischen Wirtschaftsraum zuvor gekürzt. Nur in Ausnahmefällen wird die volle IP-Adresse an einen Server von Google in den USA übertragen und dort gekürzt. Im Auftrag des Betreibers dieser Webseite wird Google diese Informationen benutzen, um Ihre Nutzung der Webseite auszuwerten, um Reports über die Webseitenaktivitäten zusammenzustellen und um weitere mit der Webseitennutzung und der Internetnutzung verbundene Dienstleistungen gegenüber dem Webseitenbetreiber zu erbringen. Die im Rahmen von Google Analytics von Ihrem Browser übermittelte IP-Adresse wird nicht mit anderen Daten von Google zusammengeführt. Sie können die Speicherung der Cookies durch eine entsprechende Einstellung Ihrer Browser-Software verhindern; wir weisen Sie jedoch darauf hin, dass Sie in diesem Fall gegebenenfalls nicht sämtliche Funktionen dieser Webseite vollumfänglich werden nutzen können. Sie können darüber hinaus die Erfassung der durch das Cookie erzeugten und auf Ihre Nutzung der Webseite bezogenen Daten (inkl. Ihrer IP-Adresse) an Google sowie die Verarbeitung dieser Daten durch Google verhindern, indem sie das unter dem folgenden Link verfügbare Browser-Plugin herunterladen und installieren:

Link: Browser Add On zur Deaktivierung von Google Analytics

Zusätzlich oder als Alternative zum Browser-Add-On können Sie das Tracking durch Google Analytics auf unseren Seiten unterbinden, indem Sie diesen Link anklicken. Dabei wird ein Opt-Out-Cookie auf Ihrem Gerät installiert. Damit wird die Erfassung durch Google Analytics für diese Website und für diesen Browser zukünftig verhindert, so lange der Cookie in Ihrem Browser installiert bleibt.

Social Plugins

Auf unseren Webseiten werden Social Plugins der unten aufgeführten Anbieter eingesetzt. Die Plugins können Sie daran erkennen, dass sie mit dem entsprechenden Logo gekennzeichnet sind.

Über diese Plugins werden unter Umständen Informationen, zu denen auch personenbezogene Daten gehören können, an den Dienstebetreiber gesendet und ggf. von diesem genutzt. Wir verhindern die unbewusste und ungewollte Erfassung und Übertragung von Daten an den Diensteanbieter durch eine 2-Klick-Lösung. Um ein gewünschtes Social Plugin zu aktivieren, muss dieses erst durch Klick auf den entsprechenden Schalter aktiviert werden. Erst durch diese Aktivierung des Plugins wird auch die Erfassung von Informationen und deren Übertragung an den Diensteanbieter ausgelöst. Wir erfassen selbst keine personenbezogenen Daten mittels der Social Plugins oder über deren Nutzung.

Wir haben keinen Einfluss darauf, welche Daten ein aktiviertes Plugin erfasst und wie diese durch den Anbieter verwendet werden. Derzeit muss davon ausgegangen werden, dass eine direkte Verbindung zu den Diensten des Anbieters ausgebaut wird sowie mindestens die IP-Adresse und gerätebezogene Informationen erfasst und genutzt werden. Ebenfalls besteht die Möglichkeit, dass die Diensteanbieter versuchen, Cookies auf dem verwendeten Rechner zu speichern. Welche konkreten Daten hierbei erfasst und wie diese genutzt werden, entnehmen Sie bitte den Datenschutzhinweisen des jeweiligen Diensteanbieters. Hinweis: Falls Sie zeitgleich bei Facebook angemeldet sind, kann Facebook Sie als Besucher einer bestimmten Seite identifizieren.

Wir haben auf unserer Website die Social-Media-Buttons folgender Unternehmen eingebunden:

  • Facebook Inc. (1601 S. California Ave - Palo Alto - CA 94304 - USA)
  • Twitter Inc. (795 Folsom St. - Suite 600 - San Francisco - CA 94107 - USA)
  • XING AG (Gänsemarkt 43 - 20354 Hamburg - Deutschland)
  • LinkedIn Corporation (2029 Stierlin Court - Mountain View - CA 94043 - USA)

Cookies

Wie viele andere Webseiten verwenden wir auch so genannte "Cookies". Cookies sind kleine Textdateien, die von einem Webseitenserver auf Ihre Festplatte übertragen werden. Hierdurch erhalten wir automatisch bestimmte Daten wie z. B. IP-Adresse, verwendeter Browser, Betriebssystem über Ihren Computer und Ihre Verbindung zum Internet.

Cookies können nicht verwendet werden, um Programme zu starten oder Viren auf einen Computer zu übertragen. Anhand der in Cookies enthaltenen Informationen können wir Ihnen die Navigation erleichtern und die korrekte Anzeige unserer Webseiten ermöglichen.

In keinem Fall werden die von uns erfassten Daten an Dritte weitergegeben oder ohne Ihre Einwilligung eine Verknüpfung mit personenbezogenen Daten hergestellt.

Natürlich können Sie unsere Website grundsätzlich auch ohne Cookies betrachten. Internet-Browser sind regelmäßig so eingestellt, dass sie Cookies akzeptieren. Sie können die Verwendung von Cookies jederzeit über die Einstellungen Ihres Browsers deaktivieren. Bitte verwenden Sie die Hilfefunktionen Ihres Internetbrowsers, um zu erfahren, wie Sie diese Einstellungen ändern können. Bitte beachten Sie, dass einzelne Funktionen unserer Website möglicherweise nicht funktionieren, wenn Sie die Verwendung von Cookies deaktiviert haben.

Ihre Rechte auf Auskunft, Berichtigung, Sperre, Löschung und Widerspruch

Sie haben das Recht, jederzeit Auskunft über Ihre bei uns gespeicherten personenbezogenen Daten zu erhalten. Ebenso haben Sie das Recht auf Berichtigung, Sperrung oder, abgesehen von der vorgeschriebenen Datenspeicherung zur Geschäftsabwicklung, Löschung Ihrer personenbezogenen Daten. Bitte wenden Sie sich dazu an unseren Datenschutzbeauftragten. Die Kontaktdaten finden Sie ganz unten.

Damit eine Sperre von Daten jederzeit berücksichtigt werden kann, müssen diese Daten zu Kontrollzwecken in einer Sperrdatei vorgehalten werden. Sie können auch die Löschung der Daten verlangen, soweit keine gesetzliche Archivierungsverpflichtung besteht. Soweit eine solche Verpflichtung besteht, sperren wir Ihre Daten auf Wunsch.

Sie können Änderungen oder den Widerruf einer Einwilligung durch entsprechende Mitteilung an uns mit Wirkung für die Zukunft vornehmen.

Änderung unserer Datenschutzbestimmungen

Wir behalten uns vor, diese Datenschutzerklärung gelegentlich anzupassen, damit sie stets den aktuellen rechtlichen Anforderungen entspricht oder um Änderungen unserer Leistungen in der Datenschutzerklärung umzusetzen, z. B. bei der Einführung neuer Services. Für Ihren erneuten Besuch gilt dann die neue Datenschutzerklärung.

Fragen an den Datenschutzbeauftragten

Wenn Sie Fragen zum Datenschutz haben, schreiben Sie uns bitte eine E-Mail oder wenden Sie sich direkt an unseren Datenschutzbeauftragten:

  • c/o activeMind AG
  • Potsdamer Str. 3, 80802 München, Deutschland
  • datenschutz@provectus.de

Quellen Nachweis

Auf der Webseite verwendete Bilder:
Wenn nicht folgend aufgeführt, wurden Bilder von Unsplash genutzt -> Lizenz

iStockphoto Standard Lizenz:
Titel Bild: MünchenAlpen (184102635)

Icons:
Font Awesome