ich sehe schon ich muss noch viel lernen
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):
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:
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:
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?