SSH-Key vs. Schlüsselbund

Atchi

Registriert
Thread Starter
Dabei seit
13.12.2011
Beiträge
3
Reaktionspunkte
0
Hallo MacUser,

ich bin neu in der Welt der Macs, habe aber ein paar Erfahrungen mit Linux. Leider bin ich jetzt auf ein Problem gestoßen, das mich en wenig nervt.

Zur Situation:
Ich logge mich von meinem Mac aus auf diverse Linuxmaschinen ein um dort Rechnungen zu starten. Dazu habe ich bisher immer mein Passwort eingegeben und war damit zufrieden. Nun habe ich mir aber ein paar Shell-Skripte geschrieben, um vom Mac aus die Maschinen zu steuern. Daher sind in den Skripten einige ssh- und scp-Befehle drin.
Hier nun jedes mal das Passwort einzugeben ist nervig und zeitraubend. Daher habe ich mir ein ssh-Schlüssel mit Passwort generiert. Die Idee dabei war, dass ich zu Anfang vom Skript mit > eval `ssh-agent`;ssh-add < mir das Passwort für den ssh-Schlüssel merke, damit nur noch einmal das Passwort eingeben muss und wenn das Skript fertig ist, das ssh-Passwort vergessen wird.

Zum Problem:
Nun stellt sich leider Heraus, dass MacOSX leider ein wenig schlauer ist, als mir lieb ist. Sobald ich mich jetzt mit ssh auf dem anderen Rechner anmelde, öffnet sich ein Fenster der Schlüsselbundverwaltung und fragt nach dem ssh-Passwort. Gebe ich das ein, bin ich auf der Maschine. Logge ich mich aus und noch mal an, werde ich aber nicht noch einmal nach dem Passwort gefragt, sondern es ist leider irgendwo im Schlüsselbund gespeichert. Dort liegt es nun so lange bis ich den Mac neu starte. Das ist aber ein erhebliches Sicherheitsrisiko, welches ich nicht haben möchte.

Zur Frage:
Wie kann ich verhindern, dass das Schlüsselbund das ssh-Passwort "temporär" speichert? Ich hätte es gerne, dass das Terminal nicht mit dem Schlüsselbund kommuniziert, oder nur dann, wenn ich es will.

Danke an alle Helfer.

Gruß Atchi
 
warum hast du den dann erst dem schlüsselbund zugefügt? lösch den einfach und leg das keyfile normal im .ssh verzeichnis ab...
dann fragt dich ssh nur nach dem passwort, wenn du den key benutzt...
 
genau da habe ich es erstellt. ich habe das Schlüsselbund nie aktiviert. Es startet sobald ich im Terminal eine ssh-Verbindung aufbauen möchte.
 
eben das hast du doch mit ssh-agent getan ;)
 
ok

1. den agent habe ich noch nicht ausgeführt, sondern hatte es geplant. Folgendes habe ich bisher getan:
ssh-Key erzeugt und den public-key in authorised-key abgelegt
danach mittels ssh auf den server eingeloggt
=> Folge: im Terminal kam NICHT die frage nach dem ssh-Passwort, sondern es hat sich ein Fenster geöffnet, in dem nach dem Passwort gefragt wurde. Dort gab es zwar einen Haken für "im Schlüsselbund merken", den habe ich aber nicht gesetzt, weil ich das ja gerade nicht haben wollte. Nachdem ich nun das PW eingegeben habe, wurde ich mit dem Server verbunden. Anschließend ausgeloggt. Beim wiederanmelden mittels ssh wurde diesmal nicht nach dem PW gefragt, sondern es war (so vermute ich) irgendwo im Schlüsselbund gespeichert. Das konnte ich lediglich mit einem Neustart ändern.

2. Frage zum ssh-agent
Ich hatte gedacht, dass der ssh-agent nur für die Shell (und die daraus aufgerufenen Programme) gilt, und nicht für alle. Daher war meine Idee, dass ich in einem Shell-Skript den ssh-agent nutzen kann, ohne das das PW nach Beendigung des Skriptes noch bekannt ist.
 
Ich glaube mich wage daran erinnern zu können, dass unter Linux damals ein Timeout gesetzt werden kann und das sudo-Passwort z. B. nur alle 15 Minuten neu eingegeben werden musste und nicht mehr bei jedem einzelnen Aufruf.

Vielleicht ist es mit SSH-Verbindungen ähnlich und sämtliche Logindaten werden mit einem Zeitstempel versehen und laufen dann ab, ohne dass sie in der Keychain abgelegt werden.

Ein Blick in die Keychain würde hier Klarheit verschaffen. Da sieht man ja, ob die Credentials abgelegt wurden oder nicht.
 
Zurück
Oben Unten