Легко настраиваем VPN на своем сервере для macbook и ios

В какой то момент некоторые нужные мне сайты перестали открываться, например linkedin. И я решил исправить эту ситуацию и начать использовать какой нибудь VPN.

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

Я давно пользуюсь услугами ruweb потому что у них достаточно демократичные цены. И для моей задачи они тоже подходят, так как у них есть сервера в европе

Собственно я заказал себе micro, поставил на него Ubuntu и начал настраивать VPN.

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

Установка Docker

На всякий случай официальная документация

# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

# Add the repository to Apt sources:
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo docker run hello-world

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

docker pull hwdsl2/ipsec-vpn-server

Настраиваем VPN для Mac и IOS

# Далее создаем файл с конфигурацией. На данном этапе оставим его пустым
sudo touch vpn.env

# запускаем докер
docker run --name ipsec-vpn-server --env-file ./vpn.env --restart=always -v ikev2-vpn-data:/etc/ipsec.d -v /lib/modules:/lib/modules:ro -p 500:500/udp -p 4500:4500/udp -d --privileged hwdsl2/ipsec-vpn-server

# Если докер запустился то формируем файл для мобилки 
docker exec -it ipsec-vpn-server cat /etc/ipsec.d/vpnclient.mobileconfig > ~/vpnclient.mobileconfig

# Скачиваем себе файл на компьютер
scp root@вашIPадрес:~/vpnclient.mobileconfig vpnclient.mobileconfig

После того как скачали файл на телефон или macbook кликаем по файлику двойным кликом. Должна появиться всплывашка говорящая что профайл был добавлен. Заходим в настройки -> Приватность и безопасность -> Профили

Дальше кликаем на не установленный сертификат и устанавливаем его.

Все, теперь у вас есть VPN на устройстве. Идем в настройки, ищем VPN(на телефоне) или Сеть, подключаемся к ВПН и наслаждаемся.

Как настроить VPN для других систем напишу в следующий раз. Но по сути можно просто почитать документацию и донастроить файл vpn.env и правильно подключиться к сервису.