Программное создание L2TP VPN в Mac OS X

Я пытаюсь создать приложение, которое можно использовать для подключения к VPN с использованием протокола L2TP для приложения Mac OSX с использованием Objective C.

Я много ищу по этому поводу, но не смог найти подходящего примера или учебника.

Я нашел halo/macosvpn для подключения mac os vpn, но это инструмент командной строки, который я хотел бы сделать в своем приложении.

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

Любая помощь будет оценена...


person Malav Soni    schedule 02.03.2015    source источник
comment
Сэр, у вас есть решение?   -  person Sawan Cool    schedule 14.09.2015
comment
Разве macosvpn не является нужным вам примером? Он написан на Objective-C и специально поддерживает протокол L2TP.   -  person MatzFan    schedule 11.02.2016
comment
Это решено .. спасибо за ответ   -  person Malav Soni    schedule 12.02.2016
comment
@MalavSoni Не могли бы вы поделиться своим решением?   -  person Stanislav Mayorov    schedule 07.06.2018


Ответы (1)


Нет, вам нужно использовать SCNetwork и Helper Tool (чтобы получить root-доступ). С помощью этой ссылки вы сможете создать протокол L2TP и подключиться к нему.

Это работает даже на последней версии MacOS 11 Big Sure.

Вспомогательный инструмент необходим для получения root-доступа, чтобы вы могли вносить изменения в системную связку ключей. Туда вы поместите пароль и общий секрет, потому что конфигурация не сможет их воспринимать из других мест. Создав конфигурацию vpn с помощью SCNetwork, мак не сможет автоматически подключаться.

Для подключения к созданному профилю нужно программно выполнить команду терминала

networksetup -connectpppoeservice "name VPN profile"
person Vasiliy Neskafe    schedule 05.02.2021