Две приложения отварят връзки към един и същ офис сървър и само едно от тях трябва да използва тунела. Маршрутът не може да изрази това желание, защото таблиците за маршрутизация се основават на адресати и нямат представа кой процес е отворил сокета. Това, което хората искат, и това, от което се нуждаят, често са различни неща. Разделете двете, преди да промените каквато и да е конфигурация.

Селекторът е адресат, никога процес

Всяко решение за маршрутизация започва с адрес на местоназначение и завършва с интерфейс. Ядрото никога не пита коя програма е изпратила пакета, а в macOS и pf не маршрутизира по процес, така че правило на защитната стена не може да постави едно приложение на друг път. Затова един и същ сървър, независимо дали е достигнат от браузър или от инструмент за отчети, използва един път за двете. Разделението на ниво приложение затова трябва да идва от нещо друго освен маршрут: VPN приставка, която притежава сокета, прокси, което поема връзката от името на приложението, или отделен мрежов стек. Нищо от това не е промяна на маршрутизацията.

Две приложения, които говорят с един адрес, са най-чистият тест на един проект. Ако отговорът не може да се различава между тях, проектът е базиран на адресат, както и да се нарича.

Какво обикновеният split tunnel наистина дава

Split tunnel инсталира маршрути за частните префикси и оставя всичко останало на физическия път. Обикновено това означава заявката: да се стигне до офис сървъра през тунела, а публичното сърфиране да остане директно. Просто е, всеки обикновен клиент го поддържа и се налага от същия механизъм като всеки друг маршрут. Проверете конкретния адресат с route -n get, вместо да четете маршрута по подразбиране, защото split tunnel често оставя маршрута по подразбиране недокоснат.

Ръчното редактиране на маршрута по подразбиране не е преминаване към нищо. То се бори със собственото възстановяване на маршрутите на клиента и при клиенти, които инсталират защитна политика, може да остави машината в състояние, което нито вие, нито клиентът очаквате. Вместо това конфигурирайте split tunnel в поддържаните настройки на клиента.

Какво изисква VPN за отделни приложения в macOS

Истински VPN за отделни приложения в macOS е функция Network Extension, управлявана от конфигурационен профил. Управляващият товар свързва избрани приложения с VPN конфигурация и системата след това насочва трафика на тези приложения съответно. Това е управлявано внедряване, което означава MDM, подписан профил и администратор, който притежава и двете.

Ръчната инсталация на клиента не създава това свързване, а обичайният панел с настройки не прави приложенията избираеми поотделно. Доставчикът може да предостави собствени правила за приложения и те следват неговата документация, а не общо правило.

Три пътя до разделяне по приложения без MDM

Където управлението не е налично, прокси е практичният отговор. Задайте собствената прокси конфигурация на приложението или използвайте PAC файл, който избира по адресат и протокол само за това приложение.

Локално прокси завършва връзката и я създава отново през тунела, така че приложението никога не се нуждае от маршрут. Втората опция е отделен мрежов стек: виртуална машина или контейнер със собствен маршрут по подразбиране, до който приложението достига през локален адрес. Третата е да приемете маршрутизация, базирана на адресат, и да се откажете от изискването, което е честно, когато и двете приложения могат да използват тунела. И трите могат да се тестват и нито една не се преструва, че маршрутът познава процеси.

Опишете заявката така, че отговорът да е недвусмислен

Опишете работния процес, а не механизма: на кое приложение коя услуга е нужна, трябва ли друго приложение да се държи далеч от същата услуга и какво трябва да се случи, докато тунелът не работи. Тези три отговора избират проекта. Те казват на администратора и дали заявката е промяна на маршрутизацията или проект за внедряване.

Изрично включете случая с изключеното приложение. Клиент, който спира приложение, когато защитеният му път не е достъпен, се държи различно от този, който му позволява да се върне на физическия интерфейс, и потребителите веднага забелязват тази разлика. Назовете очакването в тикета. След това проверете на действителната машина, защото същият продукт в macOS често се държи различно, отколкото в Windows, и неговата документация за macOS е единственият надежден източник за това какво правят неговите настройки.

Подобни статии