Настройка VPN сервера FreeBSD MPD
Материал из BiTel WiKi
MPD 4.x версии доступен из портов, никакая адаптация для его работы с биллингом не требуется.
Конфигурационные файлы для настройки MPD можно загрузить [[Медиа:mpd4_files.zip]. Все скрипты кроме 001-netflow.sh, 002-mpd.sh рассчитаны на размещение в каталоге /usr/local/libexec/mpd/.
Скрипты запуска MPD и настройки NetFlow 001-netflow.sh, 002-mpd.sh размещаются в /usr/local/etc/rc.d/. В качестве NetFlow агента используется ng_netflow, доступный сразу в FreeBSD 6 и новее.
Для правильного функционирования необходимо убедится что в вашей системе установлен netcat, он используется в скрипте passtest.sh для передачи сигнала о разрыве сессии на сокет управления MPD.
Скрипт вызывается net-snmp демоном, при получении запроса на OID .1.3.6.1.4.1.2021.255. Конфигурация snmpd.conf также доступна на FTP. Замените x.x.x.x secret на IP адрес RADIUS сервера, с которого запросы попадут на snmpd и SNMP communtity, идентичный введенному в конфигурации NASа.
Разрыв по SNMP-не основной механизм прерывания сессий, он используется для срочного сброса клиентов через монитор модуля DialUP, либо через консольное управление. Кроме разрыва по SNMP RADIUS передает атрибут mpd-drop-user в ACCOUNTING RESPONSE пакете.
Для MPD NASов должен быть растроен режим тарификации UPDATE в биллинге, т.е. обсчеты идут по получению UPDATE пакетов. У NASа должен быть установлен вендор MPD, на основании этого RADIUS будет слать drop-атрибут.
MPD позволяет передавать опции скорости канала через RADIUS атрибуты.
Например, можно создать несколько наборов атрибутов в конфигурации модуля.
attrset.1.title=Скорость 64-Арена attrset.1.attributes=mpd-filter=1#1=match dst net 82.200.107.0/27 and src net 192.168.120.0/24;mpd-filter=2#1=match src net 82.200.107.0/27 and dst net 192.168.120.0/24;mpd-limit=in#1=flt1 pass;mpd-limit=in#2=all shape 64000 4000 pass;mpd-limit=out#1=flt2 pass;mpd-limit=out#2=all shape 64000 4000 pass; #для сетки 82.200.107.0/27 и 192.168.120.0/24 без ограничений #для остально интернета первые 4 кб без ограничений, потом скорость ограничивается до 64 кб/с
Либо более простой пример:
attrset.1.title=Канал 64 attrset.1.attributes=mpd-limit=out#1=all shape 60000 pass;mpd-limit=in#1=all rate-limit 10000000 pass attrset.2.title=Канал 128 attrset.2.attributes=mpd-limit=out#1=all shape 128000 pass;mpd-limit=in#1=all rate-limit 10000000 pass attrset.3.title=Канал 256 attrset.3.attributes=mpd-limit=out#1=all shape 256000 pass;mpd-limit=in#1=all rate-limit 10000000 pass attrset.4.title=Канал 512 attrset.4.attributes=mpd-limit=out#1=all shape 512000 pass;mpd-limit=in#1=all rate-limit 10000000 pass