Настройка VPN в Linux

Для подключения к IKEv2 VPN необходимо получить конфигурационный файл (.p12) от администратора VPN.

Установка

Сначала установите плагин strongSwan для NetworkManager:

Ubuntu и Debian

sudo apt-get update
sudo apt-get install network-manager-strongswan

Arch Linux

sudo pacman -Syu
sudo pacman -S networkmanager-strongswan

Fedora

sudo dnf install NetworkManager-strongswan-gnome

CentOS

sudo yum install epel-release
sudo yum --enablerepo=epel install NetworkManager-strongswan-gnome

Настройка сертификатов

Безопасно передайте файл .p12 на ваш Linux-компьютер. Затем извлеките сертификаты:

# Извлечение сертификатов (замените vpnclient.p12 на имя вашего файла)
openssl pkcs12 -in vpnclient.p12 -cacerts -nokeys -out ca.cer
openssl pkcs12 -in vpnclient.p12 -clcerts -nokeys -out client.cer
openssl pkcs12 -in vpnclient.p12 -nocerts -nodes -out client.key

# Удаление файла .p12 (необязательно)
rm vpnclient.p12

# Защита файлов сертификатов (рекомендуется)
sudo chown root:root ca.cer client.cer client.key
sudo chmod 600 ca.cer client.cer client.key

Для Fedora 39+ Важно

Fedora 39+ отключает поддержку SHA-1 по умолчанию. Необходимо включить её:

sudo update-crypto-policies --set DEFAULT:SHA1

После выполнения этой команды перезагрузите систему.

Также для Fedora требуется переместить файлы в системные директории:

sudo mkdir -p /etc/ipsec.d/{certs,private}
sudo mv ca.cer client.cer /etc/ipsec.d/certs/
sudo mv client.key /etc/ipsec.d/private/
sudo chown root:root /etc/ipsec.d/certs/* /etc/ipsec.d/private/*

Настройка подключения

  1. 1
    Откройте настройки сети

    НастройкиСетьVPN. Нажмите +.

  2. 2
    Выберите тип

    Выберите IPsec/IKEv2 (strongswan).

  3. 3
    Настройте шлюз

    Введите имя подключения и IP-адрес или DNS-имя VPN-сервера.

  4. 4
    Выберите сертификаты
    • Сертификат CA: ca.cer
    • Аутентификация: Сертификат(/приватный ключ)
    • Сертификат (файл): client.cer
    • Приватный ключ: client.key
  5. 5
    Настройте алгоритмы
    • Запрашивать внутренний IP-адрес: Включить
    • Включить пользовательские предложения: Включить
    • IKE: оставить пустым
    • ESP: aes128gcm16
  6. 6
    Подключитесь

    Нажмите Добавить, затем включите переключатель VPN.

Командная строка

Альтернативно, для подключения через терминал:

# Подключение
sudo nmcli c up VPN

# Отключение
sudo nmcli c down VPN

Возможные проблемы

Проверьте, что установлен пакет network-manager-strongswan. Убедитесь, что файлы сертификатов находятся в правильных директориях и имеют корректные права доступа.

Эта ошибка связана с конфликтом NetworkManager. Отредактируйте файл /etc/netplan/01-netcfg.yaml и замените renderer: networkd на renderer: NetworkManager, затем выполните sudo netplan apply.

Fedora 39+ отключает SHA-1 по умолчанию. Выполните команду sudo update-crypto-policies --set DEFAULT:SHA1 и перезагрузите систему. Также убедитесь, что сертификаты принадлежат root.

Убедитесь, что файлы сертификатов имеют правильные права: sudo chown root:root ca.cer client.cer client.key и sudo chmod 600 ca.cer client.cer client.key. Файлы должны быть в /etc/ipsec.d/certs/ и /etc/ipsec.d/private/.

Остались вопросы?

Вы можете написать нам, мы постараемся помочь вам в его решении