Поднимаем VPN + биллинг UTM5 на win2003



  • 1. Установка и настройка Routing and Remote Access
  • 2. Установка UTM
  • 3. Настройка UTM
  • 4. Файлы


  • Итак, с чего начать реализацию связки VPN + UTM5 на Windows Server 2003. Прежде чем начать настройку RASS нужно проверить, установлена ли служба IAS (Internet Authentication Service). Чтобы это проверить, нужно зайти в установку/удаление программ на панели управления в раздел УСТАНОВКА КОМОНЕНТОВ WINDOWS и посмотреть состав компонентов Networking Services. Если эта служба установлена, то снять с неё галочку (деинсталлировать). Эта служба нечто иное, как Windows-RADIUS. Понятно, что 2 RADIUS-сервера (UTM-RADIUS и Windows-RADIUS) на одном компьютере работать не могут, т.к. используют для работы одни и те же порты. Соответственно при установленной службе IAS UTM-RADIUS просто не запустится.

    Ещё одна служба, которая мешает правильной работе UTM, точнее Apache, это – World Wide Web Service, которая находится в составе компонента Windows – Application Server в группе сервисов IIS (Internet Information Services). Её тоже нужно деинсталлировать, иначе Apache не стартует, т.к. эта служба использует 80 порт. Если на сервере необходим WEB-сервер, то его с успехом может заменить тот же Apache, используя 80-й порт. UTM предоставляет доступ пользователя к статистике по HTTPS протоколу, а он соединяется по 443 порту с шифрованием на основе сертификата. Можно, конечно инсталлировать Apache на порт 8080, но зачем 2 WEB-сервера на одном компьютере?

    На сервере не должно быть установлено SQL-сервера и MySQL.
    После деинсталляции этих служб можно приступать к установке и настройке RASS.

    1. Установка и настройка Routing and Remote Access


    1.1. Запускаем мастер установки RASS.

    1.2. Отказываемся от всех стандартных схем и выбираем ручной режим настройки. Кажется он последний в списке предлагаемых мастером вариантов.
    1.3. После запуска RASS начинаем его настройку.

    1.4. Заходим в свойства сервера RASS (правой кнопкой мыши давим на значок сервера с зелёной стрелкой и выбираем СВОЙСТВА).

    1.5. На вкладке ОБЩИЕ выбираем режим МАРШРУТИЗАТОР ЛОКАЛЬНОЙ СЕТИ И БЫЗОВА ПО ТРЕБОВАНИЮ и СЕРВЕР УДАЛЁННОГО ДОСТУПА, жмём ОК и перезапускаем RASS.

    1.6. Опять заходим в свойства сервера RASS на вкладку БЕЗОПАСНОСТЬ.

    1.7. Здесь в разделе СЛУЖБА ПРОВЕРКИ
    ПОДЛИННОСТИ указываем RADIUS Authentication и нажимаем кнопку НАСТРОИТЬ и в открывшемся окне, нажимаем кнопку ДОБАВИТЬ.

    1.8. Если UTM-RADIUS установлен на этом же компьютере, то в поле ИМЯ СЕРВЕРА пишем – 127.0.0.1. Если UTM-RADIUS стоит на другом компьютере, то указываем его IP.

    1.9. В поле СЕКРЕТ давим кнопку ИЗМЕНИТЬ и пишем – secret и подтверждаем еще раз.

    1.10. Тайм-аут, начальную оценку и порт не трогаем. Порт должен быть – 1812. Обязательно ставим галочку ВСЕГДА ИСПОЛЬЗОВАТЬ УДОСТОВЕРЕНИЕ СООБЩЕНИЯ и жмём ОК.
    1.11. Теперь в СЛУЖБЕ УЧЁТА выбираем RSDIUS Accounting и жмём кнопку НАСТРОИТЬ.

    1.12. В появившемся окне давим кнопку ДОБАВИТЬ.

    1.13. ИМЯ СЕРВЕРА так же 127.0.0.1, Секрет – secret, порт – 1813, тайм-аут и начальную оценку оставляем по умолчанию, галочку СООБЩЕНИЯ RADIUS О ВКЛЮЧЕНИИ/ОТКЛЮЧЕНИИ УЧЁТА не ставим. Давим ОК.
    1.14. Мы будем использовать протокол PPTP для VPN-подключений, поэтому галочка РАЗРЕШАТЬ ПОЛЬЗОВАТЕЛЬСКИЕ IPSEC-ПОЛИТИКИ ДЛЯ L2TP-ПОДКЛЮЧЕНИЯ нас не интересует, и мы её не ставим.

    1.15. Переходим на вкладку IP. Тут вообще очень интересная вещ.

    1.16. Сначала ставим все галочки, которые есть на этой вкладке (их три).
    1.17. В качестве адаптера для получения адресов DHCP, DNS- и WINS-серверов для клиентов VPN выбираем адаптер интерфейса, смотрящего в Internet. С него будут транслироваться все запросы к VPN пользователям.

    1.18. Теперь самое интересное. Для того, чтобы внутренний интерфейс RASS получил IP, который будет использоваться в качестве IP-сервера при подключении VPN-клиента по PPTP-тоннелю по протоколу PPP нужно в разделе НАЗНАЧЕНИЕ IP-АДРЕСОВ выбрать СТАТИЧЕСКИЙ ПУЛ АДРЕСОВ и указать здесь этот IP. Но, доблестная фирма Microsoft почему-то решила, что RASS будет работать только с Windows-RADIUS и ни с каким больше. Поэтому при задании статического пула адресов Microsoft написала проверку на количество адресов в пуле и посчитала, что их должно быть не меньше двух. Это справедливо только при работе с Windows-RADIUS, где IP адреса для клиента и сервера берутся из этого пула. В нашем случае из этого пула берётся лишь адрес для сервера, а клиенту адрес назначает UTM. На первый взгляд – проблем нет. Если бы не подлые юзеры. Как показала практика, если один юзер дал другому свой логин и пароль на VPN и они подключаются одновременно, то первый, подключившийся из них получает IP из UTM, а второй – из этого пула. Проблема в том, что трафик будет считаться только на том IP, который прописан в UTM, а второй юзер будет сидеть бесплатно. Но не всё так плохо. Выходим из свойств сервера RASS (жмём кнопку ОК внизу). Ждём кнопку Пуск, затем Выполнить и пишем команду

    netsh ras ip add range 192.168.2.254 192.168.2.254

    Опять заходим в свойства сервера RASS во вкладку IP и наблюдаем там статический пул из одного адреса 192.168.2.254. Проблема решена. К стати сеть, которую мы будем использовать для VPN, будет - 192.168.2.0/255.255.255.0.

    1.19. Заходим во вкладку PPP и убираем там галочки с пунктов МНОГОКАНАЛЬНЫЕ ПОДКЛЮЧЕНИЯ и ПРОГРАММНОЕ СЖАТИЕ ДАННЫХ. Ставим галочку на пункте РАСШИРЕНИЯ ПРОТОКОЛА УПРАВЛЕНИЯ СВЯЗЬЮ (LCP).

    1.20. Заходим во вкладку ВЕДЕНИЕ ЖУРНАЛА. Выбираем пункт ВЕСТИ ЖУРНАЛ ОШИБОК И ПРЕДУПРЕЖДЕНИЙ. Это нужно в информационных целях, чтобы знать, кто и когда подключался к RASS по VPN. Журнал дополнительных сведений включать ненужно.

    1.21. Теперь нудно настроить виртуальные порты для VPN-подключений.

    1.22. Заходим в свойства портов (кликаем правой кнопкой мыши по ПОРТЫ и выбираем СВОЙСТВА).

    1.23. Последовательно настраиваем каждый тип порта в списке.. Выбираем L2TP и тыкаем в НАСТРОИТЬ. Снимаем все галочки и ставим максимальное число портов – 0. Выбираем PPPoE и нажимаем НАСТРОИТЬ. Снимаем все галочки. Выбираем PPTP, жмём НАСТРОИТЬ. Устанавливаем галочку ТОЛЬКО ВХОДЯЩИЕ, снимаем галочку ВХОДЯЩИТЕ И ИСХОДЯЩИЕ. Максимальное число портов задаём – 128. (Это сколько людей одновременно может подключиться к VPN. Если столько не надо, то можно поставить меньше. На погоду это не влияет.) Выбираем Direct Parallel и снимаем все галочки. Этого пункта может не быть, если на сервере нет параллельного порта для принтера или он отключён в BIOS.
    В конечном итоге должна быть такая картина.

    1.24. Переходим к IP-маршрутизации.

    1.25. Здесь надо сразу определиться с файерволом. Если у тебя на сервере стоит не файервол стороннего производителя, то с ним нужно разбираться отдельно. Если стоит ISA, то её нужно снести. Она для работы с VPN не нужна. Вопрос с файерволом очень серьёзный – окончательное решение, каким файерволом пользоваться – за тобой. Я могу лишь сказать, что в базовом варианте можно настроить встроенный в RASS файервол, хотя он очень куцый, но задачу с раздачей трафика выполняет практически полностью.

    1.26. Тыкаем мышкой в ОБЩИЕ в левом окне и проверяем какие интерфейсы присутствуют в правом окне. Там должны быть оба интерфейса сети (который смотрит в Интернет и который смотрит в локальную сеть), Внутренний интерфейс и Замыкание на себя, т.е. в твоём случае 4 интерфейса. Если их нет или какого-нибудь не хватает, то их нужно добавить, щёлкнув мышкой по пустому месту в правом окне и выбрать пункт НОВЫЙ ИНТЕРФЕЙС.

    1.27. В нашем случае IP-маршрутизация должна содержать 3 пункта ОБЩИЕ, СТАТИЧЕСКИЕ МАРШРУТЫ и NAT/ПРОСТОЙ БРАНДМАУЭР. Если там нет чего-то или присутствует что-нибудь другое, то лишнее нужно удалить, а необходимое добавить, щелкнув мышкой по ОБЩИЕ и выбрав пункт НОВЫЙ ПРОТОКОЛ МАРШРУТИЗАЦИИ.

    1.28. Пункт СТАТИЧЕСКИЕ МАРШРУТЫ нам не нужен. Там должно быть пусто. Удалить мы его не можем – это неотъемлемая часть RASS. Переходим сразу к NAT.

    1.29. NAT нужен для преобразования глобальных адресов в локальные и наоборот. Тыкаем мышкой в NAT. В правом окне добавляем интерфейс, который смотрит в Интернет и заходим в его свойства (кликаем по нему правой кнопкой мышки и выбираем СВОЙСТВА)


    1.30. Объявляем его общим интерфейсом подключения к Интернет и устанавливаем галочку ВКЛЮЧИТЬ NAT НА ДАННОМ ИНТЕРФЕЙСЕ. Вторую галочку ВКЛЮЧИТЬ ОСНОВНОЙ БРАНДМАУЭР ДЛЯ ЭТОГО ИНТЕРФЕЙСА не нужно ставить, если у тебя стоит файервол. Если файервола нет, то ставить её нужно обязательно, иначе твой сервер будет виден в Интернете. Жмём ОК. Больше в NAT ничего настраивать не нужно.

    1.31. Теперь, если у тебя стоит файервол, то настройку RASS можно считать законченной. Если у тебя его нет, то нужно настроить фильтры пакетов, чтобы заблокировать раздачу Интернета по локльной сети и пустить его в VPN.

    1.32. Для этого тыкаем на ОБЩИЕ и заходим в свойства интерфейса, смотрящего в локальную сеть. Тыкаем в кнопку ФИЛЬТРЫ ВЫХОДА. В открывшемся окне Жмём кнопку СОЗДАТЬ. Ставим галочку ИСХОДНАЯ СЕТЬ и прописываем там свою локальную сеть. В твоём случае 192.168.1.0/255.255.255.0. Говорим ОК. Жмём второй раз СОЗДАТЬ. Ставим галочку исходная сеть и прописываем там IP-адрес VPN-сервера. В нашем случае 192.168.2.254/255.255.255.255. Говорим ОК. Выбираем в верху действие фильтра – ОТБРАСЫВАТЬ ВСЕ ПАКЕТЫ, КРОМЕ ТЕХ, ЧТО ОТВЕЧАЮТ КАЗАННЫМ НИЖЕ КРЕТЕРИЯМ и жмём ОК.

    1.33. ВСЁ!!! Теперь RASS настроен!!!


    2. Установка UTM.


    2.1. Запускаем UTM5Setup. Язык выбираем соответственно русский.

    2.2. Первой ставим машину JAVA.

    2.3. Запускаем повторно UTM5Setup. Теперь ставим всё остальное, сняв галочку с JAVA. При дальнейшей установке никаких премудростей нет. После окончания установки нужно зайти в сервисы и посмотреть, чтобы MySQL-NT и UTM5_CORE были запущены. Если всё работает, то замечательно.

    2.4. Далее ставим RADIUS. С ним проблем не бывает никогда.

    2.5. Теперь NDSAD. Вот тут есть много проблем. Для того, чтобы NDSAD собирал трафик на VPN нужно, чтобы драйвер WinPCAP был версии 3.1 и выше.

    2.6. После перезагрузки сервис ndsad должен запуститься. Если он свё-таки не запускается, то на сервере занят порт 9996, который ndsad использует для связи с UTM.

    2.7. Теперь инсталлируем(если не появилась в сервисах данная служба) utm5_rfw. Для этого выполняем команду:

    utm5_rfw.exe --install.

    После этого в сервисах должен появиться utm5_rfw.

    2.8. Теперь нам понадобится ещё одна программка, которая не входит в состав UTM, но без которой нельзя управлять отключениями VPN-соединений пользователей, баланс которых перевалил через 0. Это программка utm5_kill_vpn.exe. Когда я первый раз запустил UTM, то обнаружил, что при работе с RASS Windows разработчиками не предусмотрен механизм отключения VPN-соединений. К стати, отключение Интернета – самый больной вопрос в большинстве билинговых систем. Хорошо, что они хоть написали utm5_rfw, который позволяет передать управление другим программам, а то вообще была бы труба. Эту программку надо скопировать в корень диска c: Схема отключения работает так. UTM обнаруживает, что баланс пользователя стал отрицательным. Она даёт команду utm5_rfw, об отключении пользователя. Utm5_rfw вызывает utm5_kill_vpn и та даёт команду RASS Windows разорвать VPN-соединение для определённого пользователя.

    (Для того чтобы автоматом происходил РАЗРЫВ =) в UTM заходим в ПРАВИЛА FIREWALL, жмём кнопку ОБНОВИТЬ. Удаляем всё, кроме первого. Первый вызываем на редактирование. Ставим галочку – Все пользователи. ID пользователя - 0, ID группы – 0, ID тарифа – 0, Вкючение – ничего не пишем (должно быть пусто), Выключение – c:/utm5_kill_vpn.exe ULOGIN, ID брандмауэра – 1. Переменная ULOGIN содержит название VPN-соединения и передаётся программе utm5_kill_vpn.exe для отключения соответствующего VPN.)


    2.9. Вроде всё установили. Теперь переходим к настройкам.




    3. Настройка UTM


    3.1. Конфигурационный файлы.

    3.1.1. UTM5.CFG

    database_type=mysql - тип базы данных
    database=utm5 - название базы данных
    database_host=127.0.0.1 - IP компьютера с базой данных
    database_login=root - логин к базе данных
    database_password= - пароль к базе данных (без пароля)

    urfa_bind_host= 0.0.0.0 - IP с которого подключаемся к БД (с любого)

    urfa_lib_file=liburfa\librpc.dll
    urfa_lib_file=liburfa\liburfa_utils.dll
    urfa_lib_file=liburfa\liburfa_card.dll
    urfa_lib_file=liburfa\liburfa_hotspot.dll - библиотеки для работы внешних модулей
    urfa_lib_file=liburfa\liburfa_graph.dll
    urfa_lib_file=liburfa\liburfa_radius.dll

    nfbuffer_port=9996 – порт подключения NDSAD


    3.1.2. RADIUS5.CFG

    core_host=127.0.0.1 - IP, на котором находится UTM
    core_port=11758 - порт подключения к UTM

    radius_login=radius - логин системного пользователя
    radius_password=radius - пароль системного пользователя

    radius_auth_mppe=enable - авторизация по VPN

    radius_auth_vap=1 - не авторизовывать с отрицательным балансом

    radius_ssl_type=none - тип шифрования (отключено)

    radius_ippool_timeout=0 - задержка повторной авторизации (сразу)
    radius_ippool_acct_timeout=0 - освобождать IP сразу после разрыва VPN


    3.1.3. RFW5.CFG

    rfw_name=127.0.0.1 - имя файервола (используется IP)

    firewall_type=local - тип файервола (локальный)

    core_host=127.0.0.1 - IP адрес UTM
    core_port=11758 - порт для связи с UTM

    rfw_login=web - логин системного пользователя
    rfw_password=web - пароль системнго пользователя

    3.1.4. NDSAD.CFG

    dummy all - отключения сбора статистики с любых устройств, кроме тех, которые указаны в команде force, т.е. трафик собирать будем только на VPN

    force \Device\NPF_GenericDialupAdapter - режим сбора статистики на VPN

    nf_lifetime 1 - мгновенно разрывает сессии, при переходе баланса пользователя через 0


    3.1.5. WEB5.CFG

    core_host=127.0.0.1 - IP адрес UTM

    web_login=web - логин системного пользователя

    web_password=web - пароль системного пользователя


    3.1.6. После исправлений конфигурационных файлов нужно перегрузить компьютер, чтобы все изменения вошли в силу.

    4. файлы:


    Название: NDSAD_setup_1_33.exe
    Cсылка для скачивания файла: http://ifolder.ru/10599261

    Название: utm5_kill_vpn.exe
    Ссылка для скачивания файла: http://ifolder.ru/10599276

    UTM5 можно скачать на http://www.netup.ru/

    Также в комплект ЮТМ входит апач и мускул. Так же для входа в вэб адмику вам неоходимо будет поставить OpenSSL и подписать сертификаты.Хотя видел есть и альтернативные варианты вэб-морд.