Форум Kerio-rus

Вернуться   Форум Kerio-rus > Продукты > Kerio VPN

Важная информация

Ответ
 
Опции темы
Старый 18.09.2011, 07:57   #1
EnMan
Телепат-тугодум
 
Аватар для EnMan
 
Регистрация: 11.05.2006
Адрес: Lipetsk
Сообщений: 4,588
По умолчанию Инструкция. Отказоустойчивость сервера Kerio VPN.

Имеем домен раскиданный по городам и весям от Калининграда до Владивостока. В удаленных филиалах заюзаны контроллеры домена в режиме read only, некоторые должны помнить эту незаслуженно обделенную вниманием опцию DC по Windows Server 2000. В 2003-ем ее убрали, в 2008-ом, опомнившись, вернули взад. И это гуд. Ну да ладно, отвлекся.

Филиалы все смотрят в центральный офез на сервер Kerio VPN. В связи с этим возник вопрос, как автоматизировать переключение тунелей на другой канал интернета в случае падения основного, обеспечив, тем самым, отказоустойчивость сервера VPN, при условии, что в центральном офисе несколько ISP. Ведь падение канала, на который смотрят все филиалы приведет к тому, что остановится репликация между контроллерами доменов и протухнет очень много других плюшек. Что понадобится нам для этого? Записывайте, пацаны.

1. [Для просмотра данной ссылки нужно зарегистрироваться]
2. [Для просмотра данной ссылки нужно зарегистрироваться]
3. Аккаунт на [Для просмотра данной ссылки нужно зарегистрироваться]

Устанавливаем и настраиваем PRTG. Отдельно остановлюсь на том, что в принципе, если необходимости в мониторинге множества устройств нет, то вполне хватит свободной версии, если мне не изменяет память, на пять сенсоров. Мы будем юзать всего один. Если вам система понравилась и захотите расшириться до коммерческой версии, то в известном месте можно найти решение для вечного триала на пять тысяч сенсоров. Кстате, решение для последних версий появилось в паблике не без участия вашего покорного слуги.

Для начала заведем аккаунт на сервисе DynDNS, вполне достаточно обычного аккаунта, не PRO. Отличаются они кол-вом обслуживаемых имен (в бесплатной версии ограничено пятью именами) и отсутствием не сильно значимых плюшек вроде отсутствия логов обновлений адреса. Заведем там имя для адреса VPN, на который настроены тунели. Я не стану отдельно описывать процедуру регистрации IP адреса, уверен, что если вы уже задумываетесь о отказоустойчивости своего VPN сервера - это не составит труда. Я лишь остановлюсь на том, что DynDNS имеет [Для просмотра данной ссылки нужно зарегистрироваться] для обновления адреса посредством HTTP запроса. Синтаксис [Для просмотра данной ссылки нужно зарегистрироваться].

Итак, как мы будем мониторить доступность канала? Можно мониторить порт самого Kerio VPN (и я думаю, что это будет правильней, чем сделано у меня сейчас, но руки не доходят переделать). Я мониторю доступность самой веб морды ее загрузкой. Создадим HTTP сенсор в PRTG. Настраиваем сенсор по картинке.



Теперь создадим notification, т.е. действие, которое мы будем применять в случае падения (недоступности вебморды). В админ-консоли PRTG идем Setup - Notifications. У меня, как видите настроены два действия, для переключения на резервный канал и для возврата на основной.





Настало время положить консольную утилиту wget в папку Notifications/exe в месте, где располагается ваш PRTG сервер. Почему мы испольуем wget? Неужели PRTG не может сам выполнить HTTP запрос, спросите вы? Отвечаю. Не умеет зайти на сайт, закрытый на http access по ссылке вида [Для просмотра данной ссылки нужно зарегистрироваться] Более того, эта возможность в IE отсутствует с версии 8 и возвращена не будет ибо несекьюрно. Ну и хрен с ними. Поимелся я с этим полдня, даже [Для просмотра данной ссылки нужно зарегистрироваться] у разработчиков. А тут вспомнил, как кто-то настраивал у нас разлогон на Kerio Control при помощи wget и пошел другим путем. Настраиваем notification. Синтаксис запроса такой для смены IP адреса через IE или другой браузер будет такой
Код:
http://username:password@members.dyndns.org/nic/update?hostname=yourhostname&myip=ipaddress&wildcard=NOCHG&mx=NOCHG&backmx=NOCHG
Но как я уже сказал, с адресной строки браузера это работает, а вот через HTTP запрос в PRTG - нет. Поэтому настраивем запуск внешней программы в этом действиии. Выбираем wget, в аргументы, согласно справке wget вписываем

Код:
-q --no-check-certificate --http-user=yourusername  --http-password=yourpassword  "https://members.dyndns.org/nic/update?hostname=vpn_dnsname&myip=XXX.XXX.XXX.XXX"


Сохраняем действие. Аналогичное действие создаем для второго провайдера, только в аргументах запуска wget меняем IP адрес первого канала XXX.XXX.XXX.XXX на адрес второго YYY.YYY.YYY.YYY Остается дело за малым, настроить срабатывание действия. Возвращаемся в настройки созданного нами HTTP сенсора, проверяющего доступность канала. На закладке Notifications включаем действие переключения в резервный канал при условиях, что основной канал down в течении 120 секунд (on notification). В случае возвращения канала в рабочее стостояние включаем действие возврата в основной канал (off notification). У меня еще включена отпрвка SMS сообщения о этом событии, здесь я не буду подробно об этом останавливаться. Сохраняем. Готово.



Я очень давно хотел это описать, но только в отпуске дошли руки, писалось отчасти под коньячными парами, поэтому может быть сумбурно и непоследовательно. Принимаются дополнения и исправления. Общий смысл, уверен, ясен. Мониторинг доступности - переключение имени на другой адрес через http запрос - смена назад в случае включения канала. Если кто то уже использует другие системы мониторинга, например, Zabbix, я уверен что и там можно реализовать подобный финт ушами. У DynDNS существует подобный севрвис искаропке, называется он [Для просмотра данной ссылки нужно зарегистрироваться], но судя по списку клиентов, использующих его стоит он нереально ебенячих денег. С пятью нулями в американскех рублей в месяц. Ну а мы сами тут организуем DynECT для нищих.
__________________
керио

Последний раз редактировалось EnMan; 15.09.2015 в 11:13.
EnMan вне форума   Ответить с цитированием Вверх
Старый 20.09.2011, 08:23   #2
EnMan
Телепат-тугодум
 
Аватар для EnMan
 
Регистрация: 11.05.2006
Адрес: Lipetsk
Сообщений: 4,588
По умолчанию

Тему почистил от лирики, прилепил вверху. Может быть кому то поможет, раньше подобный вопрос возникал часто.
__________________
керио
EnMan вне форума   Ответить с цитированием Вверх
Старый 27.03.2012, 09:35   #3
mikhon
Навичёг
 
Аватар для mikhon
 
Регистрация: 31.05.2011
Адрес: Ставрополь
Сообщений: 20
По умолчанию Re: Инструкция. Отказоустойчивость сервера Kerio VPN.

На сколько я знаю сервис DynDNS прекратил обслуживание на безвозмездной основе.
Что есть нового в подобных решениях, что посоветуете?
mikhon вне форума   Ответить с цитированием Вверх
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 10:06. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2019, vBulletin Solutions Inc. Перевод: zCarot
© Kerio-rus.ru
Фонарёвка: всё о фонарях