Wie ssh-Anmeldung ohne Passworteingabe?

Q

querschlaeger

Foren As
Hallo,

ich möchte mich auf einen Server per ssh einloggen.

der Befehl lautet wie folgt: ssh -l Benutzer 123.456.789.1
Dann kommt die Abfrage nach dem Passwort.

Da ich den Befehl gern in einen Script verwenden möchte (um mich automatisch anzumelden), ist die Passwortabfrage sehr hinterlich.

Eins vorweg: Ich habe keine Rechte auf dem Server, aber ich benötige die Anmeldung für weitere Dienste. Also kann ich auch kein Key-Paar erzeugen (um einen Teil auf den Server zu übertragen, zwecks Anmeldung ohne Passwort).

Ich muss das lokal lösen.

Hat denn ssh keinen (undokumentierten) Parameter zur Passwortübergabe. PUTTY für Windows hat ja z.B. den Parameter um das Passwort gleich mit den ssh-Befehl anzugeben, aber unter Linux funzt der Paramter " -p Passwort" anders.

Wie kann ich das realisieren.

P.S.: Das Passwort kann auch ruhig in einer Datei gespeichert sein.
 
Das Zauberwort wäre "Public Key Authentifizierung" ... dann brauchste auch kein PW ...

Anleitung z.B. hier
 
Äh ... wenn Du auf dem Server _nix_ darfst, also auch nichtmal in Deinem Home eine Datei ändern ... was willst Du dann dort??
 
Hm, okay ich erklärs:

Ich muss mich dort auf dem Rechner einloggen um ins Internet zu kommen (so hat das nunmal mein Provider realisiert). Solange die SSH(2)-Verbindung besteht kann ich im Im Netz tun und lassen was ich will, aber wenn die Verbindung nicht besteht, komme ich auch nicht ins Internet (nur ins lokale Netz des Providers).

Das einzige was ich darf, ist mich auf den Server einloggen, mehr darf ich nicht. Da funktinoiert einfach garnicht (nichtmal directory-listing).

Ich will einfach die SSH-Verbindung auf meinen (fli4l-)Router automatisieren, damit sie nach jeden Start automatisch geöffnet wird (und für immer offen gehalten wird, solange der Router an ist).

Von mir aus kann das Passwort ruhig in einer Datei stehen, und das der Dateiinhalt soll dann als Antwort auf die Passwortabfrage genommen werden. Aber wie mache ich das? bzw. andere Vorschläge?

Danke schonmal :)
 
Hmm, müsste doch via Ein/Ausgabeumlenkung gehen, in etwa

Code:
ssh $USER@$HOST < $PWD_FILE
 
Cyber schrieb:
Hmm, müsste doch via Ein/Ausgabeumlenkung gehen, in etwa

Code:
ssh $USER@$HOST < $PWD_FILE
Hm, da erscheint dann:

Code:
Pseudo-terminal will not be allocated because stdin is not a terminal.

Und dann kommt die ganz normale Frage nach dem Passwort... :(

Als Shell benutze ich Bash. Unter fli4l gibts glaube ich auch keine andere Auswahl an anderen Shells.

Mal so gefragt: Weiß jemand wo es die Binary des aktuellen PUTTY für Linux gibt? Die könnte ich ja nehmen, weil es dort ja den Parameter zur Passwortübergabe gibt.
 
Expect sollte gehen. In etwa wie folgt (ungeprüft):

Code:
#!/usr/bin/expect

spawn ssh -l user 123.456.789.0
expect "ogin: " {send "user\r" }
expect "word: " {send "passw\r" }
 
Hallo nochmal :)

Aaaalso, leider habe ich weder spawn, noch expect auf dem Rechner... Da es sich um fli4l handelt, sind die Befehle leider etwas eingeschränkt...

Und der Parameter -t bzw. -tt funzt leider nicht... (hat keine Auswirkung)

Okay, ich danke euch erstmal für eurer Kopfzerbrechen. Gehe jetzt erstmal ins WE, vielleicht hab ich am Montag ne neue Idee. :)
 
Hallo,

ein erfreuliche Meldung: es funzt endlich! :)

Aber bis ich rausfand wie, wars echt haarig...

Aaalso, so hab ich gemacht:

Mir die Sourcen von http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html (natürlich für Linux ;) ) geladen und versucht ne binary zu erzeugen, die ich auf den Router kopieren kann. Das hat leider nicht so auf Anhieb gefunzt, wegen Unstimmigkeiten zwecks gtk. Aber immerhin ist nen plink-binary entstanden, welches auch funktionierte.

So, und jetzt kommts: Der Parameter -pw funktioniert nicht! Soblad ich ihn angeben erscheint nur "FATAL ERROR: Unable to authenticate" beim Login - ohne den Parameter gehts aber problemlos...

Naja, somit war der PuTTY-Vorteil hin, den ich von Windows kenne.

Aber es gab noch einen Weg:

ssh $USER@$HOST < $PWD_FILE funktionierte ja nicht (auch mit undokumentierten Parametern -t und -tt, derren Bedeutung ich bis heute nicht rausgefunden habe), aber plink $USER@$HOST < $PWD_FILE klappt wunderbar!!!

@Moritz:

Danke für den Link (ganz praktisch das Tool), aber leider hab ich der Doku nicht entnehmen können, wie man ein Passwort an ssh übergeben kann.

Ich bedank mich bei allen, für ihre Regen Vorschläge :)
 

Ähnliche Themen

SSH Login via Shell Script?

Server's Power

SSH Anmeldung mit ADS Usern

per ssh auf einem anderen Rechner einen Publickey generieren

passwortlose Anmeldung über ssh ohne keys

Zurück
Oben