Преусмери портове преко ССХ-а

Понекад нам треба пренос података кроз утичницу између различитих машина, попут Телнет везе, преузимања ФТП датотеке, СКЛ упита или било које друге врсте преноса.

Ти подаци путују сирово кроз мрежу, па несигурно, што значи да би их могао пресрести било који чвор који је на путу између исходишта и одредишта, тј. робадос.

Не можемо спречити прикупљање ових података, али оно што можемо спречити је да их треће стране тумаче и разумеју, шифрујући комуникацију.

ССХ је алат који нам то омогућава сигурне везе између машина. Његова најчешћа употреба је даљинско повезивање са интерпретатором наредби.

Међутим, нуди и друге могућности, попут стварања шифровани тунели између различитих машина.
Претпоставимо да желимо да успоставимо телнет са хост1 на хост2:

host1$ telnet host2

Ова комуникација је потпуно отворена и може бити пресретнути. Да бисмо је заштитили, преусмерићемо произвољно изабрани порт (на пример 5000) на хосту 1 на порт 23 (телнет) на хосту2.

На тај начин ћемо добити све податке који се шаљу на порт 5000 од хост1 да путују шифровани кроз тунел који се ссх отвара кроз порт 22 од хост2, а затим ћемо бити преусмерени на порт 23 од хост2, достижући тако своје коначно одредиште.

Да бисмо то урадили, морамо знати корисничко име и лозинку за хост2.

Да бисмо отворили тунел пишемо:

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

О добро:

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

Обе опције су еквивалентне. Да бисмо успоставили телнет везу, више се не позивамо на хост2, већ на порт изабран на хост1:

host1$ telnet localhost 5000

Овим чинимо било какву комуникацију сигурном, била она телнет или другачија. Истражујући још мало видећемо то захваљујући снази ССХ Ова преусмеравања се такође могу извршити на треће машине, што би нам омогућило да са једном улазном тачком можемо безбедно приступити са целе ЛАН мреже на другу ЛАН мрежу.


Оставите свој коментар

Ваша емаил адреса неће бити објављена. Обавезна поља су означена са *

*

*

  1. За податке одговоран: Мигуел Ангел Гатон
  2. Сврха података: Контрола нежељене поште, управљање коментарима.
  3. Легитимација: Ваш пристанак
  4. Комуникација података: Подаци се неће преносити трећим лицима, осим по законској обавези.
  5. Похрана података: База података коју хостује Оццентус Нетворкс (ЕУ)
  6. Права: У било ком тренутку можете ограничити, опоравити и избрисати своје податке.

  1.   Нано дијо

    Теорија изгледа изузетно занимљиво, али било би још више када бисмо видели практичан случај.

    Али истина је да сам, иако сам била ниска, волела чланак.

    1.    исти дијо

      можда гледајући вики који вас инспирише https://wiki.archlinux.org/index.php/Secure_Shell#Forwarding_other_ports
      и исто, али одељак аутоссх https://wiki.archlinux.org/index.php/Secure_Shell#Autossh_-_automatically_restarts_SSH_sessions_and_tunnels
      Заправо, све што можете послати ссх-ом, било то стримовање, везе са хостом. итд. да из к разлога желите да их шифрујете.
      и правила сецурецрт

  2.   Тесла дијо

    Понекад користим ССХ на врло основном нивоу. Подразумевани порт је 22, зар не?

    Дакле, ако добро разумем, мој рачунар је хост 1, а онај којег желим да повежем је хост2, овај тунел би створио везу између порта 5000 и порта 23, а затим завршио на порту 22?

    Зашто разлози за пребацивање портова? Можете ли створити тунел са портом 22?

    Врло занимљив чланак. Као нано, желим још!

    1.    Гетафик дијо

      ССХ заиста подразумевано користи порт 22 (мада се може променити). Овај порт би користио стварна комуникација између два домаћина. То је онај за који морате бити сигурни да је отворен и да га ниједан заштитни зид не искључује. Али за корисника је потпуно транспарентно. Можете заборавити на њега. У примеру је преусмеравање између портова 5000 и 23. Та два су једина око којих морате да бринете. Корисник ће видети да се све што пошаље на порт 5000 свог хоста појављује на 23 одредишта.
      Очигледно је да сваки корисник може да преусмери портове које сматра одговарајућим.

      Хвала за ваше коментаре. Ово је мој први пост и ваша мишљења ће помоћи да следећи буде бољи.

  3.   елиотиме3000 дијо

    Да ли се то може урадити и са ВПС-ом?

  4.   дхунтер дијо

    Ок, ово је мој случај, ПЦ1 има приступ серверу, али ПЦ2 нема, оба се повезују ссх-ом, желим да имам приступ у ПЦ2, али који порт ПЦ1 преусмерим? ако заправо желим да дођем до порта сервера са ПЦ2 и да пакети имају ПЦ1 као изворну ИП адресу. да ли разумем?

    1.    Гетафик дијо

      Постајете разумљиви. У овом случају вам је потребан ПЦ1 да бисте преусмерили порт ПЦ2 на порт 22 сервера:

      ПЦ2 $ ссх -Л 5000: Сервер: 22 корисника ПЦ1 @ ПЦ1

      и, држећи ову везу отвореном, са другог терминала:

      ПЦ2 $ ссх усерСервер @ лоцалхост -п 5000

      а ти си већ унутра.

      1.    дхунтер дијо

        Коначно функционално решење !! Хвала Гетафик, дали сте ми свет могућности !!

        1.    Гетафик дијо

          Драго ми је!

  5.   елав дијо

    Excelente artículo. Bienvenido a DesdeLinux ????

    А шта да радимо ако имамо 22 блокирана? ЛОЛ..

    1.    Гетафик дијо

      Хвала елав.
      Ако имате блокиран порт 22, мммм, мораћемо да потражимо алтернативу за хаковање КСД заштитног зида

    2.    елиотиме3000 дијо

      И најгоре од свега (хипотетичко): то што га блокира добављач ВПС-а.

  6.   АГР дијо

    Управо сам обавио испит пре неколико сати са питањима о томе 😛

  7.   марио дијо

    Не бих рекао да:
    хост1 $ ссх -Р 5000: лоцалхост: 23 усерхост2 @ хост2
    еквивалентан је другој командној линији ... оној са -Л.
    Пошто -Р указује да се порт који је отворен за нове везе налази на удаљеној страни, односно на страни вашег ссх сервера; док -Л отвара порт на локалној страни, на клијентској страни за примање нових веза.

    Превод реда:
    хост1 $ ссх -Р 5000: лоцалхост: 23 усерхост2 @ хост2
    Било би отприлике овако: Налазећи се на хост1, повежите се са ссх сервером (порт 22) од хост2 са мојим корисником усерхост2 и проследите везе генерисане на удаљеном порту 5000 од хост2 до порта 23 на хост1 (мој лоцалхост)

    Ако не, исправите ме! 😉

    -

    С друге стране ... ако је сервер блокирао улазак конекција на порт 22, то јест, не можемо се даљински повезати са ссх сервером; оно што се може учинити је; да се са сервера (сисадмин пријатеља иза заштитног зида удаљеног система хост2) извршава командна линија:

    хост2 $ нохуп ссх -фН -Р 6000: лоцалхост: 22 усерхост1 @ хост1

    -ф иде у позадину
    -Н не извршава ниједну наредбу на даљинском управљачу
    нохуп спречава извршавање наредбе да се прекине приликом одјаве

    хост1 $ ссх усерхост2 @ лоцалхост -п 6000

    На тај начин, од хост1 генеришемо везу са лоцалхост-ом (истим хост1) на порту 6000 који ће проследити везу на порт 22 удаљеног система хост2, у који ћемо се пријавити са корисничким хост2.

    Ово би омогућило (нисам пробао, али звучи као да то функционише) да се пријавим на ссх сервер блокиран ватрозидом уз малу помоћ изнутра! 😀

    Ово последње прочитао сам из објашњења у часопису Тхе Геек Стуфф
    http://www.thegeekstuff.com/2013/11/reverse-ssh-tunnel/

    Заиста ми се свиђа ваша публикација; Читам их често!
    Поздрав.

    1.    Гетафик дијо

      Управу си. У чланку постоји грешка. Преусмеравања нису еквивалентна. Наредба хост1 $ ссх -Р 5000: лоцалхост: 23 усерхост2 @ хост2 врши обрнуто преусмјеравање, односно преусмјерава удаљени порт 5000 на 23 локална, супротно ономе што ради наредба са -Л.
      Хвала вам на исправци.