Назад | Перейти на главную страницу

Снижение рисков перехвата HTTP-сеанса в открытых сетях Wi-Fi с помощью VPS

Новое расширение Firefox Firesheep подчеркивает тот факт, что сеансы входа в систему HTTP могут быть легко перехвачены, если данные могут быть перехвачены, что тривиально в открытой сети Wi-Fi.

Я хотел бы что-то сделать, чтобы снизить этот риск для моей семьи. У меня есть небольшой VPS (256M, в настоящее время запущены lighttpd и SpamAssassin), который я могу использовать для этой цели, основная идея заключается в том, что когда мы используем ненадежную сеть, трафик (по крайней мере, HTTP) передается через зашифрованный туннель на VPS. публикуется в открытом Интернете.

Какие у меня возможности с учетом этих ресурсов? Если это важно, то все клиенты - Mac. Возможности, о которых я знаю, - это OpenVPN (ключевая проблема заключается в том, что в конфигурации туннель-весь трафик он уничтожает маршрут к DHCP-серверу открытой сети) и HTTP-прокси (о котором я ничего не знаю). Есть ли другие варианты? О каких соображениях и подводных камнях мне следует знать?

Я бы хотел, чтобы на клиентах было что-то, что можно просто включить (я технический специалист, но остальные члены моей семьи нет), и это работает для всех веб-сайтов, независимо от того, поддерживают ли они HTTPS.

шаттл имеет лучшую производительность, чем собственный прокси-сервер SOCKS SSH, и требует гораздо меньше настроек. Просто скопируйте его на каждый Mac и запустите ./sshuttle -r user@sshserver 0.0.0.0/0 (как описано в README.md) перед выходом в Интернет.

Он только туннелирует трафик TCP, поэтому DNS и DHCP по-прежнему работают в локальной сети.

Как насчет использования HTTPS?

настройте сохраненный сеанс шпатлевки с включенным ssh-туннелем для вашего vps с динамической пересылкой localhost: 8000 (или что-то еще).

установите расширение proxybutton в firefox и настройте прокси для localhost: 8000 (или что-то еще).

установите для них два ярлыка firefox "firefox.exe -proxy 0" и еще один, который представляет собой командный файл, содержащий команды "putty.exe -load" сохраненное имя сеанса "", а затем "firefox -proxy 1"

Ярлык firefox №1 предназначен для защищенных сетей и ведет себя стандартным образом. №2 предназначен для незащищенных сетей, и весь трафик направляется через ваш зашифрованный туннель ssh, прежде чем он будет расшифрован на вашем VPS и превратится в обычный http-трафик между вашим VPS и веб-сервером.

С помощью этого метода они должны будут пройти аутентификацию на вашем VPS, чтобы он действительно работал. Вы можете автоматизировать аутентификацию с помощью ключей, но это создает собственные риски, когда вы не можете гарантировать безопасность конечных точек.

В качестве альтернативы вы можете настроить что-то вроде OpenVPN. Я не уверен, как ваш хостинг-провайдер отнесется к этому или даже будет ли это разрешено.

Если вы используете GNU Linux / other * nix с установленным клиентом Openssh,
Откройте Терминал и запустите:

ssh -D 8080 -p YOURSSHPORT [-i optionalkeyfile] имя пользователя @ your_VPS_DomainName

если вы не используете ключи rsa / dsa и ваш порт ssh по умолчанию 22, это будет работать:

ssh -D 8080 имя пользователя@myvps.com

Затем в вашем браузере

например, Firefox, Настройки> Дополнительно> Сеть> Кнопка Настройки подключения>

  1. Выберите ручную настройку прокси.
  2. Введите 127.0.0.1 в качестве SOCKS HOST.
  3. Введите 8080 в качестве номера порта (вы можете использовать любой свободный неиспользуемый порт на своем рабочем столе / ноутбуке)
  4. Нажмите ОК.

Вы готовы туннелировать весь трафик через локальный порт 8080 через WAN-канал вашего VPS.

Кроме того, для туннелирования DNS-запросов через ваш VPS (настоятельно рекомендуется):

  1. Откройте новую вкладку в Firefox.
  2. Посетить about: config страница
  3. Измените значение network.proxy.socks_remote_dns к правда.

Выше мое решение QuickGun для безопасного туннеля с использованием OpenSSH. Надеюсь это поможет.

В итоге я настроил OpenVPN с Tunnelblick на клиентах. Посмотрим, насколько хорошо это работает на практике.