ssh mit putty daten

flowbike

Mecklenburger Orangenapfel
Registriert
04.06.04
Beiträge
2.997
ich verzweifle an der ssh-Verbindung mit dem Terminal in OSX :(
ich habe hier putty unter Windows laufen und bekomme damit prima eins ssh-Verbindung hin. Damit wäre pkt 1 schon mal erledigt, an meinem Router liegt es nicht.

von putty habe ich eine datei mit endung .ppk -> müßte wohl die id_rsa sein
außerdem habe ich meine .pub hier. Ich habe beide dateien in user/.ssh kopiert und die ppk in id_rsa umbenannt sowie meine .pub in id_rsa.pub.

ein versuch des einloggens bringt mir folgende debug-meldung:
OpenSSH_4.5p1, OpenSSL 0.9.7l 28 Sep 2006
debug1: Reading configuration data /etc/ssh_config
debug2: ssh_connect: needpriv 0
ssh: http://IPdesservers:22: No address associated with nodename
weiter komme ich nicht :(
 

dahui

Carmeliter-Renette
Registriert
22.10.06
Beiträge
3.303
hey sven, nicht dass ich wirklich ahnung davon hätte

aber wenn ich mich z.b. auf meinen server bei HE einloggen möchte dann gebe ich einfach

ssh user@IPdesServers

im terminal ein, werde nach einem password gefragt und gut ist. ich habe von meiner xp kiste und dem putty nix übernommen :(
 

Skeeve

Pomme d'or
Registriert
26.10.05
Beiträge
3.120
Lege Dir mit ssh-keygen lieber neue keys an. Du solltest die nicht einfach von einem anderen System rüberkopieren. Ich weiß nichtmal, ob das überhaupt geht.
 

Hilarious

Gelbe Schleswiger Reinette
Registriert
10.08.05
Beiträge
1.759
Einen neuen Schlüssel anlegen:
Code:
ssh-keygen -t dsa
Anschließend nach Belieben einen Schlüsselsatz (»Passphrase«) hinzufügen oder diesen frei lassen. Der fertig generierte öffentliche Schlüssel wird dann auf das Zielsystem kopiert. Wenn Du bereits (mit einem anderen Schlüssel) Zugriff auf dieses Konto hast, kannst Du den öffentlichen Schlüssel besonders elegant von Deinem Mac auf das Zielsystem übertragen:
Code:
cat ~/.ssh/*.pub | ssh DEINBENUTZERNAME@ZIELHOST 'cat>>.ssh/authorized_keys'

Es können durchaus beide oder mehr Schlüssel zu einem Account hinterlegt werden, so dass Du von jedem Rechner aus Zugriff erhältst.
 

dahui

Carmeliter-Renette
Registriert
22.10.06
Beiträge
3.303
ich sehe schon ich muss noch viel lernen :innocent:

wenn ich es recht verstehe kann ich mir schüssel anlegen, diese auf dem mac und meinem server bei HE hinterlegen und spare mir dann die passwort eingabe da über die schlüssel authentifiziert wurde.

@hilarious: du hast nicht ne osx anleitung (link) und vieleicht auch noch was passendes um zu erfahren wie ich auf meinem kleinen v-server bei HE verfahren muss (suse) um auch in diesen genuss zu kommen?

fast schon peinlich aber 'man ssh' ist too much for me tonight ;)

jetzt checke ich auch warum winscp in verbindung mit putty mich mal fragte ob der schlüssel hinterlegt werden soll und ich mich dann aus winscp mit putty ohne paswort verbinden konnte, fast schon peinlich
 

flowbike

Mecklenburger Orangenapfel
Registriert
04.06.04
Beiträge
2.997
Einen neuen Schlüssel anlegen:
Code:
ssh-keygen -t dsa
Anschließend nach Belieben einen Schlüsselsatz (»Passphrase«) hinzufügen oder diesen frei lassen. Der fertig generierte öffentliche Schlüssel wird dann auf das Zielsystem kopiert. Wenn Du bereits (mit einem anderen Schlüssel) Zugriff auf dieses Konto hast, kannst Du den öffentlichen Schlüssel besonders elegant von Deinem Mac auf das Zielsystem übertragen:
Code:
cat ~/.ssh/*.pub | ssh DEINBENUTZERNAME@ZIELHOST 'cat>>.ssh/authorized_keys'

Es können durchaus beide oder mehr Schlüssel zu einem Account hinterlegt werden, so dass Du von jedem Rechner aus Zugriff erhältst.
Danke Hilarious für die schnelle Antwort,
aber das Problem ist , daß ich keinen neuen Schlüssel auf das entfernte System legen kann. Das ist eine Firmen-Firewall, die von einem externen Dienstleister administriert wird. Ich habe also meine Schlüssel hier und mit denen muß ich auskommen. Der Schlüssel ist übrigens ein RSA mit aes 256 -cbc encryption.
 

mfkne

Weisser Rosenapfel
Registriert
03.04.06
Beiträge
776
Äh, was macht denn bitte "http://" in einer SSH-Verbindungsanfrage?
 

Hilarious

Gelbe Schleswiger Reinette
Registriert
10.08.05
Beiträge
1.759
ich sehe schon ich muss noch viel lernen :innocent:

wenn ich es recht verstehe kann ich mir schüssel anlegen, diese auf dem mac und meinem server bei HE hinterlegen und spare mir dann die passwort eingabe da über die schlüssel authentifiziert wurde.

@hilarious: du hast nicht ne osx anleitung (link) und vieleicht auch noch was passendes um zu erfahren wie ich auf meinem kleinen v-server bei HE verfahren muss (suse) um auch in diesen genuss zu kommen?

fast schon peinlich aber 'man ssh' ist too much for me tonight ;)

jetzt checke ich auch warum winscp in verbindung mit putty mich mal fragte ob der schlüssel hinterlegt werden soll und ich mich dann aus winscp mit putty ohne paswort verbinden konnte, fast schon peinlich

Hi dahui,

eine Anleitung für OS X habe ich gerade nicht, aber es ist seeehr einfach ;) Wenn Du bei HE einen VPS hast (SuSE + Plesk?), musst Du dem Account den SSH-Zugriff zunächst über die Virtuozzo+Plesk-Administration erlauben, denn nicht jeder Benutzer darf per SSH auf einen Server zugreifen, denn das beinhaltet, vereinfacht gesagt, ja auch den Zugriff per Terminal (»Shell-Zugriff«).

Ist das erledigt, solltest Du Dich (noch einmal) per Passwort an Deinem Server anmelden. Dazu öffnest Du (wie gewohnt) ein Terminal (in Dienstprogramme):
Code:

Passwort eingeben und schon bist Du drin. Vermutlich wirst Du Dich mit dem Benutzer »root« statt »dahui« anmelden, was ja (leider) bei den SuSE-Plesk-VPS-Nodes so vorgegeben ist.

Jetzt musst Du ein Verzeichnis anlegen, in dem eine Datei gespeichert wird, die dann alle öffentlichen Schlüssel der Rechner enthält, die auf dieses Konto zugreifen können sollen (das können mehrere sein). Bitte den führenden Punkt beachten:
Code:
mkdir ~/.ssh

Darin wird nun eine Datei angelegt, die bei Standardinstallationen (so auch bei Deinem SuSE) »authorized_keys« heißen muss:
Code:
cd ~/.ssh
touch ./authorized_keys

Jetzt müssen noch die Zugriffsrechte auf den Benutzer (und nur diesen) beschränkt werden. Dazu prüfst Du nun Benutzer und Gruppe der Datei:
Code:
ls -lsia ./authorized_keys

Hier müsste nun bei der SuSE-Plesk-Kiste »root root« stehen (bei anderen steht da auch etwas anderes).

Zuletzt gilt es noch, die Zugriffsrechte einzustellen:
Code:
cd ../
chmod -R 700 ./.ssh

Soweit so gut. Jetzt kannst Du ein zweites Terminal-Fenster auf Deinem Mac öffnen (Apfel-N) und Deinen öffentlichen Schlüssel auf das Zielsystem kopieren. Dabei ist es in aller Regel egal, ob es sich um einen RSA oder einen DSA-Schlüssel handelt. (Der DSA-Schlüssel gilt im Allgemeinen als ein bisschen sicherer. Wenn Du also statt einem RSA- einen DSA-Schlüssel haben willst generier' Dir einfach einen. Wie das geht, steht oben.)

Jetzt kannst Du mit dem obenen genannten, längeren Befehl Deine(n) öffentlichen Schlüssel auf das Zielsystem kopieren. Natürlich geht das auch Schritt für Schritt:

Möglichkeit A: Du öffnest die Datei id_dsa.pub, die Du auf Deinem Mac im (für den Finder unsichtbaren) Ordner ~/.ssh findest im Terminal mit pico, nano, vi, emacs oder im Finder mit Text-Wrangler, TextMate, BBEdit, oder zur Not auf mit TextEdit. Jetzt den ganzen Abschnitt in die Zwischenablage kopieren. Via Terminal nun mit dem Server verbinden und dort die (bereits angelegte) Datei ~/.ssh/authorized_keys öffnen (wieder mit pico/nano, vi, emacs oder was auch immer) und die Zwischenablage dort einfügen. Dabei gilt, ein Schlüssel in einer Zeile. Ein Schlüssel, der über mehrere Zeilen geht, ist doof (pico/nano bricht automatisch um, was man per Hand wieder korrigieren muss).

Möglichkeit B: Da du ja bereits Dich mit dem Server per FTP oder sFTP (eine SSH-Verbindung) verbinden kannst, nimmst Du zum Bespiel das Programm Transmit und einen Text-Editor wie TextWrangler, verbindest Dich mit den Ordner ~/.ssh (in dahuis Falle /root/.ssh) und öffnest die (bereits angelegte) Datei authorized_keys mit einem Doppelklick in dem Texteditor, also sozusagen per Fernsteueung und schreibst Den Text Deines öffentlichen Schlüssel da hinein. Auch hier gilt: Ein Schlüssel, eine Zeile.

Möglichkeit C: Du kopierst mit deinem FTP- oder SFTP-Programm die Datei id_dsa.pub (oder id_rsa.pub) von Deinem Rechner (aus dem Ordner ~/.ssh) auf den Server, wenn's geht schon in das richtige Verzeichnis, welches auch dort auf den Namen ».ssh« hören müsste. Jetzt verbindest Du Dich per Terminal und verschmelzt Deine Schlüssel-Textdatei mit der Datei »authorized-keys« per Anhängen:
cat id_dsa.pub >> ~/.ssh/authorized_keys

Welchen Weg Du nimmst, sollte egal sein, denn jetzt solltest Du, sofern der SSH-Server in der Ferne das zulässt, Dich auch ohne die Eingabe des Benutzerpasswortes am entfernten Server anmelden können:
Code:

Wenn Du Deinem Schlüssel eine »Passphrase« verpasst hast, wirst Du allerdings diese jetzt jedesmal eingeben müssen (auch dafür gibt es Automatismen, aber das würde zu weit führen). Hast Du keine Passphrase festgelegt, bist Du jetzt (wenn wir alles richtig gemacht haben) ganz plötzlich »drin«.

Wenn Du gar keine Zugriffsmöglichkeit auf den Server außer über den Austausch von Schlüsselinformationen hast, kannst Du Dir den Schlüssel erzeugen, diese Text-Datei irgendwie auf den PC (den mit PuTTy) kopieren, und von diesem aus den Schlüssel hochladen und »einbauen« (wie oben beschrieben).

Oder eben dem Admin geben, damit er's einbaut.

Alle Klarheiten beseitigt? :D
 
Zuletzt bearbeitet:
  • Like
Reaktionen: Skeeve und xgx7

Hilarious

Gelbe Schleswiger Reinette
Registriert
10.08.05
Beiträge
1.759
Danke Hilarious für die schnelle Antwort,
aber das Problem ist , daß ich keinen neuen Schlüssel auf das entfernte System legen kann. Das ist eine Firmen-Firewall, die von einem externen Dienstleister administriert wird. Ich habe also meine Schlüssel hier und mit denen muß ich auskommen. Der Schlüssel ist übrigens ein RSA mit aes 256 -cbc encryption.

Für Dich habe ich im obigen Beitrag noch den letzten Absatz dran gehängt. Vielleicht geht's ja über obigen »Umweg«.

Oder, und das wäre etwas verrückt aber möglich, Du baust eine SSH-Verbindung zu Deinem PC auf, und forderst diesen auf, einen SSH-Verbindung zu dem Server herzustellen. Dabei verwendest Du den PC als so genannten Tunnel-Host, um einen SSH-Tunnel aufzubauen. Dazu müsste der PC natürlich einen SSH-Dienst zu Verfügung stellen (da kenne ich mich bei Windows allerdings nicht aus). Der Tunnel-Befehl könnte so aussehen:
Code:
ssh -f -N -L 2211:weitweitweg.server:22 [email protected]

Anschließend, wenn der Tunnel aufgebaut ist, verbindest Du Dich mit Deinem Alter-Tunnel-Ego:
Code:
ssh flowbike_auf_dem_server@localhost:2211

Ich gebe zu, dass das alles sehr knifflig aussieht. Wenn Euch (flowbike, dahui) das zuviel ist, können wir ja eine iChat-Session draus machen.
 
Zuletzt bearbeitet:

dusty1000

Weißer Trierer Weinapfel
Registriert
22.09.06
Beiträge
1.508
@flowbike:
Keine Ahnung, ob du der Lösung näher gekommen bist, aber falls nichts mehr hilft, versuch doch mal putty unter OSX zu benutzen. Ich verwende das auch fast immer, da es echt komfortabel ist und man viele Dinge schnell konfigurieren kann. Leider muss man es für OS X selber kompilieren und es läuft vernünftig nur mit X11, aber eine native Version ist in der Mache.
 

Hilarious

Gelbe Schleswiger Reinette
Registriert
10.08.05
Beiträge
1.759
@flowbike:
Keine Ahnung, ob du der Lösung näher gekommen bist, aber falls nichts mehr hilft, versuch doch mal putty unter OSX zu benutzen. Ich verwende das auch fast immer, da es echt komfortabel ist und man viele Dinge schnell konfigurieren kann. Leider muss man es für OS X selber kompilieren und es läuft vernünftig nur mit X11, aber eine native Version ist in der Mache.

Nur die GUI wird das Schlüsselproblem nicht heilen ;)
 

dusty1000

Weißer Trierer Weinapfel
Registriert
22.09.06
Beiträge
1.508
Nur die GUI wird das Schlüsselproblem nicht heilen ;)

Putty ist (in diesem Falle leider) nicht nur eine GUI, sondern ein eigener ssh Client. Das Problem ist einfach, dass der private Schlüssel als .ppk Datei vorliegt. Dies ist ein Putty-eigenes Format. Wenn er keinen anderen Schlüssel auf den Server exportieren kann, wird er also diese .ppk nutzen müssen. Ich denke, dass Putty unter allen Betriebssystemen kompatibel sein wird. Also müsste er mit seinen Dateien auch über den Mac Zugriff erhalten, denn rechnerabhängig sind Schlüsseldateien im Allgemeinen nicht.
 

flowbike

Mecklenburger Orangenapfel
Registriert
04.06.04
Beiträge
2.997
Nur die GUI wird das Schlüsselproblem nicht heilen ;)
keine Ahnung, ich bin mir auch gar nicht sicher, ob es wirklich ein Problem des Schlüssels ist.
ich habe das ganze schon vor längerer Zeit mal probiert gehabt und bin wesentlich weiter gekommen als jetzt und scheiterte erst ganz am Schluß (woran weiß ich nicht mehr).
Die Ausgabe
No address associated with nodename
deutet für mich auf ein anderes Problem hin.
An die Variante mit dem PC als Tunnel hab ich auch schon gedacht, nur macht daß für mich keinen Sinn. Der Pc läuft nämlich auf meinem Mac ;)
Der Grundgedanke war eben der, nativ unter OSX den ssh tunnel zu öffnen. Wenn ich jetzt nur um die Verbindung hin zu bekommen, die Vm laufen lassen muß, kann ich den Rest auch gleich darin machen. Verwendet putty tatsächlich ein eigenes Format für die Schlüssel?
 

dusty1000

Weißer Trierer Weinapfel
Registriert
22.09.06
Beiträge
1.508
Ja, Putty verwendet ein eigenes Format für den privaten Schlüssel. Auf der Seite von Putty gibt es ein Programm namens 'Puttygen', das diese Schlüssel erzeugen und umwandeln kann. Meines Wissens nach kann man damit auch die .ppk Dateien in ein OpenSSH Keyfile umwandeln.

Gruß,

Daniel
 
  • Like
Reaktionen: flowbike

flowbike

Mecklenburger Orangenapfel
Registriert
04.06.04
Beiträge
2.997
habe jetzt mal mit puttygen meine .ppk datei in einen openssh ungewandelt, Hat nüscht gebracht :(
muß ich bei der Verbindung angeben, daß er diesen schlüsseln verwenden soll, oder macht ssh das von selber ?
 

dahui

Carmeliter-Renette
Registriert
22.10.06
Beiträge
3.303
@Hilarious

Sorry für die späte Meldung und merci vielmal für Deinen (as usual very valuable) input.

Bin grade etwas im Stress und muss noch eine Dropdown-Flyout Navigation bis Montag in einem CMS umsetzen, Crossbrowser und ohne JS. Viel Gefrickel :(

Sobald ich Luft habe werde ich mich nochmal dranmachen und bei Misserfolg würde ich mich gerne bei Dir melden dürfen für die eventuelle iChat session ;)

greetz dahui