Данный документ описывает функционал поддержки VPN-доступа через RADIUS-сервер, полностью доступный в NETAMS с версии сборки 4.0.1360 (15 февраля 2012 г.)
 
Услуга VPN-доступа предоставляется путем терминации на вашем сервере псевдо-dialup соединений, устанавливаемых абонентами поверх существующих сетевых подключений. В качестве серверов доступа проверены и протестированы pptpd, accel-ppp (pptp), openvpn (Debian Linux).
 
Для предоставления подобных услуг вы должны последовательно настроить:

  • сервер доступа (ppp, pptp, openvpn-службы)
  • авторизацию сервера доступа через библиотеку RADIUS (radiusclient или встроенные решения)
  • RADIUS-сервер из комплекта поставки NETAMS 4.0
  • зарегистрировать сервер доступа (NAS)
  • настроить RADIUS-источник данных в административном веб-интерфейсе
  • создать тарифный план на основе обработчика XPrepaidByDaysVPN1
  • создать абонента, назначить ему тарифный план, и протестировать работу 

Схема взаимодействия всех компонентов приведена ниже:
 
 

Настройка сервера доступа

Опишем процедуры настройки на примере pptpd из комплекта Debian Linux 6.0.3

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


root@debian:~# cat /etc/pptpd.confoption /etc/ppp/pptpd-options
debug
logwtmp
localip 172.16.130.1
remoteip 172.16.130.2-254
connections 252

 и

root@debian:~# cat /etc/ppp/pptpd-options
name pptpd
refuse-pap
refuse-chap
refuse-mschap
require-mschap-v2
require-mppe-128
ms-dns 8.8.8.8
proxyarp
defaultroute
debug
dump
lock
nobsdcomp
# внимание! очень важно:
plugin radius.so
plugin radattr.so
 

Настройка RADIUS-клиента

На примере libradiusclient1. Эта библиотека служит для связи сервера доступа (pptp/ppp) и RADIUS-сервера, т.е. для передачи запросов на авторизацию и учета состояния подключения (аккаунтинга). Конфигурационные файлы этой бибилиотеки хранятся в каталоге /etc/radiusclient/

Необходимо:

из дистрибутива /usr/local/netams4/radius/misc переписать файл dictionary.microsoft в каталог /etc/radiusclient/. Этот файл содержит в себе описание специфичных атрибутов, требуемых для авторизации по протоколу MS-CHAP V2, а также для передачи ключей шифрования MPPE.

из дистрибутива /usr/local/netams4/radius/misc переписать скрипт bwlimit в каталог /etc/ppp/ip-up.d/. Этот скрипт запускается в момент установления соединения и позволяет настраивать ограниения скорости для абонента путем настройки правил шайпера tc.

в конец конфигурационного файла /etc/radiusclient/dictionary дописать следующие строки:

ATTRIBUTE PPPD-Upstream-Speed-Limit 230 integer
ATTRIBUTE PPPD-Downstream-Speed-Limit 231 integer
ATTRIBUTE Acct-Interim-Interval 85 integer

INCLUDE /etc/radiusclient/dictionary.microsoft

в файле /etc/radiusclient/radiusclient.conf указать IP-адреса нашего RADIUS-сервера (из поставки NETAMS 4.0):

authserver      127.0.0.1:1812

acctserver      127.0.0.1:1813

в файле /etc/radiusclient/servers указать пароль (shared secret) нашего RADIUS-сервера:

127.0.0.1    testing

Настройка RADIUS-сервера

Сервер поставляется в дистрибутиве и расположен в каталоге /usr/local/netams4/radius/

По умолчанию, запуск его в стартап-скрипта (startup.sh) закомментирован. Запустить RADIUS-сервер можно так:

cd radius && /bin/sh radius-startup.sh && cd ..

Других настроек сервер не имеет. Параметры подключения к ядру биллинга (jserver) берутся из общего файла netams4.properties, список NAS-серверов с паролями - при старте у jserver. Изменение списка серверов доступа требует рестарта процесса java, отвечающего на RADIUS-сервер.

Настройка серверов доступа

Процедура подробно описана в разделе: Сервера доступа

Настройка источника данных

Процедура подробно описана в разделе: RADIUS

Настройка тарифного плана

Процедура подробно описана в разделе: XPrepaidByDaysVPN1

Создание абонента и проверка

Эти процедуры подробно описаны в соответствующих разделах, например Работа с абонентом

  • No labels