PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : login mit ssh ohne keygen mit skript...wie?



stevennuernberg
19.11.03, 09:39
hi

habe einen rechner mit einem script, welches ich über eine bestimmte datei laufen lassen will, die sich auf einem remote server befindet, von dem ich benutzername und passwort besitze.

jetzt lese ich schon stunden herum und finde nur lösungen, die mit einem keygen zu tun haben, jedoch darf ich an dem server nichts verändert werden?!

es wäre auch kein problem wenn, irgendwie nach dem passwort gefragt wird oder so... auf jeden Fall darf ich an dem server nix verändern und muss dasscript vom client aus laufen lassen


bitte um hilfe... des wird doch irgendwie mit einem ssh blabla -passwort -user möglich sein? irgendwie? oder?

bitte hILFE, mööööönsch!!


danke jetzt schonmal


greetz euer steven :ugly:

[WCM]Manx
19.11.03, 10:11
Hi!

Welches Script? Perl?
Wenn ja => net-ssh-perl
http://search.cpan.org/~drolsky/Net-SSH-Perl-1.24/lib/Net/SSH/Perl.pm

... für Debian heißt das Modul "libnet-ssh-perl"

Manx

stevennuernberg
19.11.03, 10:13
programmier im vi auf einer HP unix maschine

danke für jede hilfe

Bauchi
19.11.03, 10:14
machs mit dem key... du musst auf dem server NICHTS verändern .. jedenfalls nicht viel ... du musst lediglich deinen public key auf den server schaufeln die bastelei hast du eh auf dem client ...

stevennuernberg
19.11.03, 10:19
hi,

könntet ihr mir bitte den genauen befehl geben, oder zumindest so genau wie möglich, weil ich ehrlich gesagt fast keine ahnung hab und somit mit den oarametern wenig anzufangen weiss..

habe benutzername und pwd und bräucht nur die einlog-zeile für das script


danke

pibi
19.11.03, 13:44
Original geschrieben von stevennuernberg
auf jeden Fall darf ich an dem server nix verändern und muss dasscript vom client aus laufen lassenWie soll ich das verstehen? Was genau willst Du wo ausfuehren? Ein Script kann nicht auf Deinem Client laufen und Befehle auf einer entfernten Maschine ausfuehren.

Wie bereits gesagt wurde, ist es am Einfachsten, wenn Du auf der Remote-Maschine dem File ~/.ssh/authorized_keys2 Deinen Public-SSH-Key zufuegst. Der private Key gehoert in das entspr. Directory auf Deinem Client.

Ein simples "ssh remotename" oeffnet dann ab sofort ohne jegliche Passwortnachfrage eine SHH-Session. Wenn Du dann dort ein Programm/Script ausfuehren willst, kopierst Du dieses Script einfach vorher mit "scp sourcename destinationname" auf den Remote (ebenfalls ohne Passwort, als Destination empfiehlt sich zB. /tmp, oeffnest die SSH-Session, rufst das Script auf, loeschst das Script wieder und schliesst die Session. So bleiben nur minimale Spuren zurueck;-)

Gruss Pit.

stevennuernberg
19.11.03, 14:41
also nochma:

ich will ein skript von meinem local pc ausführen, welches sich eine datei von einem server holt, sich von dieser datei eine zeile rausholt und diese sortiert und in eine neue datei bei mir auf dem lokalen rechner schriebt...

kein großes ding, nur dass ich eine datei von dem server benötige. das script ist auf meinem rechner und soll da auch bleiben

hilfe?!?!?


steven

elrond
19.11.03, 15:03
du hast dazu eine Antwort auf mrunix...

crossposting :mad:

stevennuernberg
20.11.03, 16:06
hab jetzt beinhahe die lösung!!!

habe mir in mein home verzeichnis die datei ".netrc" erstellt, in diese ich folgende angaben geschrieben hab:

machine hostname
login steven
password verratichnet

dann nur noch eine macro definition:

macdef upload
cd /enfinity0/.../emails/$1
quit


achtung! danch eine zeile frei!!!#


jetzt müsste er sich automatisch einloggen und eine datei holen, wobei ich nach emails/ einen parameter gesetzt habe bei dem ich das heutige datum etwa so aussehend will:

20031120

nur wie geh ich jetzt weiterhin vor, hab grad was gelesen:

echo "\$ upload `date '+%Y%m%e'`" | ftp hostname

kann das stimmen, konnte es leider noch nicht ausprobieren???


greetz euer steven


hoffe, manchen von euch auch noch einige anregungen gegeben zu haben
ganz ohne genkey!!! :cool:

Bauchi
20.11.03, 16:21
du bist ein held ...
warum machst du nicht gleich ne telnet session und editierst direkt auf dem server rum ..

ssh hat den sinn das man die kommunikation verschlüsselt und keiner mitbekommt was du so als passwort und usernamen hast ...

stevennuernberg
21.11.03, 08:52
hi

du bist auch ein held, dann sag mir wie ichs besser machen kann ohne irgendetwas auf dem remote zu verändern???

so gehts doch... und ausserdem hat niemand mein password, weil des script is in meinem ordner und da kommt keiner hin. also bekommt niemand des password, oder? und die .netrc ist ja auch in meinem home verzeichnis, weil da steht ja des password drin..

greetz steven


PS: Falls jdm. ne bessere lösung wie ich hat, also ohne genkey, bitte posten...
danke :D

elrond
21.11.03, 09:31
Original geschrieben von stevennuernberg

...und ausserdem hat niemand mein password, weil des script is in meinem ordner und da kommt keiner hin. also bekommt niemand des password, oder?...

weit gefehlt lieber steven,

wenn du das protokoll ftp benutzt übermittels du Username und Password in Klartext durch ein mehr oder weniger sichers netzwerk. Das sollte Dir bei der Benutzung von ftp klar sein.

Wenn du aber dennoch ftp benutzen willst, habe ich einen vorschlag für dich der, falls du mit "script" perl meinen solltest, benutzbar ist:


use Net::FTP;

my $ifile="remote_datei.dat";
my $ftp_server="ftp.remoteserver.de";
my $ftp_user="ftpuser";
my $ftp_passwd="ftppasswd";
my $ftp = Net::FTP->new($ftp_server,Debug=> 0) or warn "Kein Connect: $@\n";
$ftp->login($ftp_user, $ftp_passwd) or warn "Kein Login möglich $!\n";
$ftp->get($ifile);
$ftp->quit();



damit hast du die Datei auf deinem lokalen System und kannst weitermachen.

aber wie gesagt, wenn auf dem remote-Server ein sshd läuft, macht es sinn die ssh-mechanismen zu nutzen.;)