FreeBSD 9.x: відмінності між версіями
Sv (обговорення | внесок) Немає опису редагування |
Sv (обговорення | внесок) Немає опису редагування |
||
(Не показані 43 проміжні версії цього користувача) | |||
Рядок 1: | Рядок 1: | ||
<h1>Документация для FreeBSD 9 не закончена. Рекомендуем установить [[FreeBSD 10.x]]</h1> | |||
==Устанавливаем операционную систему== | ==Устанавливаем операционную систему== | ||
Загружаем с [https://www.freebsd.org/where.html офсайта] образ FreeBSD под архитектуру amd64 или i386 в зависимости от типа процессора вашего сервера. Версию желательно выбирать stable | Загружаем с [https://www.freebsd.org/where.html офсайта] образ FreeBSD под архитектуру amd64 или i386 в зависимости от типа процессора вашего сервера. Версию желательно выбирать stable. | ||
При установке можно выбирать типичные параметры. Стоить лишь обратить внимание на такие вещи: | |||
* | * Если вы собираетесь разбить систему на несколько логических разделов, то б'''о'''льшую часть отдайте разделу /var, поскольку там будет сохраняться база данных биллинга | ||
* Создайте пользователя в группе wheel (группа с номером 0) - иначе вы не сможете зайти на сервер по ssh под root (либо придется править конфиг sshd) | |||
* | |||
'''После первой перезагрузки логинимся по ssh под | '''После первой перезагрузки логинимся по ssh под созданным логином и становимся root-ом:''' | ||
< | <syntaxhighlight lang="bash"> | ||
su | |||
</syntaxhighlight> | |||
Настраиваем rc.conf | Настраиваем rc.conf | ||
<syntaxhighlight lang="bash"> | |||
ee /etc/rc.conf | ee /etc/rc.conf | ||
</syntaxhighlight> | |||
Редактируем rc.conf | Редактируем rc.conf | ||
<pre> | |||
hostname="nodeny.com.ua" | hostname="nodeny.com.ua" | ||
defaultrouter="1.2.3.1" | defaultrouter="1.2.3.1" | ||
Рядок 40: | Рядок 35: | ||
gateway_enable="YES" | gateway_enable="YES" | ||
named_enable="YES" | named_enable="YES" | ||
background_fsck="NO" отключает проверку дисков в бекграунде и делает при старте, fsck_y_enable="YES" говорит "yes" на все вопросы при проверке. | </pre> | ||
<div class="mw-collapsible mw-collapsed" style="overflow: hidden" data-expandtext="Объяснить что мы сделали" data-collapsetext="Скрыть"> | |||
* background_fsck="NO" отключает проверку дисков в бекграунде и делает при старте, fsck_y_enable="YES" говорит "yes" на все вопросы при проверке. | |||
* 1.1.1.1 - виртуальный ip, который автор настраивает на всех своих серверах на интерфейсе lo0. Этот ip клиенты указывают в своих настройках в качестве dns сервера, сервера авторизации и т.д. | |||
* Интерфейс fxp1 подключен к шлюзу вышестоящего провайдера с ip 1.2.3.1. | |||
* К интерфейсу fxp0 подключаются абоненты. | |||
</div> | |||
Выполняем все нижестоящие команды сразу: | |||
<syntaxhighlight lang="bash"> | |||
echo '/sbin/ipfw add 100 allow ip from any to any' > /etc/rc.firewall | |||
echo 'pf_load="YES"' >> /boot/loader.conf | |||
echo 'pf_enable="YES"' >> /etc/rc.conf | |||
echo 'ipfw_load="YES"' >> /boot/loader.conf | |||
echo 'ipdivert_load="YES"' >> /boot/loader.conf | |||
echo 'dummynet_load="YES"' >> /boot/loader.conf | |||
echo 'nameserver 8.8.8.8' > /etc/resolv.conf | |||
</syntaxhighlight> | |||
===Обновляем систему=== | |||
<syntaxhighlight lang="bash"> | |||
freebsd-update fetch | |||
freebsd-update install | |||
</syntaxhighlight> | |||
===Обновляем дерево портов=== | |||
<syntaxhighlight lang="bash"> | |||
portsnap fetch | |||
portsnap extract | |||
</syntaxhighlight> | |||
===Устанавливаем пакетный менеджер PKGNG=== | |||
<syntaxhighlight lang="bash"> | |||
/usr/sbin/pkg | |||
pkg2ng | |||
echo 'WITH_PKGNG="yes"' >> /etc/make.conf | |||
echo 'daily_backup_pkgdb_enable="NO"' >> /etc/periodic.conf | |||
cp /usr/local/etc/pkg.conf.sample /usr/local/etc/pkg.conf | |||
pkg update -f | |||
</syntaxhighlight> | |||
===Устанавливаем необходимые программы=== | |||
При установке perl обязательно не забудем проверить, что выбрана опция 'THREADS - Build threaded perl'. | |||
<syntaxhighlight lang="bash"> | |||
cd /usr/ports/lang/perl5.18/ | |||
make install clean | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash"> | |||
ln -s /usr/local/bin/perl /usr/bin/perl 2> /dev/null | |||
</syntaxhighlight> | |||
Ставим bash, svn и mc. | |||
<syntaxhighlight lang="bash"> | |||
pkg install bash subversion mc-light | |||
</syntaxhighlight> | |||
Назначаем bash дефолтным для учетной записи root: | |||
<syntaxhighlight lang="bash"> | |||
pw usermod root -s /usr/local/bin/bash | |||
</syntaxhighlight> | |||
Скажем системе, что не собираемся использовать графический интерфейс - пусть компилит программы без его поддержки: | |||
<syntaxhighlight lang="bash"> | |||
echo 'WITHOUT_X11=yes' >> /etc/make.conf | |||
echo 'WITHOUT_GUI=yes' >> /etc/make.conf | |||
</syntaxhighlight> | |||
== Загружаем NoDeny+ == | |||
<syntaxhighlight lang="bash"> | |||
cd /usr/local | |||
svn co svn://nodeny-plus.com.ua/release nodeny | |||
</syntaxhighlight> | |||
==Настройка== | |||
===Настраиваем nat=== | |||
<syntaxhighlight lang="bash"> | |||
cp /usr/local/nodeny/etc/pf.conf /etc/ | |||
ee /etc/pf.conf | |||
</syntaxhighlight> | |||
В первой строке указываем интерфейс, который смотрит на вышестоящего провайдера. | |||
===Настраиваем локальный dns=== | |||
<syntaxhighlight lang="bash"> | |||
ee /etc/namedb/named.conf | |||
</syntaxhighlight> | |||
Редактируем named.conf | |||
<pre> | |||
listen-on { 127.0.0.1; 1.1.1.1; }; | |||
</pre> | |||
Перезагружаем сервер: | |||
<syntaxhighlight lang="bash"> | |||
reboot | |||
</syntaxhighlight> | |||
На данном этапе сервер может выполнять свои функции без NoDeny, т.е. давать абонентам доступ в интернет. Пробуем с клиентского компьютера пропинговать 8.8.8.8. Если не пингуется: | |||
<syntaxhighlight lang="bash"> | |||
tcpdump -ifxp1 -p -n icmp | |||
</syntaxhighlight> | |||
Если пакеты, идущие на 8.8.8.8, идут от ip клиента, значит nat у нас не работает. Смотрим pf.conf все ли мы верно там указали. | |||
На клиентском компьютере в качестве DNS устанавливаем 1.1.1.1 (наш локальный). Проверяем ping ya.ru | |||
===Настраиваем сбор статистики трафика=== | |||
<syntaxhighlight lang="bash"> | |||
pkg install ipcad | |||
echo ipcad_enable=YES >> /etc/rc.conf | |||
cp /usr/local/nodeny/etc/ipcad.conf /usr/local/etc/ | |||
ipcad -d | |||
ipfw add 10 divert 1 ip from any to any not via lo0 | |||
rsh 0 show ip acco | |||
</syntaxhighlight> | |||
===Фаервол с блокировкой неавторизованных клиентов=== | |||
<syntaxhighlight lang="bash"> | |||
cp /usr/local/nodeny/etc/rc.firewall /etc/ | |||
ee /etc/rc.firewall | |||
</syntaxhighlight> | |||
Редактируем rc.firewall, меняем внешний интерфейс | |||
<pre> | |||
ifOut='fxp1' | |||
</pre> | |||
===Устанавливаем MySQL-сервер=== | |||
<syntaxhighlight lang="bash"> | |||
pkg install mysql56-server | |||
</syntaxhighlight> | |||
Создаем конфиг | |||
<syntaxhighlight lang="bash"> | |||
ee /etc/my.cnf | |||
</syntaxhighlight> | |||
Редактируем my.cnf | |||
<pre> | |||
[mysqld] | |||
skip-networking | |||
character-set-server=utf8 | |||
init-connect="SET NAMES utf8" | |||
query_cache_size=64M | |||
long_query_time=5 | |||
slow_query_log=1 | |||
slow_query_log_file=/var/db/mysql/slow.log | |||
collation-server = utf8_unicode_ci | |||
init-connect='SET NAMES utf8' | |||
character-set-server = utf8 | |||
[client] | |||
default-character-set=utf8 | |||
[mysql] | |||
default-character-set=utf8 | |||
</pre> | |||
Стартуем mysql-сервер | |||
<syntaxhighlight lang="bash"> | |||
/usr/local/etc/rc.d/mysql-server forcestart | |||
</syntaxhighlight> | |||
Устанавливаем пароль root в mysql | |||
<syntaxhighlight lang="bash"> | |||
mysqladmin -u root password 'hardpass' | |||
</syntaxhighlight> | |||
Автозапуск при старте системы | |||
<syntaxhighlight lang="bash"> | |||
echo mysql_enable=YES >> /etc/rc.conf | |||
</syntaxhighlight> | |||
Создаем структуру БД NoDeny+ | |||
<syntaxhighlight lang="bash"> | |||
mysql -u root --password='hardpass' | |||
</syntaxhighlight> | |||
<pre> | |||
create database nodeny; | |||
use nodeny; | |||
source /usr/local/nodeny/bill.sql; | |||
</pre> | |||
===Устанавливаем Web-сервер=== | |||
<syntaxhighlight lang="bash"> | |||
pkg install apache22 | |||
</syntaxhighlight> | |||
Автозапуск | |||
<syntaxhighlight lang="bash"> | |||
echo apache22_enable=YES >> /etc/rc.conf | |||
</syntaxhighlight> | |||
Стартуем | |||
<syntaxhighlight lang="bash"> | |||
apachectl start | |||
</syntaxhighlight> | |||
Открываем в браузере | |||
<pre> | |||
http://10.0.0.1/ | |||
</pre> | |||
Если не получаем приветствующего сообщения «It works!» - смотрим логи | |||
<syntaxhighlight lang="bash"> | |||
tail /var/log/httpd-error.log | |||
</syntaxhighlight> | |||
===Устанавливаем модули perl=== | |||
<syntaxhighlight lang="bash"> | |||
pkg install p5-DBD-mysql p5-Crypt-Rijndael net/p5-Net-ARP p5-JSON p5-JSON-XS | |||
</syntaxhighlight> | |||
===Завершаем установку NoDeny+=== | |||
По умолчанию во FreeBSD путь к cgi-bin и корню www: /usr/local/www/apache22/. Следующие команды удалят cgi-bin и data (www корень), после чего создадут символические линки на папки cgi-bin и htdocs внутри /usr/local/nodeny/ | |||
<syntaxhighlight lang="bash"> | |||
rm -fR /usr/local/www/apache22/cgi-bin | |||
rm -fR /usr/local/www/apache22/data | |||
ln -s /usr/local/nodeny/cgi-bin/ /usr/local/www/apache22/cgi-bin | |||
ln -s /usr/local/nodeny/htdocs/ /usr/local/www/apache22/data | |||
</syntaxhighlight> | |||
Подключим модули (-x), установим владельца и права на файлы (-w), создадим стартовый конфиг (-m), создадим суперадмина (-p): | |||
<syntaxhighlight lang="bash"> | |||
cd /usr/local/nodeny | |||
perl install.pl -x | |||
perl install.pl -w=www | |||
perl install.pl -m | |||
perl install.pl -p admin=12345 | |||
</syntaxhighlight> | |||
Входим в админку под логином admin и паролем 12345 | |||
<pre> | |||
http://10.0.0.1/cgi-bin/stat.pl | |||
</pre> | |||
Если в левом верхнем углу появится эмблема NoDeny+, то заходим в настройки и устанавливаем в «да» параметр «установите "да" если путь к изображениям корректен» | |||
Переходим по ссылке с логином текущего администратора в верхнем меню, в нашем случае «admin». Далее по ссылке «Администраторы» и меняем пароль своей учетке, а также выдаем все привилегии. | |||
Изменяем следующие настройки | |||
Тарификация → Денежная еденица | |||
Объекты. Внесите несколько основных улиц вашей сети. | |||
Доп.поля. Удалите поля, которые не потребуются для данных ваших клиентов и добавьте нужные. Например, если вам необходимо поле «Город», то вам необходимо создать запись: | |||
Имя поля: Город | |||
Имя поля в бд: _adr_city | |||
Тип поля: выпадающий список | |||
Регулярное выражение: city | |||
После этого, вам необходимо зайти в настройках в раздел «Объекты» и внести несколько городов, установив параметр «Тип» в значение «city». | |||
Создаем клиентскую учетную запись, после чего устанавливаем в значение «Всегда онлайн» параметр «Авторизация» - это позволит клиенту получить доступ в интернет без авторизации вначале тестирования. Также добавляем ip и услугу «1 Мбит». | |||
Запуск ядра NoDeny+ | |||
Ядро NoDeny+ работает в фоне и выполняет следующие функции: обработка авторизаций, сбор статистики трафика, управление услугами и т.д. Конфиги находятся в файлах /usr/local/nodeny/kernel/*.cfg. Обязательный параметр run - указывает будет ли плагин запущен при старте ядра или нет. Если run установлен в 0, то плагин можно запустить только указав его в параметрах командной строки при запуске ядра. | |||
Получим список всех плагинов | |||
perl nokernel.pl -L | |||
Напротив названия модуля 1 означает, что модуль будет запускаться автоматически при старте ядра. | |||
Запускаем ядро со стандартным набором модулей | |||
perl nokernel.pl | |||
Если на консоль не вывело никаких ошибок - ядро успешно запустило все модули. | |||
Запускаем скрипт управления фаерволом | |||
perl noserver.pl -v | |||
Если на консоль не вывело никаких ошибок - ставим в автозагрузку: | |||
echo '/usr/bin/perl /usr/local/nodeny/nokernel.pl -d &' >> /etc/rc.local | |||
echo '/usr/bin/perl /usr/local/nodeny/noserver.pl -d &' >> /etc/rc.local | |||
Запускаем скрипты в фоне | |||
perl /usr/local/nodeny/nokernel.pl -d & | |||
perl /usr/local/nodeny/noserver.pl -d & | |||
Настройка авторизации клиентов | |||
На этом этапе необходимо определиться с технологией подключения и авторизации абонентов. Наиболее распространо: | |||
ipoe + dhcp: удобен для абонентов - не нужно ничего настраивать на компьютере. Однако низкая безопасноть т.к. злоумышленник может подделать свой mac-адрес и пользоваться интернетом за чужой счет | |||
ipoe + dhcp + option82: удобен для абонентов - не нужно ничего настраивать на компьютере. Хорошая безопасность. Однако требует установку управляемых свичей и их настройку. | |||
pppoe: относительно сложен для клиентов. Безопасность лучше чем при dhcp. Небольшое уменьшение пропускной способности внутри сети из-за пересылки дополнительных данных в pppoe протоколе. |
Поточна версія на 13:03, 7 серпня 2015
Документация для FreeBSD 9 не закончена. Рекомендуем установить FreeBSD 10.x
Устанавливаем операционную систему
Загружаем с офсайта образ FreeBSD под архитектуру amd64 или i386 в зависимости от типа процессора вашего сервера. Версию желательно выбирать stable.
При установке можно выбирать типичные параметры. Стоить лишь обратить внимание на такие вещи:
- Если вы собираетесь разбить систему на несколько логических разделов, то большую часть отдайте разделу /var, поскольку там будет сохраняться база данных биллинга
- Создайте пользователя в группе wheel (группа с номером 0) - иначе вы не сможете зайти на сервер по ssh под root (либо придется править конфиг sshd)
После первой перезагрузки логинимся по ssh под созданным логином и становимся root-ом:
su
Настраиваем rc.conf
ee /etc/rc.conf
Редактируем rc.conf
hostname="nodeny.com.ua" defaultrouter="1.2.3.1" ifconfig_fxp0="inet 10.0.0.1 netmask 255.255.255.0" ifconfig_fxp1="inet 1.2.3.4 netmask 255.255.255.0" ifconfig_lo0_alias0="inet 1.1.1.1 netmask 255.255.255.255" fsck_y_enable="YES" background_fsck="NO" sshd_enable="YES" firewall_enable="YES" gateway_enable="YES" named_enable="YES"
Выполняем все нижестоящие команды сразу:
echo '/sbin/ipfw add 100 allow ip from any to any' > /etc/rc.firewall
echo 'pf_load="YES"' >> /boot/loader.conf
echo 'pf_enable="YES"' >> /etc/rc.conf
echo 'ipfw_load="YES"' >> /boot/loader.conf
echo 'ipdivert_load="YES"' >> /boot/loader.conf
echo 'dummynet_load="YES"' >> /boot/loader.conf
echo 'nameserver 8.8.8.8' > /etc/resolv.conf
Обновляем систему
freebsd-update fetch
freebsd-update install
Обновляем дерево портов
portsnap fetch
portsnap extract
Устанавливаем пакетный менеджер PKGNG
/usr/sbin/pkg
pkg2ng
echo 'WITH_PKGNG="yes"' >> /etc/make.conf
echo 'daily_backup_pkgdb_enable="NO"' >> /etc/periodic.conf
cp /usr/local/etc/pkg.conf.sample /usr/local/etc/pkg.conf
pkg update -f
Устанавливаем необходимые программы
При установке perl обязательно не забудем проверить, что выбрана опция 'THREADS - Build threaded perl'.
cd /usr/ports/lang/perl5.18/
make install clean
ln -s /usr/local/bin/perl /usr/bin/perl 2> /dev/null
Ставим bash, svn и mc.
pkg install bash subversion mc-light
Назначаем bash дефолтным для учетной записи root:
pw usermod root -s /usr/local/bin/bash
Скажем системе, что не собираемся использовать графический интерфейс - пусть компилит программы без его поддержки:
echo 'WITHOUT_X11=yes' >> /etc/make.conf
echo 'WITHOUT_GUI=yes' >> /etc/make.conf
Загружаем NoDeny+
cd /usr/local
svn co svn://nodeny-plus.com.ua/release nodeny
Настройка
Настраиваем nat
cp /usr/local/nodeny/etc/pf.conf /etc/
ee /etc/pf.conf
В первой строке указываем интерфейс, который смотрит на вышестоящего провайдера.
Настраиваем локальный dns
ee /etc/namedb/named.conf
Редактируем named.conf
listen-on { 127.0.0.1; 1.1.1.1; };
Перезагружаем сервер:
reboot
На данном этапе сервер может выполнять свои функции без NoDeny, т.е. давать абонентам доступ в интернет. Пробуем с клиентского компьютера пропинговать 8.8.8.8. Если не пингуется:
tcpdump -ifxp1 -p -n icmp
Если пакеты, идущие на 8.8.8.8, идут от ip клиента, значит nat у нас не работает. Смотрим pf.conf все ли мы верно там указали.
На клиентском компьютере в качестве DNS устанавливаем 1.1.1.1 (наш локальный). Проверяем ping ya.ru
Настраиваем сбор статистики трафика
pkg install ipcad
echo ipcad_enable=YES >> /etc/rc.conf
cp /usr/local/nodeny/etc/ipcad.conf /usr/local/etc/
ipcad -d
ipfw add 10 divert 1 ip from any to any not via lo0
rsh 0 show ip acco
Фаервол с блокировкой неавторизованных клиентов
cp /usr/local/nodeny/etc/rc.firewall /etc/
ee /etc/rc.firewall
Редактируем rc.firewall, меняем внешний интерфейс
ifOut='fxp1'
Устанавливаем MySQL-сервер
pkg install mysql56-server
Создаем конфиг
ee /etc/my.cnf
Редактируем my.cnf
[mysqld] skip-networking character-set-server=utf8 init-connect="SET NAMES utf8" query_cache_size=64M long_query_time=5 slow_query_log=1 slow_query_log_file=/var/db/mysql/slow.log collation-server = utf8_unicode_ci init-connect='SET NAMES utf8' character-set-server = utf8 [client] default-character-set=utf8 [mysql] default-character-set=utf8
Стартуем mysql-сервер
/usr/local/etc/rc.d/mysql-server forcestart
Устанавливаем пароль root в mysql
mysqladmin -u root password 'hardpass'
Автозапуск при старте системы
echo mysql_enable=YES >> /etc/rc.conf
Создаем структуру БД NoDeny+
mysql -u root --password='hardpass'
create database nodeny; use nodeny; source /usr/local/nodeny/bill.sql;
Устанавливаем Web-сервер
pkg install apache22
Автозапуск
echo apache22_enable=YES >> /etc/rc.conf
Стартуем
apachectl start
Открываем в браузере
http://10.0.0.1/
Если не получаем приветствующего сообщения «It works!» - смотрим логи
tail /var/log/httpd-error.log
Устанавливаем модули perl
pkg install p5-DBD-mysql p5-Crypt-Rijndael net/p5-Net-ARP p5-JSON p5-JSON-XS
Завершаем установку NoDeny+
По умолчанию во FreeBSD путь к cgi-bin и корню www: /usr/local/www/apache22/. Следующие команды удалят cgi-bin и data (www корень), после чего создадут символические линки на папки cgi-bin и htdocs внутри /usr/local/nodeny/
rm -fR /usr/local/www/apache22/cgi-bin
rm -fR /usr/local/www/apache22/data
ln -s /usr/local/nodeny/cgi-bin/ /usr/local/www/apache22/cgi-bin
ln -s /usr/local/nodeny/htdocs/ /usr/local/www/apache22/data
Подключим модули (-x), установим владельца и права на файлы (-w), создадим стартовый конфиг (-m), создадим суперадмина (-p):
cd /usr/local/nodeny
perl install.pl -x
perl install.pl -w=www
perl install.pl -m
perl install.pl -p admin=12345
Входим в админку под логином admin и паролем 12345
http://10.0.0.1/cgi-bin/stat.pl
Если в левом верхнем углу появится эмблема NoDeny+, то заходим в настройки и устанавливаем в «да» параметр «установите "да" если путь к изображениям корректен»
Переходим по ссылке с логином текущего администратора в верхнем меню, в нашем случае «admin». Далее по ссылке «Администраторы» и меняем пароль своей учетке, а также выдаем все привилегии.
Изменяем следующие настройки Тарификация → Денежная еденица Объекты. Внесите несколько основных улиц вашей сети. Доп.поля. Удалите поля, которые не потребуются для данных ваших клиентов и добавьте нужные. Например, если вам необходимо поле «Город», то вам необходимо создать запись: Имя поля: Город Имя поля в бд: _adr_city Тип поля: выпадающий список Регулярное выражение: city После этого, вам необходимо зайти в настройках в раздел «Объекты» и внести несколько городов, установив параметр «Тип» в значение «city». Создаем клиентскую учетную запись, после чего устанавливаем в значение «Всегда онлайн» параметр «Авторизация» - это позволит клиенту получить доступ в интернет без авторизации вначале тестирования. Также добавляем ip и услугу «1 Мбит». Запуск ядра NoDeny+
Ядро NoDeny+ работает в фоне и выполняет следующие функции: обработка авторизаций, сбор статистики трафика, управление услугами и т.д. Конфиги находятся в файлах /usr/local/nodeny/kernel/*.cfg. Обязательный параметр run - указывает будет ли плагин запущен при старте ядра или нет. Если run установлен в 0, то плагин можно запустить только указав его в параметрах командной строки при запуске ядра.
Получим список всех плагинов perl nokernel.pl -L Напротив названия модуля 1 означает, что модуль будет запускаться автоматически при старте ядра.
Запускаем ядро со стандартным набором модулей perl nokernel.pl Если на консоль не вывело никаких ошибок - ядро успешно запустило все модули.
Запускаем скрипт управления фаерволом perl noserver.pl -v Если на консоль не вывело никаких ошибок - ставим в автозагрузку:
echo '/usr/bin/perl /usr/local/nodeny/nokernel.pl -d &' >> /etc/rc.local echo '/usr/bin/perl /usr/local/nodeny/noserver.pl -d &' >> /etc/rc.local Запускаем скрипты в фоне perl /usr/local/nodeny/nokernel.pl -d & perl /usr/local/nodeny/noserver.pl -d &
Настройка авторизации клиентов
На этом этапе необходимо определиться с технологией подключения и авторизации абонентов. Наиболее распространо:
ipoe + dhcp: удобен для абонентов - не нужно ничего настраивать на компьютере. Однако низкая безопасноть т.к. злоумышленник может подделать свой mac-адрес и пользоваться интернетом за чужой счет ipoe + dhcp + option82: удобен для абонентов - не нужно ничего настраивать на компьютере. Хорошая безопасность. Однако требует установку управляемых свичей и их настройку. pppoe: относительно сложен для клиентов. Безопасность лучше чем при dhcp. Небольшое уменьшение пропускной способности внутри сети из-за пересылки дополнительных данных в pppoe протоколе.