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
Мы создадим туннель SSH, который будет безопасно перенаправлять трафик с вашей локальной машины на порт 9090
на сервер SSH на порту 22
. Вы можете использовать любой номер порта больше, чем 1024
.
Linux и macOS
Если на вашем локальном компьютере вы запускаете Linux, macOS или любую другую операционную систему на основе Unix, вы можете легко запустить SSH-туннель с помощью следующей команды:
1 |
<span class="line">ssh -N -D 9090 [USER]@[SERVER_IP]</span> |
Возможные варианты:
-N
– Указывает SSH не выполнять удаленную команду.-D 9090
– Открывает туннель SOCKS по указанному номеру порта.[USER]@[SERVER_IP]
– Ваш удаленный SSH пользователя и IP-адрес сервера.- Для запуска команды в фоновом режиме используйте эту опцию
-f
. - Если ваш SSH-сервер прослушивает порт, отличный от порта 22 (по умолчанию), используйте этот параметр
-p [PORT_NUMBER]
.
После запуска команды вам будет предложено ввести свой пароль пользователя. После входа в систему вы войдете на свой сервер, и будет создан туннель SSH.
Вы можете настроить аутентификацию на основе ключа SSH и подключиться к серверу без ввода пароля.
Windows
Пользователи Windows могут создавать туннель SSH с помощью клиента SSH PuTTY.
- Запустите Putty и введите IP-адрес вашего сервера в поле
Host name (or IP address)
.
- В меню
Connection
развернитеSSH
и выберитеTunnels
. Введите порт9090
в полеSource Port
и установите переключательDynamic
.
- Нажмите на кнопку
Add
, как показано на рисунке ниже
- Вернитесь на страницу
Session
, чтобы сохранить настройки, чтобы вы не вводили их каждый раз. Введите имя сеанса в полеSaved Session
и нажмите кнопкуSave
.
- Выберите сохраненный сеанс и войдите на удаленный сервер, нажав на кнопку
Open
.
Появится новое окно с запросом имени пользователя и пароля. После того, как вы введете свое имя пользователя и пароль, вы войдете на сервер и начнете туннель SSH.
Настройка браузера для использования прокси-сервера
Теперь, когда вы открыли туннель SSH SOCKS, последний шаг – настроить предпочтительный браузер для его использования.
Fire Fox
Ниже приведены шаги для Windows, MacOS и Linux.
- В правом верхнем углу нажмите значок гамбургера,
☰
чтобы открыть меню Firefox: - Нажмите на ссылку
⚙ Preferences
. - Прокрутите вниз до раздела
Network Settings
и нажмите на кнопкуSettings...
. - Откроется новое окно.
- Выберите переключатель
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
Google Chrome использует настройки прокси-сервера по умолчанию. Вместо изменения настроек прокси-сервера вашей операционной системы вы можете использовать аддон, например SwitchyOmega, или запустить веб-браузер Chrome из командной строки.
Чтобы запустить Chrome с использованием нового профиля и вашего туннеля SSH, используйте следующую команду:
Linux:
1 2 3 4 |
/usr/bin/google-chrome \ --user-data-dir="$HOME/proxy-profile" \ --proxy-server="socks5://localhost:9090" |
macOS:
1 2 3 4 |
"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" \ --user-data-dir="$HOME/proxy-profile" \ --proxy-server="socks5://localhost:9090" |
Windows:
1 2 3 4 |
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" ^ --user-data-dir="%USERPROFILE%\proxy-profile" ^ --proxy-server="socks5://localhost:9090" |
Профиль будет создан автоматически, если он не существует. Таким образом, вы можете одновременно запускать несколько экземпляров Chrome.
Чтобы подтвердить, что туннель SSH работает правильно, откройте google.com
и введите “what is my ip”. IP-адрес должен быть IP-адресом вашего сервера.