• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Was gibt es Schöneres als den Mai draußen in der Natur mit allen Sinnen zu genießen? Lasst uns teilhaben an Euren Erlebnissen und macht mit beim Thema des Monats Da blüht uns was! ---> Klick

ssh tunnel + port forwarding, key probleme

web

Gast
Hi,
ich greife auf meinem XP Rechner (freeSSHd) mit meinem MacBook mittels SSH u. port forwarding zu um dann local den vnc an zu werfen.
Bei der ganzen Geschichte habe ich mich hieran http://www.rpg-domain.de/VNC/index.htm gehalten und es klappt auch. Nachdem im Log ne schöne Brutforce attacke zu sehen war, wollte ich das ganze mit Schlüsseln versehen (siehe Kapitel 9) und da kam das erste Problem auf:

Ich habe nach 9.3.3. die Schlüssel erzeugt und mit passwort versehen. Will ich mit dem Mac connecten fragt er mich nach dem Passwort der private key datei, leider nimmt er dieses nicht an. Lasse ich das passwort bei der Generation mit putty weg, meckert er ebenfalls:
Permission denied (publickey).

Aber der public key liegt ja seelenruhig auf dem xp rechner im Verzeichnis ssh_authorized_keys, welches im Programm als Pfad angegeben ist. oder brauch ich jenes ebenfalls noch auf dem Mac...zusätzlich zum private key?

private key hat von mir chmod 600 bekommen und meine zeile sieht etwa so aus:
ssh -fNL 50001:127.0.0.1:5900 [email protected] -i key.ppk

worauf folgt:

Permission denied (publickey)


jemand ne idee?
 

quarx

Brauner Matapfel
Registriert
17.04.05
Beiträge
8.444
ich greife auf meinem XP Rechner (freeSSHd) mit meinem MacBook mittels SSH u. port forwarding zu um dann local den vnc an zu werfen.
Irgendwie komm ich mit Deinen vielen Dativs nicht klar. Von welchem Rechner aus willst Du Dich auf welchen Rechner mit ssh einloggen? Vom Mac auf den PC oder umgekehrt? Wenn Du Dich vom Rechner A aus auf dem Rechner B einloggen willst, musst Du auf dem Rechner A das Schlüsselpaar erzeugen und den öffentlichen Key nach B kopieren. Denn beim Einloggen von A auf B geschieht dann folgende Authentifizierung: Rechner B verschlüsselt mit A's öffentlichem Schlüssel ein Geheimnis, das nur A mit seinem Privatschlüssel wieder knacken kann, so seine Identität belegt und Einlass gewährt bekommt.
 

web

Gast
von mac auf pc.wo ich das schlüsselpaar erzeuge spielt keine rolle.
b stellt den server dar (also windows xp) und hat den public key, ich, rechner a (mac) habe den private key. soweit hast du das prinzip gut erkannt. danke.
 

dusty1000

Weißer Trierer Weinapfel
Registriert
22.09.06
Beiträge
1.508
Ich würde mal sagen, schenke dir den Umweg mit Putty und erzeuge das Keypair direkt auf dem Mac. Das geht ganz einfach, indem du im Terminal des Mac "ssh-keygen" eintippst. Dadurch wird im Ordner .ssh (Achtung, normalerweise unsichtbar) ein Keypair erzeugt. Die Datei id_rsa.pub (oder ähnlich, falls du ssh-keygen eine andere Verschlüsselungsart per Kommandozeile übergibst ) kannst du dann einfach auf den Win-Rechner kopieren und entsprechend umbenennen. Das Copy/Paste in Textdatei entfällt dann, da der Mac bereits das OpenSSH Format verwendet. Vielleicht liegt es aber auch nur an der Windows-Sicherheitslücke, dass der Explorer bei bekannten Dateitypen normalerweise die Endung nicht anzeigt. Da kann man ein .txt zuviel schon mal übersehen. Die Angabe des PrivateKey im ssh Befehl kannst du dir übrigens sparen, wenn du das Keypair auf diese Weise erstellst, das findet ssh dann automatisch. Ich kann mir allerdings auch kaum vorstellen, dass ssh mit einem private Key im .ppk Format umgehen kann (.ppk -> PUTTY PRIVATE KEY, das ist ein propritäres Dateiformat)
 

web

Gast
Ok danke erstmal. habe es auf dem Mac erzeugt und den public key rüberkopert. gleiches ergebnis. da gibts doch gar nicht...mist

Permission denied (publickey)

Der Pfad, wo der liegt ist in freeSHHd angegeben. key.pub, hab ihn sogar einmal nach dem namen des login benannt (ohne dateiendung) so wie es in dieser komischen aleitung (s. oben) steht.

irgendwas ist faul...

ok frage: in freeSSH ist ein benutzer angelegt, muss der name in irgend einer weise in verbindung zum keya stehen? weil zb am ende des public key jetzt der name von meinem mac benutzer steht, welches ein völlig anderer ist...
 

dusty1000

Weißer Trierer Weinapfel
Registriert
22.09.06
Beiträge
1.508
Kenn mich mit jetzt mit diesem Win-tool nicht so aus, aber bei ssh muss der pub-key unter dem account liegen, den du mit Loginname@server aufrufst. Ich denke also, dass die Keydatei genau den Namen haben muss, also "Loginname" ohne irgendwelche Zusätze. Was in der Datei selber für ein Name steht ist dabei nicht so relevant.
 

dusty1000

Weißer Trierer Weinapfel
Registriert
22.09.06
Beiträge
1.508
Am Ende des Inhalts der Pubkey Datei steht ja immer ein "= username" Ändere da mal den Namen so ab, dass er dem Loginnamen für freeSSHd entspricht (auch ein eventuelles "@maschine" entfernen ). Es kann gut sein, dass es sonst nicht funktioniert, da Windows da ja eine komplett andere Art der Benutzerverwaltung hat.
 

web

Gast
Die datei heisst = Loginname. Das abändern des Namen im public key hat auch nichts gebracht, immer noch:
Permission denied (publickey)

geb ich nen anderen leeren Pfad in SSHd an oder lösche den public key da weg, kommt genau dasgleiche...scheinbar findet er die datei gar nicht erst oder so...ka mehr :(
 

quarx

Brauner Matapfel
Registriert
17.04.05
Beiträge
8.444
Nach dieser Anleitung hier sollte es reichen, den auf dem Mac erzeugen öffentlichen Schlüssel (z.B. id_rsa.pub) nach
Code:
C:\Program Files\freeSSHd\ssh_authorized_keys\Benutzername
Vielleicht hilft das Tutorial generell weiter.
 

Irgendein Held

Oberösterreichischer Brünerling
Registriert
17.06.07
Beiträge
714
Selbes Problem hatte ich zunächst mit meiner Linux SSH auch.
Der Parameter -l root hat geholfen...
Mehr gibts via man ssh
 

Irgendein Held

Oberösterreichischer Brünerling
Registriert
17.06.07
Beiträge
714
Bei dem Server im RZ mach ich das.. Bequemlichkeit. Zu holen gibts da eh nichts ;)