ipsec: Не удается аутентифицировать: не найден общий секретный ключ для

Вопрос или проблема

Я использую Openswan с ipsec, и ipsec постоянно жалуется на отсутствие общего ключа. Я использую Ubuntu 14.04.

Я просто экспериментирую на нескольких внутренних системах, так как я новичок в этом.

Вывод:

root@ip-10-1-1-4:/etc# ipsec auto --up L2TP-PSK
104 "L2TP-PSK" #10: STATE_MAIN_I1: инициировать
003 "L2TP-PSK" #10: получен полезный нагрузка Vendor ID [Openswan (эта версия) 2.6.38]
003 "L2TP-PSK" #10: получен полезный нагрузка Vendor ID [Dead Peer Detection]
003 "L2TP-PSK" #10: получен полезный нагрузка Vendor ID [RFC 3947] метод установлен в=115
003 "L2TP-PSK" #10: Невозможно аутентифицировать: не найден предшествующий общий ключ для `10.1.1.4' и `10.1.1.36'. Атрибут OAKLEY_AUTHENTICATION_METHOD
003 "L2TP-PSK" #10: нет приемлемого преобразования Oakley
214 "L2TP-PSK" #10: STATE_MAIN_I1: NO_PROPOSAL_CHOSEN

Сервер:

10.1.1.36 %any : PSK "69EA16F2C529E74A7D1B0FE99E69F6BDCD3E44"

Клиент:

%any 10.1.1.36 : PSK "69EA16F2C529E74A7D1B0FE99E69F6BDCD3E44"

Я знаю, что не имеет большого значения, какие стороны разговора фактически обозначены как “левая” и “правая”, так как они определяются автоматически, и я не знаю, как эти обозначения соотносятся с двумя адресами в двух вышеуказанных строках. Тем не менее, я попробовал поменять оба значения и использовать все IP (чтобы не было значений “%any”). Я также не уверен, какая сторона разговора инициирует жалобу.

Может ли кто-то с большим опытом подсказать, что делать дальше 🙂 ?

Спасибо. Это, конечно, немного запутано для новичка.

  • Вы импортируете свой файл .secrets в /etc/ipsec.secrets? (это была моя проблема)
  • Если да, попробуйте заменить двойные кавычки вокруг вашего секрета на одинарные. (Я нашел это предложение в документации openswan, но не тестировал ни так, ни так.)

  • Строка секрета должна следовать за пустой строкой. (То же самое, как выше, предложено в документации openswan, но не тестировалось ни так, ни так)

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

/etc/strongswan.d/charon/stroke.conf

По какой-то причине без этого он не читал /etc/ipsec.secrets

В моем случае это произошло, потому что я создал PSK внутри /etc/ipsec.secret вместо правильного пути /etc/ipsec.secrets. Небольшое, но важное отличие!

Ответ или решение

Проблема, с которой вы столкнулись при использовании Openswan с IPSec, заключается в ошибке аутентификации, которая говорит о том, что не найден предварительно установленный ключ (PSK) для указанных IP-адресов. Давайте разберем ваше сообщение об ошибке более подробно и предоставим несколько рекомендаций по устранению этой проблемы.

Ошибка аутентификации IPSec: анализ

Вы привели результат выполнения команды, которая сигнализирует об отсутствии предварительно установленного ключа для указанных адресов (в данном случае 10.1.1.4 и 10.1.1.36). Основные сообщения об ошибках, которые стоит учесть:

  • "Can’t authenticate: no preshared key found": система не может найти указанный предварительно установленный ключ (PSK) для связи между двумя IP-адресами.
  • "STATE_MAIN_I1: NO_PROPOSAL_CHOSEN": возможно, параметры шифрования или безопасности, предложенные одной из сторон, не были приняты другой стороной.

Шаги для решения проблемы

  1. Проверьте файл /etc/ipsec.secrets:
    Убедитесь, что вы правильно указали предварительно установленный ключ. Это должно выглядеть примерно так:

    10.1.1.36 %any : PSK "69EA16F2C529E74A7D1B0FE99E69F6BDCD3E44"
    %any 10.1.1.36 : PSK "69EA16F2C529E74A7D1B0FE99E69F6BDCD3E44"

    Обратите внимание, что важно использовать одинарные кавычки вместо двойных для указания секрета, как вы уже упомянули в вашем вопросе.

  2. Проверьте путь к файлу секрета:
    Если вы используете Strongswan, как указали в одном из ваших сообщений, убедитесь, что в файле /etc/strongswan.d/charon/stroke.conf правильно указан путь к файлу /etc/ipsec.secrets.

  3. Добавьте пустую строку в конце файла:
    Некоторые версии Openswan могут требовать, чтобы после строки с PSK была добавлена пустая строка. Убедитесь, что вы добавили закрывающую пустую строку в вашем файле /etc/ipsec.secrets.

  4. Проверьте права доступа на файл:
    Убедитесь, что файл /etc/ipsec.secrets доступен для чтения ему пользователем, от имени которого запускается служба IPSec. Вы можете использовать команду ls -l /etc/ipsec.secrets для проверки прав доступа.

  5. Используйте правильные IP-адреса:
    Если у вас есть несколько интерфейсов или IP-адресов, убедитесь, что они правильно указаны в конфигурации. Вы можете попробовать использовать явные IP-адреса вместо %any.

  6. Правильная конфигурация обеих сторон:
    Убедитесь, что конфигурации на обеих сторонах (клиенте и сервере) соответствуют друг другу. Если на одной стороне указан 10.1.1.36, убедитесь, что та же информация присутствует с правильными конфигурациями на противоположной стороне.

Заключение

Ошибки, связанные с аутентификацией IPSec, могут быть вызваны различными причинами, включая неправильные конфигурационные параметры, отсутствие PSK или проблемы с доступом к файлам. Следуя указанным выше шагам, вы сможете устранить проблему и успешно установить VPN-соединение с использованием IPSec. Если же вы продолжаете сталкиваться с трудностями, рекомендуется обратиться к документации Openswan или на специализированные форумы для более детальной помощи.

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

Капча загружается...