flashpixx Geschrieben 22. Oktober 2009 Geschrieben 22. Oktober 2009 Wie sieht es mit Kerberos aus? Was hat Kerberos jetzt damit überhaupt zu tun. Wirf doch nicht immer wieder neue Schlagworte in den Raum, sondern überlege Dir den Kontext dazu. Was soll Kerberos nun bewerkstelligen !? Dies User laden nun im Homeverzeichnis. In welchem Home? Dem lokalen des Rechners an dem sie sich anmelden oder exportierst Du das Homeverzeichnis? Putty verbindet sich ja nun über SSH. Oder soll ich das ganze jetzt nun mit SSL machen? Transport Layer Security ? Wikipedia Secure Shell ? Wikipedia Wirf nicht wie oben irgendwelche Schlagworte in den Raum. Du kennst die Unterschiede zwischen SSL und SSH ? Du weißt wie Deine Rechner kommunizieren, dann solltest Du Dich selbst einmal fragen, ob der Einsatz sinnvoll oder eben nicht sinnvoll wäre Zitieren
Godfather_d Geschrieben 22. Oktober 2009 Autor Geschrieben 22. Oktober 2009 (bearbeitet) Was hat Kerberos jetzt damit überhaupt zu tun. Wirf doch nicht immer wieder neue Schlagworte in den Raum, sondern überlege Dir den Kontext dazu. Was soll Kerberos nun bewerkstelligen !? Laut Wiki: Kerberos bietet sichere und einheitliche Authentifizierung in einem ungesicherten TCP/IP-Netzwerk auf sicheren Hostrechnern. Die Authentifizierung übernimmt eine vertrauenswürdige dritte Partei (auch als Trusted Third Party bezeichnet). Diese dritte Partei ist ein besonders geschützter Kerberos-5-Netzwerkdienst. Kerberos unterstützt Single Sign-on, das heißt, ein Benutzer muss sich nur noch einmal anmelden, dann kann er alle Netzwerkdienste nutzen, ohne ein weiteres Mal ein Passwort eingeben zu müssen. Kerberos übernimmt die weitere Authentifizierung. " target="_blank"> Kerberos bietet sichere und einheitliche Authentifizierung in einem ungesicherten TCP/IP-Netzwerk auf sicheren Hostrechnern. Die Authentifizierung übernimmt eine vertrauenswürdige dritte Partei (auch als Trusted Third Party bezeichnet). Diese dritte Partei ist ein besonders geschützter Kerberos-5-Netzwerkdienst. Kerberos unterstützt Single Sign-on, das heißt, ein Benutzer muss sich nur noch einmal anmelden, dann kann er alle Netzwerkdienste nutzen, ohne ein weiteres Mal ein Passwort eingeben zu müssen. Kerberos übernimmt die weitere Authentifizierung. In welchem Home? Dem lokalen des Rechners an dem sie sich anmelden oder exportierst Du das Homeverzeichnis? Das Verzeichnis wird auf dem Client der sich anmeldet exportiert. Wirf nicht wie oben irgendwelche Schlagworte in den Raum. Du kennst die Unterschiede zwischen SSL und SSH ? Du weißt wie Deine Rechner kommunizieren, dann solltest Du Dich selbst einmal fragen, ob der Einsatz sinnvoll oder eben nicht sinnvoll wäre Ich möchte mich mit dem Befehl: ssh client@ldapserver authentifizieren (Verbindung ist verschlüsselt). Die Authentifizierung soll über den Public Key hergestellt werden ohne jegliche Kennworteingabe. URL://ldaps wie du mir vorgeschlagen hast, geht ja über SSL und nicht über SSH. Um URL://ldaps zu bewerkstelligen benötige ich eine Bestätigung meines Keys von einer Zertifizierungsstelle. Edit: Ich habe hier was gefunden, vielleicht klappt es (kann es erst am Montag probieren): dn: uid=jpm,ou=People,dc=fupps,dc=com sn: Mens cn: Jan-Piet Mens gecos: JP Mens uidNumber: 400 gidNumber: 400 uid: jpm homeDirectory: /home/jpm loginShell: /bin/bash objectClass: inetOrgPerson objectClass: person objectClass: ldapPublicKey objectClass: posixAccount sshPublicKey: ssh-rsa CAr9x8... sshPublicKey: environment="LDP_USER=jpm" ssh-rsa AAAAB... Bearbeitet 22. Oktober 2009 von Godfather_d Zitieren
flashpixx Geschrieben 22. Oktober 2009 Geschrieben 22. Oktober 2009 Kerberos bietet sichere[...] " target="_blank"> Kerberos bietet sichere[...] ich kenne den Wiki Artikel, aber was hat Kerberos mit Deinem Vorhaben zu tun? Ich möchte mich mit dem Befehl: ssh client@ldapserver authentifizieren (Verbindung ist verschlüsselt). Die Authentifizierung soll über den Public Key hergestellt werden ohne jegliche Kennworteingabe. Wenn Du einen Key einsetzt hast Du eh keine Kennworteingabe, das ist ja gerade der Sinn davon URL://ldaps wie du mir vorgeschlagen hast, geht ja über SSL und nicht über SSH. Um URL://ldaps zu bewerkstelligen benötige ich eine Bestätigung meines Keys von einer Zertifizierungsstelle. Man kann auch mit selbstsignierten Zertifikaten arbeiten. Aber was hat LDAP, das per SSL kommuniziert mit dem SSH Zugang auf dem Server zu tun? Deine LDAP Verbindung wird durch SSL getunnelt, da Du ja wolltest, dass die Passworthashes nicht unverschlüsselt über das Netz gehen. Warum willst Du einen Kerberos haben, wenn Du nur einen Shell Zugang brauchst bzw eine Anmeldung via Windows? Zitieren
Godfather_d Geschrieben 22. Oktober 2009 Autor Geschrieben 22. Oktober 2009 Man kann auch mit selbstsignierten Zertifikaten arbeiten. Aber was hat LDAP, das per SSL kommuniziert mit dem SSH Zugang auf dem Server zu tun? Deine LDAP Verbindung wird durch SSL getunnelt, da Du ja wolltest, dass die Passworthashes nicht unverschlüsselt über das Netz gehen. Warum willst Du einen Kerberos haben, wenn Du nur einen Shell Zugang brauchst bzw eine Anmeldung via Windows? Wenn ich mich über SSH auf dem Server anmelde und mich von dort aus anmelde, wird ja die Verbindung auch getunnelt, somit wird SSL überflüssig? Ich weiß halt nicht, ob es es prinzipiell möglich ist LDAP in der DB so einzustellen, dass er anstatt das Kennwort der User überprüft, den Public Key des Users überprüft. Damit meine ich den Public Key in der LDAP DB zu hinterlassen. Wenn das nicht gehen sollte scheint da Kerberos eine Lösung zu sein. Es geht mir prinzipiell ums einloggen ohne Kennwort. Zitieren
flashpixx Geschrieben 22. Oktober 2009 Geschrieben 22. Oktober 2009 Wenn ich mich über SSH auf dem Server anmelde und mich von dort aus anmelde, wird ja die Verbindung auch getunnelt, somit wird SSL überflüssig? Hast Du Dir mal Gedanken gemacht, wie der Server, auf dem Du Dich einloggst mit Deinem LDAP Server kommuniziert? Ich weiß halt nicht, ob es es prinzipiell möglich ist LDAP in der DB so einzustellen, dass er anstatt das Kennwort der User überprüft, den Public Key des Users überprüft. Damit meine ich den Public Key in der LDAP DB zu hinterlassen. Kann man, aber wofür? Wenn Du das Homeverzeichnis eh exportierst ist das irrelevant. Wenn das nicht gehen sollte scheint da Kerberos eine Lösung zu sein. Es geht mir prinzipiell ums einloggen ohne Kennwort. s.o. setz Dich doch erst einmal mit den Systemen richtig (!) auseinander, anstatt direkt mit Kanonen auf Spatzen zu schießen Zitieren
Godfather_d Geschrieben 23. Oktober 2009 Autor Geschrieben 23. Oktober 2009 (bearbeitet) Hast Du Dir mal Gedanken gemacht, wie der Server, auf dem Du Dich einloggst mit Deinem LDAP Server kommuniziert? Der Server auf dem ich anmelde ist auch der LDAP-Server, dort laufen die ganzen Dienste. Möchte ich dann Daten aus dem LDAP Verzeichnis aufrufen bzw. auslesen, geht es dann lokal über die Loopback-Adresse + Port -> 127.0.0.1:389. Anders ist wenn ein Client den Anspruch des LDAP-Servers in Anspruch nehmen möchte (LDAP-Dienst). Dort geschieht folgendes: Der User öffnet Bsp.: Phpmyadmin (Adminkonsole) gibt dort IP + Port des LDAP-Server ein. Was ist geschehen? Das Programm Phpmyadmin übergibt an den entsprechenden Dienst der auf den PC läuft. Dieser Dienst ist die Schnittstelle zwischen OS und der Anwendungsschicht. Die Daten (Befehle) werden dann an LDAP als Kommunikationsprotokoll übergeben. Damit dann auch eine Session (Sitzungsschicht) zwischen Client und LDAP-Server aufgebaut wird, wird erstmal eine Verbindung benötigt. Über TCP/IP (Transportschicht) wird diese Verbindung zwischen Client und LDAP-Server aufgebaut. Diese Daten werden über TCP/IP in Segmente zerteilt. In jedes Segment wird ein Header (PDU) ran gehangen. Dort steht vom Absender (Client) der Port in dem Fall ein dynamischer Port und der Port vom Ziel (LDAP-Server) in dem Fall 389. Die Verbindung (immer noch die Transportschicht) wird dann vom Client über ein Drei-Wege-Handshake (auch three-way handshake verfahren genannt) über ein Syn-Flag versucht aufzubauen. Ein erfolgreiche Bestätigung zum versuch eines Verbindungsaufbaus wird von Seitens des LDAP-Servers mit einem ACK-Flag bestätigt. Bei Verbindungsschluss sendet Client oder LDAP-Server ein Fin-Flag, dieser muss dann auch über ein ACK-Flag bestätigt werden. Als nächstes werden die Segmente zur Netzwerkschicht gesendet, wo sie in Paketen geteilt werden. Dort wird ein Header (PDU) ran gehangen. Dieser beinhaltet die Absender-IP-Adresse (Client) und die Ziel-IP-Adresse (LDAP-Server). Es werden dort noch mehr Informationen ran gehangen, aber das würde hier den Rahmen sprengen. Die Pakete werden dann an die Sicherungsschicht übergeben, wo sie nochmal in Frames unterteilt werden. Danach geht es zur Bitübertragungsschicht (in den meisten Fällen mittels Ethernet), wo sie mittels einer physikalischen Verbindung (Kabel: Cat 5, LWL, W-Lan, GPRS/UMTS) übertragen werden. und so weiter... Kann man, aber wofür? Wenn Du das Homeverzeichnis eh exportierst ist das irrelevant. Damit des Clients Homeverzeichnis exportiert werden kann, muss sich doch der Client erstmal authentifizieren mittels seines Public-Keys? Ansonsten melde ich mich (hacker) an als User xyz an und bekomme das Homeverzeichnis exportiert wo der Public-Key von User xyz ist. s.o. setz Dich doch erst einmal mit den Systemen richtig (!) auseinander, anstatt direkt mit Kanonen auf Spatzen zu schießen Ich glaube wir kommen hier zu nichts. :schlaf: Ich setze mich dann mal mit meinem Ausbilder am Montag zusammen. Trotzdem danke! Bearbeitet 23. Oktober 2009 von Godfather_d Zitieren
flashpixx Geschrieben 23. Oktober 2009 Geschrieben 23. Oktober 2009 Der User öffnet Bsp.: Phpmyadmin (Adminkonsole) gibt dort IP + Port des LDAP-Server ein. phpMyAdmin ? Wikipedia Was hat PHPMyAdmin mit LDAP zu tun? => nichts [...] und so weiter... Ich weiß durchaus wie Kommunikation anhand des OSI Referenz Modells abläuft, aber Du hast Dir die Mühe gemacht, Wikipedia hier zusammen zu fassen :upps Aber Du hast Dir nicht überlegt ob Deine Kommunikation zwischen Deinem LDAP Client und Server verschlüsselt ist. Damit des Clients Homeverzeichnis exportiert werden kann, muss sich doch der Client erstmal authentifizieren mittels seines Public-Keys? Du hast überhaupt nicht verstanden, wer sich wo authentifiziert und wer welche Verbindungen wohin aufbaut. Wenn Du Dich via SSH, sei es mit Passwort oder Schlüssel an einem Rechner authentifizierst, authentifizierst Du Dich genau an diesem Rechner. Ansonsten melde ich mich (hacker) an als User xyz an und bekomme das Homeverzeichnis exportiert wo der Public-Key von User xyz ist. Das nützt Dir recht wenig, innerhalb des Homeverzeichnis liegt zwar der Publickey, aber was nützt der Dir? Um Dich authentifizieren zu können, brauchst Du ebenfalls den Privatekey. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.