Gå til innhold

Anbefalte innlegg

Jeg har en tjeneste som kjører på en linux-server. Denne tjenesten genererer en logg, og jeg har behov for å analysere innholdet i denne loggen. Dette må gjøres i tre trinn: 1) nedlasting av logg, 2) parsing av loggfil lokalt, 3) presentasjon av rapport. Jeg har ikke mulighet til å administrere serveren, så jeg kan ikke bruke FTP, telnet eller noe web-basert opplegg. Den eneste kommunikasjonsformen jeg har mulighet til å bruke er SSH.

 

Del 2 og 3 går greit, men del 1 vet jeg ikke helt hvordan jeg skal angripe. Jeg trenger altså å lage et program som lar meg angi innloggingsinformasjon og navn på loggfilen, og som deretter logger inn via SSH og laster ned filen slik at jeg kan lese den lokalt.

 

Hvordan kan jeg gjøre dette i C#?

Lenke til kommentar
Videoannonse
Annonse
Del 2 og 3 går greit, men del 1 vet jeg ikke helt hvordan jeg skal angripe. Jeg trenger altså å lage et program som lar meg angi innloggingsinformasjon og navn på loggfilen, og som deretter logger inn via SSH og laster ned filen slik at jeg kan lese den lokalt.

 

Hva med bruk av SCP?

Lenke til kommentar
Hva med bruk av SCP?

 

Du mener å hente ned fila med SCP først, og deretter åpne den lokalt?

Det lar seg selvfølgelig gjøre, og det blir nok valgt som en slags nødløsning om jeg ikke får til å hente loggen direkte fra serveren. Men jeg ønsker å automatisere prosessen i så stor grad som overhodet mulig.

Lenke til kommentar

Det er ingen støtte for SSH i .NET rammeverket ut av boksen men det finnes tredje-parts alternativer.

 

SharpSSH og Granados er to open-source bibliotek.

 

Ellers finnes det flere kommersielle bibliotek der ute.

 

Edit: Her har du et eksempel på hvordan du bruker SharpSSH sin SCP funksjon for å kopiere en fil.

Endret av Glenn F. Henriksen
Lenke til kommentar
Det er vel strengt tatt bare til å åpne en socket? SSH-protokollen er vel ikke så jævlig avansert?

Det er den ikke, men jeg synes

//Create a new SCP instance
Scp scp = new Scp();

//Copy a file from remote SSH server to local machine
scp.From("remoteHost", "/pub/fileName", "username", "password", "C:\fileName");

er enklere.

Endret av Glenn F. Henriksen
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...