Как создать VPN-соединение на порт и использовать его только выборочно - PullRequest
0 голосов
/ 08 октября 2019

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

Мне часто приходится подключаться к VPN-серверу на работе. В настоящее время я использую Cisco AnyConnect, который при подключении запрашивает у меня хост-сервер, мое имя пользователя, мой пароль и впоследствии маршрутизирует весь мой трафик через VPN.

Проблема в том, что в зависимости от того, что я делаю, мне часто приходится переходить назад и вперед к VPN (некоторым приложениям нужна локальная сеть, а другим нет)

Что было бы идеально, так это создатьодно VPN-соединение и просто держите его на порте, ничего не маршрутизируя к нему. Затем я могу использовать его в качестве прокси-сервера для выборочной маршрутизации своего трафика через VPN (например, я переопределяю http_proxy локально на одном экземпляре терминала и запускаю там приложения, требующие VPN, без необходимости переходить назад и вперед). Кроме того, если я создаю это соединение из терминала, я могу автоматизировать большую часть процесса, например:

function callExecutableThroughVPN() {
  if ! is_connected_to_vpn then
    echo "coulnt find the vpn connection, will attempt to connect. enter password:"
    # get password input here
    setup_vpn_on_port_9876 # pass password input here

    echo "setting proxy to 127.0.0.1:9876"
    http_proxy=127.0.0.1:9876/
    https_proxy=127.0.0.1:9876/
  fi

  ./executable_that_need_vpn
}

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

Итак, в общем, мой вопрос: возможно ли создать один процесс VPN через терминал для прослушивания локального порта, поэтому мне не нужно маршрутизировать весь мой трафик сразу, и я могу просто убить этот процесскогда я закончу

1 Ответ

0 голосов
/ 09 октября 2019

Я рекомендую использовать SSH туннель / Socks Proxy (см. Ssh -D) и оболочку tsocks. Для http (s) прокси я рекомендую инструмент proxychains.

...