Со всей отдачей
На aliexpress
или на яндекс маркете
Приглашаю вступить в моё сообщество
UPD:
Реклама: ООО "АЛИБАБА.КОМ (РУ)" ИНН: 7703380158
Реклама: ООО "Яндекс Маркет" ИНН: 9704254424
На aliexpress
или на яндекс маркете
Приглашаю вступить в моё сообщество
Реклама: ООО "АЛИБАБА.КОМ (РУ)" ИНН: 7703380158
Реклама: ООО "Яндекс Маркет" ИНН: 9704254424
P.S. Попутно, художник слегка переделал список запланированных рисунков («I realized I accidentally repeated a couple of foxes in the list, so I did some tweak…»):
По работе понадобилось иметь доступ к некоторыми серверам в кушерях, с таким подключением. Ну и внезапно столкнулся с проблемами когда разные типовые конфигурации не сработали. Причем как не сработали - представьте себе два клиента, один стандартный клиент Windows (шлюз, логин, пароль - и привет), другой - NetworkManager-strongswan в альтлинукс. Оба в одной подсети. NM вообще не работает.
Повышаю логи харон - и вижу, что клиент в валидном но wildcard сертификате сервера находит CN типа *.domain.com. И естественно реальный сервер имеет отличное имя.
И по политикам клиента это харам все. Нельзя соединятся - рестрикшен там разный.... И хрен разберешь где работает, вроде как на клиенте. Наверняка есть опция "не паниковать если идент сервера кривой", но я не нашел.
Тут прислали мне скриншот добрые люди из NM ubuntы - и видно там что для таких случаев там поле предусмотрели, вводишь id ожидаемый от сервера и все ок (хотя вообще странно это - почему не галка: "принимать кривой идент сервера"? Хотя впрочем понятно - так больше определенности и безопасности. Абы что прислать нельзя.).
Ну а в альтлинуксе более старая версия NM - там этого костыля нет. Но, думаю - давай прям в файл конфигурации закину опцию remote-ident. И вуаля - соединение поднялось! Правда связи нет... И NM при любых попытках нажать ОК в свойствах подключения - неизвестные ему опции убирает. Что делать? решил собрать свежий NM. Ну и заодно плагин strongswan, ну и сам strongswan уже.
И все вроде бы проканало, но выяснилось, что нужен еще плагин под плазму,зачемто. А его без самой плазмы.... я даже не стал узнавать можно ли собрать. Так как даже если можно - то это уже спорт а не работа. Бросил это дело - дождусь обновления.
Ну и естественно - решил сам strongswan клиент настроить. Тот настроился с ходу, получил адреса, установил маршруты, подкинул DNS - но есть проблема. Связи нет.
Представьте себе - два клиента, один windows другой linux, в одной подсети. Оба соединяются, но под линуксом не работает связь в итоге.
IKEv2 сложный протокол - особенно в реализации под линукс, с его правилами и xfrm политиками - он совсем не похож на обычные туннельные протоколы. (да - вот так, всю жизнь считал ipsec разновидностью тоннельных протоколов и вот только сегодня вдруг по настоящему понял что это не так) Куча опций с довольно самобытными названиями напрягает). В общем - в итоге вышла такая шляпа:
Сначала добивался чтобы заработала esp in UDP. Понадобилось какие то переменные sysctl подправить чтобы трафик завернуло в политики ipsec. Ок. Но связь не заработала).
Стал снимать дамп на внешнем интерфейсе маршрутизатора, тоже альтлинукс кстати,- что там уходит. Вижу что уходят esp in udp, но ответа нет никакого. Ну может, думаю, кудато в другое место приходит ответ, какие нибудь попытки ответить на другой порт, изза того что сервер подозревает NAT а он не правильно работает... но нет. Все перепроверил.
Включил виндовс клиента, и вижу - те же самые пакеты уходят). Но на них сервер отвечает). И единственное отличие - чуть меньше длинна.
И тут я заподозрил что есть проблема с ключами esp. Постучался к ИИ, че-как, говорю, по умолчанию для esp в windows клиенте используется? Едрит тот накидал мне разного.... Ничего не подошло.
Отдельно хочется отметить что по идее опций по хешированию и тп - в настройках не было, тоесть клиент сам должен был согласовать вариант подходящий серверу, и непонятно почему - но он использовал не все алгоритмы для esp. Возможно sha128 уже всё... для разработчиков strngswan. А сервер - вероятно согласовался для использования sha256 для ike но при этом согласовал но не смог использовать для esp..... В итоге он просто не мог распаковать то что я ему прислал и тупо забил на моего клиента.
В общем - поставил я sha128 в настройках esp принудительно, и вуаля - сервер начал отвечать мне). Связь появилась.
- Подготовьте мне отчет за месяц по остаткам!
- Сейчас никак, нужно время...
- Что еще случилось опять?
- Шеф, работа встала! Обновили 1с, теперь Ничего не работает!
- Так выщывайте техподдержку, чего ждете?
- Техподдкржка уже в работе...
- Что они там делают так долго-то?
Тем временем техподдержка: