Настройка VPN сервера IKEv2 на Ubuntu 16.04 LTS + iPhone

Сегодня покажу как на VPS сервере с Ubuntu 16.04 настроить VPN сервер с протоколом IKEv2  и подключим к нему IPhone через заранее созданный конфигурационный файл. Подготовка

Шаг 1: Установка Strongswan Package

Шаг 2: Редактируем strongswan.conf

Для быстрой очистки файла делаем

И вставляем следующий текст

Вы можете заменить Google DNS на любые другие.

Шаг 3: Редактируем ipsec.conf

Чистим файл аналогичным способом

Копируем следующие настройки.

Шаг 4: Редактируем ipsec.secrets (логины и пароли пользователей)

Чистим файл

Вставляем

PSK — вводите любую последовательность символов. Можно сгенерировать тут:

http://darkvoice.dyndns.org/wlankeygen/

myusername — логин и дальше в кавычках идет пароль.

Шаг 5: Правила iptables

Нужно узнать основной сетевой интерефейс. Обычно это eth0, но лучше проверить

Как видим интерфейс у нас ens3.

Теперь подставляя нужный интерфейс вводим следующее

Теперь нужно включить IP forwarding

И чтобы не делать это после каждой перезагрузки, добавьте следующую строку в файл /etc/sysctl.conf

Затем перезагрузить его введя

И перезагружаем ipsec

Шаг 6: Создать файл конфигурации для телефона

Создаем файл с именем myusername.mobileconfig и загружаем его на сервер в публичный доступ. Затем заходим с телефона по адресу и скачиваем файл — iPhone предложит установить конфигурацию.

Где написано @@Заменить …@@ заменяем целиком с @@.

uuidgen — запускаем в консоли в linux

Вывод команды пишем в файл. В каждую строку — разное значение.

Шаг 7: Настраиваем IPhone

После того как в браузере ввели адрес файла с конфигом — устанавливаем конфигурацию. Ничего сложного нет, ниже скриншоты.




После установки заходим в Настройки и включаем VPN. Если что-то пошло не так, смотрите логи и разбираетесь, либо пишите в комментариях — я помогу.

Логи подключений пишутся в /var/log/syslog

Загруженные плагины можно посмотреть командой

 

12 комментариев

  • Юрок

    05.06.2017

    Я начинающий линуксойд, но уже могу с нуля многое поднять. Не так давно заинтересовался VPN и никак не могу понять. VPN можно поставить на чистую (к примеру) Ubuntu или нужно чтоб на ней был шлюз и внешний IP у меня динамический, он должен обязательно быть статичесиким…?

    Ответить (Reply)
    • nlinberg

      21.08.2017

      Для VPN важно, чтобы к нему могли подключится Ваши клиенты. Если клиенты это телефоны с подключением по 3G\LTE, то нужен белый IP (статический или динамический — тут зависит от реализации, можно dyndns задействовать к примеру). А если клиенты это устройства, подключаемые по локальной сети через wi-fi, то тут уже не важен IP белый или NAT.
      Все зависит от ваших целей, а дальше смотрите какие варианты достижения ваших целей существуют.

      Ответить (Reply)
  • Дмитрий

    29.01.2018

    Не подскажете, а такое подключение подойдет для iphone 4 с iOS 7.1.2 ?
    Или это только на более поздних айфонах возможно?

    Ответить (Reply)
  • Павел

    20.04.2018

    Подскажите, в чем может быть причина, пожалуйста:
    сервер успешно создался, подключение к нему проходит, все хорошо. Но в созданной vpn интернета нет. С утройства, подключенного к нему, ничего не открывается, а пингуется только сам vpn сервер, по внешнему ip.

    Ответить (Reply)
  • Виктор

    20.04.2018

    Подскажите, как настроить данное соединение в windows?

    Ответить (Reply)
  • xakup_elliot

    20.04.2018

    Спасибо за мануал! Всё работает.

    Ответить (Reply)
  • Vladimir

    29.04.2018

    С уcтройства, подключенного к VPN нет выхода в интернет.

    Ответить (Reply)
  • Бобёр

    05.06.2018

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

    Ответить (Reply)
  • Os_gs

    18.06.2018

    Добрый день! Вы можете настроить авторизацию по сертификатам и по ipsec в чистом ввиде. Нужно чтоб работало на iPhone. Готов оплатить ваш труд.

    Ответить (Reply)
  • Maks

    01.10.2018

    Подскажите по следующему вопросу:
    Собрал все строго по инструкции, все работает.
    Добавил учетные данные для второго устройства, как только подключаюсь с планшета — телефон теряет связь с инетом, но VPN поднят.
    В логах ошибка :
    12[IKE] no virtual IP found for %any6 requested by
    Как правильно настроить по данной инструкции для двух устройств?

    Ответить (Reply)
    • nlinberg

      02.10.2018

      Если быть честным, у меня тоже были проблемы с добавлением второго устройства. Я разбираться не стал, а просто открыл тот же файл и на втором телефоне.

      Ответить (Reply)

Добавить комментарий для nlinberg Отменить ответ