Решение локального прокси, чтобы обойти мой VPN

1

Я работаю в удаленном офисе, и чтобы подключиться к корпоративным ресурсам, мы должны войти в программный VPN. После аутентификации эта VPN получает IP-адрес и настраивает свой шлюз в качестве шлюза по умолчанию, тем самым перенаправляя весь трафик в корпоративную сеть. Затем, чтобы иметь доступ к любым корпоративным ресурсам (вики, git и т. Д.), Мы должны использовать корпоративный прокси-сервер. Проблема в том, что прокси-фильтры являются значительными, блокируя доступ ко многим часто используемым сайтам, и пропускная способность варьируется от паршивого до ужасного (загрузка образа 600 МБ из docker.io может занять & gt; 20 минут через VPN, но & lt; 1 минуту пока выключен VPN).

Я хочу иметь возможность обойти VPN (и, в частности, маршрут по умолчанию в VPN) всякий раз, когда я хочу. Что (я думаю) я хочу, это локальный прокси-сервер, который маршрутизирует весь трафик через шлюз локальной сети, а не шлюз VPN. Таким образом, я избегаю управления обходными конфигурациями сети / домена (что я уже пытался сделать, и по крайней мере 200 сетей / IP-адресов, так что это слишком много для управления) и просто использую локальный прокси, только когда Я подключен к VPN и явно должен полностью ее обойти. Как я могу сделать это?

DrStrangepork
источник
«Правильный ответ» заключается в использовании конфигурации VPN с разделенным туннелем, чтобы он идентифицировал только трафик к защищенным VPN конечным точкам для туннелирования. Это будет сделано в соответствии с установкой маршрута по умолчанию для VPN для сетей, которые являются частными для компании, и оставит маршрут ISP для всех остальных (читай: локальный и интернет). Это должно быть настроено в политике VPN, поэтому это должно быть сделано корпоративным. Они могут этого не делать, потому что это сложно, или они могут захотеть контролировать весь трафик (причины политики / соответствия являются общими для туннелей без разделения).
Ruscal
Если вы пытаетесь настроить локальный прокси-сервер (и при условии, что это не нарушение политики, но у этой корпорации есть какая-то другая [неизвестная?] Причина не настраивать политику VPN для разделения), вам нужно будет указать, что текущие политики маршрутизации. Я подозреваю, что независимо от того, что вам нужно будет перечислить все сети VPN, так как похоже на то, что корпоративная политика - это 0.0.0.0/0, чтобы выполнить полный контроль. В конце концов, без прокси-сервера и просто написание хороших маршрутов с разделенным туннелем будет проще (и, если вам повезет, вы можете заставить корпоративное сделать это - попробуйте спорить о чрезмерном потреблении дорогого соединения с провайдером в штаб-квартире)
Ruscal
1) не произойдет. Корпорация намеренно форсирует весь трафик через VPN. Вот почему я задаю вопрос. 2) В основном я хочу направить 10.0.0.0/8 через шлюз VPN и весь другой трафик через шлюз WiFi (который будет 10.1xx.x.x / 20). Я думаю, что я прошу рекомендации по инструментам, которые будут управлять этой маршрутизацией с разделенным туннелем.
DrStrangepork
Только что одна сеть для VPN? Это довольно просто. О какой ОС мы говорим? Если у меня есть удобное изображение, я проведу быстрый командный тест и отброшу его как ответ. Но в основном вы удалите маршрут VPN по умолчанию и замените его соответствующим маршрутом разделения. Сделайте сценарий, который вы запускаете сразу после VPN-подключения, а Боб - ваш дядя.
Ruscal
MacOS 10.12.4. Что еще нужно знать?
DrStrangepork

Ответы:

0

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

После подключения к VPN я буду работать из командной оболочки, так что откройте это. Я запускаю этот образ как учетную запись с повышенными правами, поэтому все эти команды «просто работают» для меня. Возможно, вам придется добавить команду sudo к началу, чтобы повысить выполнение команды в зависимости от настройки вашей учетной записи.

Во-первых, нам нужно удалить маршрут по умолчанию, установленный VPN.

route delete default

Затем мы хотим добавить в маршрут для VPN только корпоративные вещи

route add 10.0.0.0/8 <IP of the VPN gateway>

И тогда мы возвращаем ваш обычный по умолчанию, который использует локальный маршрутизатор в качестве шлюза

route add default <IP of your local gateway>

При этом трафик по умолчанию будет использовать ваш локальный следующий переход, который должен переходить к локальному интернет-провайдеру для подключения к Интернету. Но любой трафик, предназначенный для корпоративного HQ, будет направляться на шлюз VPN.

Похоже, что ваша первоначальная попытка заключалась в создании локального маршрута следующего перехода для каждого места в Интернете, к которому вы хотели получить доступ. Хотя это даст тот же конечный результат, это много Работа чтобы идти в ногу с. Хороший дизайн разделенного туннеля делает прямо противоположное; он указывает ограниченную сеть (VPN компании), которой требуется специальный путь (через шлюз VPN), а все остальное должно использовать «обычные средства».

О, и если у вас нет информации, вы можете получить текущую информацию о маршруте, запустив

netstat -nr

Запустите его, пока вы используете VPN, чтобы получить информацию о шлюзе VPN, и отключите VPN, чтобы получить информацию о обычном шлюзе.

Ruscal
источник