Ohjaa portit SSH: n kautta

Joskus tarvitsemme lähettää tietoja pistorasian kautta eri koneiden välillä, kuten Telnet-yhteys, FTP-tiedostolataus, SQL-kysely tai mikä tahansa muu lähetystyyppi.

Tämä data kulkee raakana verkon läpi, joten Olen epävarma, mikä tarkoittaa, että ne voidaan siepata mistä tahansa solmusta, joka on polulla lähtöpaikan ja määränpään välillä, toisin sanoen varastettu.

Emme voi estää näiden tietojen kaappaamista, mutta voimme estää sen, että kolmannet osapuolet tulkitsevat ja ymmärtävät sen salaamalla viestinnän.

SSH on työkalu, jonka avulla voimme tehdä turvalliset yhteydet koneiden välillä. Sen yleisin käyttö on yhteyden muodostaminen etäyhteydellä komentotulkkiin.

Se tarjoaa kuitenkin muita mahdollisuuksia, kuten luomisen salatut tunnelit eri koneiden välillä.
Oletetaan, että haluamme telnetata palvelimelta isännälle1:

host1$ telnet host2

Tämä viestintä on täysin avointa ja voi olla leikkaavien. Sen suojaamiseksi ohjaamme mielivaltaisesti valitun isännän 5000 portin (esimerkiksi 1) isännän 23 porttiin 2 (telnet).

Tällä tavalla saamme kaikki isännän 5000 porttiin 1 lähetetyt tiedot salatuksi tunnelin läpi, joka ssh avautuu isännän22 portin 2 kautta ja ohjataan sitten isännän23 porttiin 2 saavuttaen siten lopullisen määränpäänsä.

Tätä varten meidän on tiedettävä host2: n käyttäjänimi ja salasana.

Tunnelin avaamiseksi kirjoitamme:

host1$ ssh -R 5000:localhost:23 usuariohost2@host2

O hyvin:

host1$ ssh -L 5000:host2:23 usuariohost2@host2

Molemmat vaihtoehdot ovat samanarvoisia. Telnet-yhteyden muodostamiseksi emme enää viittaa isäntään 2 vaan isäntään1 valittuun porttiin:

host1$ telnet localhost 5000

Tämän avulla teemme kaikesta viestinnästä turvallista, olipa se sitten telnet tai muuten. Hieman enemmän tutkimalla näemme sen voiman ansiosta SSH Nämä uudelleenohjaukset voidaan tehdä myös kolmansille koneille, mikä antaisi meille mahdollisuuden, että yhdellä sisääntulopisteellä pääsisimme turvallisesti koko lähiverkosta toiseen lähiverkkoon.


Jätä kommentti

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *

*

*

  1. Vastuussa tiedoista: Miguel Ángel Gatón
  2. Tietojen tarkoitus: Roskapostin hallinta, kommenttien hallinta.
  3. Laillistaminen: Suostumuksesi
  4. Tietojen välittäminen: Tietoja ei luovuteta kolmansille osapuolille muutoin kuin lain nojalla.
  5. Tietojen varastointi: Occentus Networks (EU) isännöi tietokantaa
  6. Oikeudet: Voit milloin tahansa rajoittaa, palauttaa ja poistaa tietojasi.

  1.   nano dijo

    Teoria näyttää erittäin mielenkiintoiselta, mutta se olisi vielä enemmän, jos näemme käytännön tapauksen.

    Mutta totuus on, että vaikka olin lyhyt, rakastin artikkelia.

    1.    sama dijo

      ehkä katsomalla wiki saat inspiraatiota https://wiki.archlinux.org/index.php/Secure_Shell#Forwarding_other_ports
      ja sama, mutta autossh-osa https://wiki.archlinux.org/index.php/Secure_Shell#Autossh_-_automatically_restarts_SSH_sessions_and_tunnels
      Itse asiassa kaikki mitä voit lähettää ssh-muodossa, olipa kyseessä suoratoisto, yhteydet isäntään. jne. että x syystä haluat salata ne.
      ja Securecrt-säännöt

  2.   Tesla dijo

    Käytän joskus SSH: ta hyvin perustasolla. Oletusportti on 22, eikö?

    Joten, jos ymmärrän oikein, tietokoneeni on isäntä 1 ja se, johon haluan muodostaa yhteyden, on isäntä2, tämä tunneli loisi yhteyden portin 5000 ja sen portin 23 välille ja päätyisi sitten porttiin 22?

    Miksi syitä porttien vaihtamiseen? Voitteko luoda tunnelin portilla 22?

    Erittäin mielenkiintoinen artikkeli. Kuten nano, haluan lisää!

    1.    Akvavitix dijo

      SSH käyttää todellakin porttia 22 (vaikka sitä voidaan muuttaa). Tätä porttia käytettäisi kahden isännän välinen todellinen tiedonsiirto. Sinun on varmistettava, että se on auki eikä palomuuri leikkaa sitä. Mutta käyttäjälle se on täysin läpinäkyvä. Voit unohtaa hänet. Esimerkissä uudelleenohjaus tapahtuu porttien 5000 ja 23 välillä. Nämä kaksi ovat ainoat, joista sinun on huolehdittava. Käyttäjä näkee, että kaikki lähettämänsä isännän porttiin 5000 näkyy kohde-isäntän kohdalla 23.
      Jokainen käyttäjä voi tietysti ohjata uudelleen pitämänsä portit.

      Kiitos kommenteistasi. Tämä on ensimmäinen viestini, ja mielipiteesi auttavat parantamaan seuraavaa.

  3.   eliotime3000 dijo

    Voidaanko se tehdä myös VPS: llä?

  4.   metsästäjä dijo

    Ok, tämä on minun tapaukseni, PC1: llä on pääsy palvelimeen, mutta PC2: lla ei ole yhteyttä, molemmat muodostavat yhteyden ssh: llä, haluan pääsyn PC2: een, mutta minkä PC1-portin voin ohjata uudelleen? jos todella haluan saavuttaa palvelinportin PC2: lta ja että pakettien lähde-IP on PC1. ymmärränkö?

    1.    Akvavitix dijo

      Teet itsesi ymmärrettäväksi. Tässä tapauksessa tarvitset PC1: n ohjaamaan PC2-portin palvelimen porttiin 22:

      PC2 $ ssh -L 5000: Palvelin: 22 käyttäjän PC1 @ PC1

      ja pitämällä tätä yhteyttä auki toisesta päätelaitteesta:

      PC2 $ ssh userServer @ localhost -p 5000

      ja olet jo sisällä.

      1.    metsästäjä dijo

        Lopuksi toimiva ratkaisu! Kiitos Getafix, olet antanut minulle mahdollisuuksien maailman !!

        1.    Akvavitix dijo

          Olen iloinen!

  5.   vilkas dijo

    Loistava artikkeli. Tervetuloa DesdeLinux ????

    Ja mitä tehdä, jos meillä on 22 tukossa? LOL..

    1.    Akvavitix dijo

      Kiitos elav.
      Jos portti 22 on estetty, mmmm, meidän on etsittävä vaihtoehtoa XD-palomuurin hakkeroinnille

    2.    eliotime3000 dijo

      Ja mikä pahinta (hypoteettinen): että VPS-palveluntarjoaja estää sen.

  6.   IGA dijo

    Tein juuri kokeen muutama tunti sitten kysymyksillä siitä 😛

  7.   Mario dijo

    En sanoisi, että:
    host1 $ ssh -R 5000: paikallinen isäntä: 23 userhost2 @ host2
    se vastaa toista komentoriviä ... sitä, jolla on -L.
    Koska -R osoittaa, että portti, joka on avattu uusille yhteyksille, on etäpuolella eli ssh-palvelimesi puolella; kun -L avaa portin paikallisella puolella, asiakaspuolella vastaanottamaan uusia yhteyksiä.

    Rivin käännös:
    host1 $ ssh -R 5000: paikallinen isäntä: 23 userhost2 @ host2
    Se olisi jotain tältä: Kun olet isäntänä1, muodosta yhteys isäntä22: n ssh-palvelimeen (portti 2) käyttäjän userhost2: lla ja välitä isännän5000 etäportissa 2 luodut yhteydet isännän23 porttiin (oma paikallinen isäntä)

    Jos ei, korjaa minut! 😉

    -

    Toisaalta ... jos palvelin on estänyt porttien 22 yhteyksien saapumisen, emmekä voi muodostaa etäyhteyttä ssh-palvelimeen; mitä voidaan tehdä, on; että palvelimelta (ystävä sysadmin etäisäntä2-järjestelmän palomuurin takana) suoritetaan komentorivi:

    host2 $ nohup ssh -fN -R 6000: paikallinen isäntä: 22 käyttäjän isäntä1 @ isäntä1

    -f menee taustalle
    -N ei suorita mitään komentoja kaukosäätimessä
    nohup estää komennon suorittamisen keskeytymästä uloskirjautumisen yhteydessä

    host1 $ ssh userhost2 @ localhost -p 6000

    Tällä tavoin muodostetaan isännältä1 yhteys porttiin 1 localhost (sama isäntä6000), joka välittää yhteyden etäjärjestelmän isännän22 porttiin 2, jossa kirjaudumme sisään käyttäjän isännän2 kanssa.

    Tämä antaisi (en testannut sitä, mutta kuulostaa siltä, ​​että se toimii) kirjautua sisään ssh-palvelimeen, jonka palomuuri on estänyt pienellä avulla sisältä! 😀

    Jälkimmäisen luin selityksestä, joka tehtiin The Geek Stuff -lehdessä
    http://www.thegeekstuff.com/2013/11/reverse-ssh-tunnel/

    Pidän todella paljon julkaisustasi; Luen niitä usein!
    Tervehdys.

    1.    Akvavitix dijo

      Olet oikeassa. Artikkelissa on virhe. Uudelleenohjaukset eivät ole samanlaisia. Komento host1 $ ssh -R 5000: localhost: 23 userhost2 @ host2 suorittaa käänteisen uudelleenohjauksen, eli se ohjaa etäportin 5000 23 paikalliseen, päinvastoin kuin komento -L: llä.
      Kiitos korjauksesta.