ÐаÑтройка такой конфигурации проиÑходит в 3 Ñтапа: 1. ÐаÑтройка VPN Ñ Ð¸Ñпользованием pptpd; 2. ÐаÑтройка авторизации VPN через FreeRADIUS; 3. ÐаÑтройка шейпера; 1. ÐаÑтройка VPN Ðеобходимо уÑтановить пакеты ppp и pptpd. Также необходима поддержка PPP в Ñдре: Device Drivers ---> Network device support ---> <M> PPP (point-to-point protocol) support <M> PPP support for sync tty ports <M> PPP Deflate compression <M> PPP BSD-Compress compression <M> PPP MPPE compression (encryption) (EXPERIMENTAL) <M> PPP over Ethernet (EXPERIMENTAL) Ð’ файле /etc/pptpd.conf пропиÑываем файл наÑтроек PPP (параметр option). Также указываем адреÑа Ñервера внутри Ñети VPN (параметр localip) и диапазон адреÑов клиентов (параметр remoteip). См. пример файла конфигурации. Ð’ наÑтройках PPP указываем Ð¸Ð¼Ñ Ñервера (параметр name), параметры шифрованиÑ. Ð”Ð»Ñ Ð¸ÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ ÑˆÐ¸Ñ„Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ MPPE необходима его поддержка в Ñдре. Кроме того, в процеÑÑе аутентификации MPPE иÑпользует MS-CHAPv2. По Ñтому при иÑпользовании ÑˆÐ¸Ñ„Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ MPPE также необходимо указать необходимоÑÑ‚ÑŒ поддержки MS-CHAPv2 клиентом. По желанию указываем proxyarp (Ð´Ð»Ñ Ñ‚Ð¾Ð³Ð¾ чтобы клиенты в Ñети VPN "видели" друг друга) и defaultroute. ПропиÑываем в файле /etc/ppp/chap-secrets теÑтового Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸ проверÑем работоÑпоÑобноÑÑ‚ÑŒ VPN. 2. ÐаÑтройка авторизации VPN через FreeRADIUS Ðеобходимо уÑтановить пакет freeradius. ÐаÑтройку Ñервера (файл radiusd.conf) проводим в ÑоответÑтвии Ñ Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ð¸ÐµÐ¹ на модуль rlm_stg.so (Ñм. документацию на ÑиÑтему Stargazer). ÐаÑтройку Stargazer Ñ Ð¿Ð»Ð°Ð³Ð¸Ð½Ð¾Ð¼ Ð´Ð»Ñ FreeRADIUS проводим в ÑоответÑтвиии Ñ Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ð¸ÐµÐ¹ на модуль mod_radius.so (Ñм. документацию на ÑиÑтему Stargazer). Ð’ файле clients.conf, раÑположенном в дирректории Ñ ÐºÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ð¾Ð½Ð½Ñ‹Ð¼Ð¸ файлами FreeRADIUS, опиÑываем, какие клиенты могут иÑпользовать FreeRADIUS. РекомендуетÑÑ Ð·Ð°Ð¼ÐµÐ½Ð¸Ñ‚ÑŒ Ñтандартный пароль, которым шифруетÑÑ Ð¾Ð±Ð¼ÐµÐ½ информации Ñ ÐºÐ»Ð¸ÐµÐ½Ñ‚Ð¾Ð¼, "testing123" на что-то более приемлимое Ñ Ñ‚Ð¾Ñ‡ÐºÐ¸ Ð·Ñ€ÐµÐ½Ð¸Ñ Ð±ÐµÐ·Ð¾Ð¿Ð°ÑноÑти. ПоÑле Ñтого запуÑкаем FreeRADIUS и удоÑтоверÑемÑÑ, что он работает Ñтрочкой "Mon Mar 31 16:06:17 2008 : Info: Ready to process requests." в журнале (обычно, /var/log/radius/radius.log). ЕÑли журнал FreeRADIUS не позволÑет определить проблему - можно запуÑтить Ñервер в отладочном режме Ñ ÐºÐ»ÑŽÑ‡ÐµÐ¼ -X. Ð’ Ñтом режиме более детальное журналирование проводитÑÑ Ð² конÑоль. ЕÑли на данном Ñтапе вÑе работает - в файл наÑттроек PPP пропиÑываем Ñтрочку plugin radius.so. ПоÑле Ñтого VPN должен нормально авторизоватьÑÑ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñми ÑиÑтемы Stargazer. 3. ÐаÑтройка шейпера СобÑтвенно наÑтройки шейпер не требует. Ð’ÑÑ‘, что нужно пропиÑано в Ñкриптах OnConnect и OnDisconnect. Шейпер предназначен Ð´Ð»Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹ Ñ Ñ…Ñ€Ð°Ð½Ð¸Ð»Ð¸Ñ‰ÐµÐ¼ на файлах, однако, переделать Ñкипт под MySQL или Firebird не ÑоÑтавит труда. СкороÑÑ‚ÑŒ Ð´Ð»Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚Ð»ÐµÑ Ð·Ð°Ð´Ð°ÐµÑ‚ÑÑ Ð² поле Userdata0 в kbit/sec. Ð’ Ñтом поле должно быть пропиÑано проÑто чиÑло без вÑÑких kbit/sec и Ñ‚.п. ЕÑли в Ñтом поле у Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð½ÐµÑ‚ данных или Ñтоит некорректное значение, пользователь будет ограничен ÑкороÑтью определенной в переменной default_speed в Ñкрипте OnConnect.