]> git.stg.codes - stg.git/blob - projects/stargazer/scripts/shaper_vpn_radius/Readme
Another code cleanup
[stg.git] / projects / stargazer / scripts / shaper_vpn_radius / Readme
1 Настройка такой конфигурации происходит в 3 этапа:
2 1. Настройка VPN с использованием pptpd;
3 2. Настройка авторизации VPN через FreeRADIUS;
4 3. Настройка шейпера;
5
6 1. Настройка VPN
7
8 Необходимо установить пакеты ppp и pptpd. Также необходима поддержка PPP в ядре:
9     Device Drivers  --->
10         Network device support  --->
11             <M> PPP (point-to-point protocol) support
12             <M>   PPP support for sync tty ports
13             <M>   PPP Deflate compression
14             <M>   PPP BSD-Compress compression
15             <M>   PPP MPPE compression (encryption) (EXPERIMENTAL)
16             <M>   PPP over Ethernet (EXPERIMENTAL)
17 В файле /etc/pptpd.conf прописываем файл настроек PPP (параметр option). Также
18 указываем адреса сервера внутри сети VPN (параметр localip) и диапазон адресов 
19 клиентов (параметр remoteip). См. пример файла конфигурации.
20 В настройках PPP указываем имя сервера (параметр name), параметры шифрования. 
21 Для использования шифрования MPPE необходима его поддержка в ядре. Кроме того, 
22 в процессе аутентификации MPPE использует MS-CHAPv2. По этому при 
23 использовании шифрования MPPE также необходимо указать необходимость 
24 поддержки MS-CHAPv2 клиентом. По желанию указываем proxyarp (для того чтобы 
25 клиенты в сети VPN "видели" друг друга) и defaultroute. Прописываем в файле 
26 /etc/ppp/chap-secrets тестового пользователя и проверяем работоспособность 
27 VPN.
28
29 2. Настройка авторизации VPN через FreeRADIUS
30
31 Необходимо установить пакет freeradius.
32 Настройку сервера (файл radiusd.conf) проводим в соответствии с документацией 
33 на модуль rlm_stg.so (см. документацию на систему Stargazer).
34 Настройку Stargazer с плагином для FreeRADIUS проводим в соответствиии с 
35 документацией на модуль mod_radius.so (см. документацию на систему Stargazer).
36 В файле clients.conf, расположенном в дирректории с конфигурационными файлами 
37 FreeRADIUS, описываем, какие клиенты могут использовать FreeRADIUS. 
38 Рекомендуется заменить стандартный пароль, которым шифруется обмен информации 
39 с клиентом, "testing123" на что-то более приемлимое с точки зрения безопасности. 
40 После этого запускаем FreeRADIUS и удостоверяемся, что он работает строчкой 
41 "Mon Mar 31 16:06:17 2008 : Info: Ready to process requests." в журнале 
42 (обычно, /var/log/radius/radius.log). Если журнал FreeRADIUS не позволяет 
43 определить проблему - можно запустить сервер в отладочном режме с ключем -X. 
44 В этом режиме более детальное журналирование проводится в консоль.
45 Если на данном этапе все работает - в файл насттроек PPP прописываем строчку 
46 plugin radius.so. После этого VPN должен нормально авторизоваться 
47 пользователями системы Stargazer.
48
49 3. Настройка шейпера
50
51 Собственно настройки шейпер не требует. Всё, что нужно прописано в скриптах 
52 OnConnect и OnDisconnect. Шейпер предназначен для работы с хранилищем на 
53 файлах, однако, переделать скипт под MySQL или Firebird не составит труда.
54 Скорость для пользоватлея задается в поле Userdata0 в kbit/sec. В этом поле 
55 должно быть прописано просто число без всяких kbit/sec и т.п. Если в этом поле
56 у пользователя нет данных или стоит некорректное значение, пользователь будет 
57 ограничен скоростью определенной в переменной default_speed в скрипте 
58 OnConnect.