настроить SSH туннель

Thank you for reading this post, don't forget to subscribe!

Быва­ют слу­чаи, когда вы хоти­те про­смат­ри­вать Интер­нет в част­ном поряд­ке, полу­чать доступ к содер­жи­мо­му с огра­ни­чен­ным досту­пом или обхо­дить любые про­ме­жу­точ­ные бранд­мау­э­ры, кото­рые может выпол­нять ваша сеть.

Один из вари­ан­тов заклю­ча­ет­ся в исполь­зо­ва­нии VPN, но для это­го тре­бу­ет­ся уста­нов­ка кли­ент­ско­го про­грамм­но­го обес­пе­че­ния на вашем ком­пью­те­ре и настрой­ка соб­ствен­но­го VPN-сер­ве­ра или под­пис­ка на служ­бу VPN.

Про­стей­шей аль­тер­на­ти­вой явля­ет­ся марш­ру­ти­за­ция локаль­но­го сете­во­го тра­фи­ка с помо­щью зашиф­ро­ван­но­го тун­не­ля прок­си SOCKS. Таким обра­зом, все ваши при­ло­же­ния, исполь­зу­ю­щие прок­си-сер­вер, под­клю­ча­ют­ся к SSH-сер­ве­ру, и сер­вер будет пере­на­прав­лять весь тра­фик на его фак­ти­че­ское место назна­че­ния. Ваш интер­нет-про­вай­дер (ISP) и дру­гие тре­тьи сто­ро­ны не смо­гут про­ве­рять ваш тра­фик и бло­ки­ро­вать доступ к веб-сайтам.

В этой ста­тье вы узна­е­те о про­цес­се созда­ния зашиф­ро­ван­но­го тун­не­ля SSH и настрой­ки бра­у­зе­ров Firefox и Google Chrome для исполь­зо­ва­ния прок­си SOCKS.

  • Сер­вер рабо­та­ет с любым дис­три­бу­ти­вом Linux, с SSH-досту­пом для марш­ру­ти­за­ции ваше­го тра­фи­ка через него.
  • Веб-бра­у­зер.
  • Кли­ент SSH.

Мы созда­дим тун­нель SSH, кото­рый будет без­опас­но пере­на­прав­лять тра­фик с вашей локаль­ной маши­ны на порт 9090 на сер­вер SSH на пор­ту 22. Вы може­те исполь­зо­вать любой номер пор­та боль­ше, чем 1024.

Если на вашем локаль­ном ком­пью­те­ре вы запус­ка­е­те Linux, macOS или любую дру­гую опе­ра­ци­он­ную систе­му на осно­ве Unix, вы може­те лег­ко запу­стить SSH-тун­нель с помо­щью сле­ду­ю­щей команды:


 

 

Воз­мож­ные варианты:

  • -N – Ука­зы­ва­ет SSH не выпол­нять уда­лен­ную команду.
  • -D 9090 – Откры­ва­ет тун­нель SOCKS по ука­зан­но­му номе­ру порта.
  • [USER]@[SERVER_IP] – Ваш уда­лен­ный SSH поль­зо­ва­те­ля и IP-адрес сервера.
  • Для запус­ка коман­ды в фоно­вом режи­ме исполь­зуй­те эту опцию -f.
  • Если ваш SSH-сер­вер про­слу­ши­ва­ет порт, отлич­ный от пор­та 22 (по умол­ча­нию), исполь­зуй­те этот пара­метр -p [PORT_NUMBER].

После запус­ка коман­ды вам будет пред­ло­же­но вве­сти свой пароль поль­зо­ва­те­ля. После вхо­да в систе­му вы вой­де­те на свой сер­вер, и будет создан тун­нель SSH.

Вы може­те настро­ить аутен­ти­фи­ка­цию на осно­ве клю­ча SSH и под­клю­чить­ся к сер­ве­ру без вво­да пароля.

Поль­зо­ва­те­ли Windows могут созда­вать тун­нель SSH с помо­щью кли­ен­та SSH PuTTY.

  1. Запу­сти­те Putty и вве­ди­те IP-адрес ваше­го сер­ве­ра в поле Host name (or IP address).
  2. В меню Connection раз­вер­ни­те SSH и выбе­ри­те Tunnels. Вве­ди­те порт 9090 в поле Source Port и уста­но­ви­те пере­клю­ча­тель Dynamic.
  3. Нажми­те на кноп­ку Add, как пока­за­но на рисун­ке ниже
  4. Вер­ни­тесь на стра­ни­цу Session, что­бы сохра­нить настрой­ки, что­бы вы не вво­ди­ли их каж­дый раз. Вве­ди­те имя сеан­са в поле Saved Session и нажми­те кноп­ку Save.
  5. Выбе­ри­те сохра­нен­ный сеанс и вой­ди­те на уда­лен­ный сер­вер, нажав на кноп­ку Open.
    Появит­ся новое окно с запро­сом име­ни поль­зо­ва­те­ля и паро­ля. После того, как вы вве­де­те свое имя поль­зо­ва­те­ля и пароль, вы вой­де­те на сер­вер и нач­не­те тун­нель SSH.

Теперь, когда вы откры­ли тун­нель SSH SOCKS, послед­ний шаг – настро­ить пред­по­чти­тель­ный бра­у­зер для его использования.

Ниже при­ве­де­ны шаги для Windows, MacOS и Linux.

  1. В пра­вом верх­нем углу нажми­те зна­чок гам­бур­ге­ра,  что­бы открыть меню Firefox:
  2. Нажми­те на ссыл­ку ⚙ Preferences.
  3. Про­кру­ти­те вниз до раз­де­ла Network Settings и нажми­те на кноп­ку Settings....
  4. Откро­ет­ся новое окно. 
    • Выбе­ри­те пере­клю­ча­тель Manual proxy configuration.
    • Вве­ди­те 127.0.0.1 в поле SOCKS Host и 9090 в поле Port.
    • Уста­но­ви­те фла­жок Proxy DNS when using SOCKS v5.
    • Нажми­те на кноп­ку OK, что­бы сохра­нить настройки.

На дан­ный момент ваш Firefox настро­ен, и вы може­те про­смат­ри­вать Интер­нет, как ваш тун­нель SSH. Что­бы про­ве­рить его, вы може­те открыть его google.com, вве­ди­те “what is my ip” и вы уви­ди­те IP-адрес ваше­го сервера.

Что­бы вер­нуть­ся к настрой­кам по умол­ча­нию, перей­ди­те в раз­дел Network Settings, выбе­ри­те радио-кноп­ку Use system proxy settings и сохра­ни­те настройки.

Так­же есть несколь­ко пла­ги­нов, кото­рые могут помочь вам настро­ить настрой­ки прок­си-сер­ве­ра Firefox, такие как FoxyProxy.

Google Chrome исполь­зу­ет настрой­ки прок­си-сер­ве­ра по умол­ча­нию. Вме­сто изме­не­ния настро­ек прок­си-сер­ве­ра вашей опе­ра­ци­он­ной систе­мы вы може­те исполь­зо­вать аддон, напри­мер SwitchyOmega, или запу­стить веб-бра­у­зер Chrome из команд­ной строки.

Что­бы запу­стить Chrome с исполь­зо­ва­ни­ем ново­го про­фи­ля и ваше­го тун­не­ля SSH, исполь­зуй­те сле­ду­ю­щую команду:

Linux:

 

macOS:

 

Windows:

Про­филь будет создан авто­ма­ти­че­ски, если он не суще­ству­ет. Таким обра­зом, вы може­те одно­вре­мен­но запус­кать несколь­ко экзем­пля­ров Chrome.

Что­бы под­твер­дить, что тун­нель SSH рабо­та­ет пра­виль­но, открой­те google.com и вве­ди­те “what is my ip”. IP-адрес дол­жен быть IP-адре­сом ваше­го сервера.