Kirjoittaja Aihe: ssh-palvelin [ratkaistu]  (Luettu 4582 kertaa)

vahonen

  • Käyttäjä
  • Viestejä: 31
    • Profiili
ssh-palvelin [ratkaistu]
« : 09.09.08 - klo:08.09 »
Onko mahdollista saada ssh palvelin toimimaan jonkinlaisena kryptauksen purkajana ja reitittäjänä...? Eli clienttisofta lähettää jostain jotain tietoa ssh:lla mun palvelimelle, jossa on mun itse kirjoittama palvelin. Mua ei ihan hirveästi innostais kirjoittaa uusiksi ssh-palvelinosia omaan softaan vaan haluaisin käyttää jo valmiiksi keksittyä pyörää.

Voiko ssh-palvelimen siis pistää kuuntelemaan jotain porttia (ei paha), muuttamaan sisääntulevan liikenteen selkokieliseksi ja välittämään tiedon eteenpäin mun omalle palvelimelle (paha), ilman että pääsen sorkkimaan lähettävän pään ssh-putken muodostusta (vielä pahempi)?

Kiitoksia.
« Viimeksi muokattu: 10.09.08 - klo:15.16 kirjoittanut vahonen »

_Pete_

  • Käyttäjä
  • Viestejä: 1845
  • Fufufuuffuuu
    • Profiili
Vs: ssh-palvelin
« Vastaus #1 : 09.09.08 - klo:10.06 »
Voiko ssh-palvelimen siis pistää kuuntelemaan jotain porttia (ei paha), muuttamaan sisääntulevan liikenteen selkokieliseksi ja välittämään tiedon eteenpäin mun omalle palvelimelle (paha), ilman että pääsen sorkkimaan lähettävän pään ssh-putken muodostusta (vielä pahempi)?

Kyllä onnistuu. Tätä kutsutaan ssh:ssä portforwarding. Sen voi tehdä kumpaankin suuntaan, siten
että remote koneesta luodaan putki yhteyttäottavaan koneeseen tai toisten päin tai kumpaankin suuntaan.
Googlaamalla: ssh portforwarding, kannattaa lukea huolella että ymmärtää mistä on kyse.

Tässä kuitenkin esimerkki, poimittu täältä:
http://www.ibm.com/developerworks/linux/library/l-10sysadtips/?ca=dgr-lnxw07Linux10Tricks&S_TACT=105AGX59&S_CMP=GR

Trick 5: SSH back door

 ssh -R 2222:localhost:22 thedude@blackbox.example.com

Tuon onnistumisen jälkeen kun tekee localkoneessa:

ssh -p 2222 thedude@blackbox.example.com

Yhteys putkittuu oikeasti blackox.example.com koneeseen ...




vahonen

  • Käyttäjä
  • Viestejä: 31
    • Profiili
Vs: ssh-palvelin
« Vastaus #2 : 09.09.08 - klo:12.33 »

Kyllä onnistuu. Tätä kutsutaan ssh:ssä portforwarding.

Trick 5: SSH back door


Jos ymmärsin oikein, niin tuossa esimerkin tapauksessa lähtöpää määrittää miten ja minne liikenne ohjataan. Mutta mun tapauksessa en pysty vaikuttamaan lähtöpään / clientin käskyihin tai tunnelin muodostamiseen mitenkään, vaan kaikki pitää hoitaa serverillä. Mun pitäis siis serverissä määrittää jotain jonnekin, kun joku huutaa sshd:n porttiin jotain, datan ympäriltä puretaan ssh-kapselointi ja viesti laitetaan selväkielisenä eteenpäin.

Vai ymmärsinkö vaan väärin? Mulla kun ei vielä ole etukäteen mitään tietoa mistä osoitteesta (osoitteista) yhteyttä otetaan, niin mun palvelin ei voi olla se joka avaa ssh-yhteyksiä.

_Pete_

  • Käyttäjä
  • Viestejä: 1845
  • Fufufuuffuuu
    • Profiili
Vs: ssh-palvelin
« Vastaus #3 : 09.09.08 - klo:13.39 »
Onko tarkoitus saada aikaan tällaista:

Koodia: [Valitse]

<Client:Port> ssh -> <Serveri> -> <Target:Port>

esim:

<Client:80> ssh -> <Serveri -> <Target:80>


Eli Client koneen portti 80 yhdistyy serverin kautta ssh salauksella Target portti 80 menisi näin:

ssh -L 80:Target:80 tunnus@serveri

Jonka jälkeen siis kun esim. Client koneella kokeilee:

telnet localhost 80

se yhdistyy ssh-putke pitkin Serverin kautta Target porttiin 80 ...

Sekavaa eikö? :)


vahonen

  • Käyttäjä
  • Viestejä: 31
    • Profiili
Vs: ssh-palvelin
« Vastaus #4 : 09.09.08 - klo:13.45 »
Onko tarkoitus saada aikaan tällaista:


On.

Ainoa hankaluus on siinä, etten pysty vaikuttamaan mitenkään siihen miten client ottaa yhteyttä (enkä itseasiassa haluakaan kertoa ulospäin mun sisäverkon topologiasta mitään), vaan käsky on aina mallia

ssh user@xx.yy.zz.öö

Clientti siis juttelee periaatteessa aika pöljänä ssh:ta ja mun homma olis saada tulkittua se jotenkin. Mieluusti vielä niin ettei mun tarvi itse alkaa virittää omaan softaan ssh-keskustelua.

_Pete_

  • Käyttäjä
  • Viestejä: 1845
  • Fufufuuffuuu
    • Profiili
Vs: ssh-palvelin
« Vastaus #5 : 09.09.08 - klo:13.58 »
ssh user@xx.yy.zz.öö

Ahaa eli siis haluaisit tuon "normaalin ssh:n" jälkeen tapahtuvan niin, että ei vastaakkaan
interactiivinen shell/mikä nyt onkaan määritetty chsh:lla vaan ohjautuisi yhteys jonnekkin
ihan muualle ?

Tällainen oli itselläkkin jokunen aika tutkinnan alla ja taisi säätö jäädä siihen, että pitäisi siis
shellin tilalle käynnistää jonkinlainen yhteydenputkittaja...

Mutta jos keksit miten tuon saa järkevästi/helposti/turvallisesti tehtyä niin kerro toki...


vahonen

  • Käyttäjä
  • Viestejä: 31
    • Profiili
Vs: ssh-palvelin
« Vastaus #6 : 09.09.08 - klo:14.08 »
Ahaa eli siis haluaisit tuon "normaalin ssh:n" jälkeen tapahtuvan niin, että ei vastaakkaan
interactiivinen shell/mikä nyt onkaan määritetty chsh:lla vaan ohjautuisi yhteys jonnekkin
ihan muualle ?

Heureka! :) Voi sen noinkin sanoa. Tarkoitus olisi saada ohjattua liikenne itse koodattuun palvelimeen joka nyt sitten tekee datalla mitä tekee, todennäköisesti käsittelee dataa väärin ja kaatuu.

Mutta jos keksit miten tuon saa järkevästi/helposti/turvallisesti tehtyä niin kerro toki...

Jos ihan totta puhutaan, niin ei tää kovin vakuuttavalta vaikuta :)

_Pete_

  • Käyttäjä
  • Viestejä: 1845
  • Fufufuuffuuu
    • Profiili
Vs: ssh-palvelin
« Vastaus #7 : 09.09.08 - klo:15.07 »
Heureka! :) Voi sen noinkin sanoa. Tarkoitus olisi saada ohjattua liikenne itse koodattuun palvelimeen joka nyt sitten tekee datalla mitä tekee, todennäköisesti käsittelee dataa väärin ja kaatuu.

Törmäsin tällaiseen:

http://mureakuha.com/koodikirjasto/1095

Jolla siis voi forwardoida tcp-yhteyksiä paikasta toiseen. Sellanen kävi mielessä että tuota tai jotain
vastaavaa käyttäen virittäisi niin, että kun ssh-login tapahtuu shellin sijaan käynnistetään tuo
yhteydenohjaushärpäke. En vielä ehtiny kokeilla käytännössä mutta periaatteessa voisi toimia.



Vapaan koodin kananmuna

  • Käyttäjä
  • Viestejä: 1536
    • Profiili
Vs: ssh-palvelin
« Vastaus #8 : 09.09.08 - klo:15.54 »
Netcat ja jos haluaa salauksen niin http://sourceforge.net/projects/nssl netcatin ssl versio.
En Vastaa Vaikeisiin Kysymyksiin.

vahonen

  • Käyttäjä
  • Viestejä: 31
    • Profiili
Vs: ssh-palvelin
« Vastaus #9 : 10.09.08 - klo:11.09 »
Toisessa keskustelussa mainittiin, että ssh-palvelimen voi säätää käynnistämään jonkun prosessin kirjautumisen yhteydessä, niin että prosessi voi kuunnella stdio:ta ja huudella stdout:n. Tuo on viittä vailla täsmälleen sitä mitä haluaisin, muttei ole mitään käsitystä miten tuo tehdään.

Onko jollain tietoa?

vahonen

  • Käyttäjä
  • Viestejä: 31
    • Profiili
Vs: ssh-palvelin
« Vastaus #10 : 10.09.08 - klo:15.15 »
Noni! Tein oman käyttäjän tuota järjestelmää varten, laitoin oletus-shelliksi skriptin joka käynnistää mun oman softan, joka sitten kuuntelee System.in:iä ja tulostaa tavaraa System.out:n ja homma toimii kuin junan vessa!