Протокол PPPoE (Point-to-Point Protocol over Ethernet) представляет собой сетевой протокол позволяющий передавать PPP кадры поверх Ethernet. Так же как и pptp позволяет организовать доступ абонентов, в сеть, используя авторизацию, шифрование, сжатие и т.д. Для предоставления доступа по протоколу PPPoE необходим PPPoE-сервер и абонентское устройство (клиент) с поддержкой протокола PPPoE. В качестве PPPoE-сервера будем использовать свободно распространяемый пакет rp-pppoe работающий в режиме ядра (KERNEL MODE) под управлением ОС ALT Linux. В качестве клиента будем использовать персональный компьютер под управлением ОС Microsoft Windows 2003(извиняйте, но WXP у меня просто нет) и пакет raspppoe.
Авторизация абонентов будет производиться по протоколу RADIUS через единое хранилище абонентской информации в биллинговой системе NetUP UTM 5(ну прям как у нас в СГУ).
Настройка PPPoE-сервера
1. Ставим сервер ppp - apt-get install ppp
2. После установки необходимо отредактировать конфигурационные файлы. В частности необходимо в файле /etc/ppp/radius/radiusclient.conf указать корректно переменные authserver и acctserver. В этих полях указывается доменное имя либо IP-адрес сервера, где запущен RADIUS-сервер (процесс utm5_radius или любой другой RADIUS сервер). Пример:
authserver localhost:1812
acctserver localhost:1813
Для корректной работы авторизации и аккаунтинга по протоколу RADIUS необходимо указать секретное слово в файле /etc/ppp/radius/servers. Пример:
localhost secret
После этого необходимо установить пакет rp-pppoe командой:
apt-get install rp-pppoe
Для корректной работы rp-pppoe в режиме ядра (KERNEL MODE) необходимо в файле /etc/ppp/pppoe.conf указать строку:
LINUX_PLUGIN=rp-pppoe.so
Так же в файле /etc/ppp/pppoe-server-options необходимо указать следующие настройки:
require-chap
require-mschap-v2
proxyarp
nologfd
plugin radius.so
Согласно этим настройкам разрешены безопасные протоколы авторизации CHAP и MSCHAPv2. Так же указано, что необходимо загружать модуль для работы с протоколом RADIUS (radius.so).
Перед запуском сервера необходимо произвести загрузку модуля ядра Linux. Для этого выполните команду:
modprobe pppoe
Для того, что бы данный модуль загружался автоматически при старте операционной системы необходимо добавить строку pppoe в файл /etc/modules.autoload.d/kernel-2.6. В случае если появляется ошибка, сигнализирующая об отсутствии этого модуля в системе, то необходимо установить следующую опцию при сборке ядра Linux:
<M> PPP over Ethernet
После того как модуль загружен, можно произвести запуск сервера командой:
pppoe-server -k
На этом настройка PPPoE-сервера закончена.
Для настройки клиентского компьютера необходимо скачать и распаковать пакет raspppoe с сайта производителя. В результате должна получится папка RASPPPOE_099. Для установки необходимо зайти в раздел Control panel->Network Connections и в свойствах любого соединения выбрать пункт Install Protocol -> Have Disk ->Browse. Укажите путь к папке RASPPPOE_099 и выберите файл RASPPPOE.INF. Нажмите "OK" когда будет предложено установить протокол "PPP over Ethernet Protocol".
После того как установка протокола будет закончена можно запустить файл RASPPPOE.EXE из папки RASPPPOE_099. В предложенном меню выберите Ethernet адаптер, подключенный к локальной сети, и нажмите "Query Available Services". После непродолжительного поиска будут отображены найденные PPPoE-сервера.
Выделите необходимый PPPoE-сервер и нажмите кнопку "Create a Dial-Up Connection for the selected Service". В результате в ОС Windows должно появиться соединение "Connection to zavidovo". Для установки этого соединения необходимо перейти в раздел "Control panel"->"Network Connections" и произвести двойной клик по соединению. Введите ваши логин и пароль и нажмите "Dial". Если все корректно настроено, то произойдет подключение к серверу.