FreeBSD 9.x: відмінності між версіями

Матеріал з NoDeny
Перейти до навігації Перейти до пошуку
(Новая страница: «==Устанавливаем операционную систему== Загружаем с [https://www.freebsd.org/where.html офсайта] образ FreeB…»)
 
Немає опису редагування
 
(Не показані 44 проміжні версії цього користувача)
Рядок 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 под созданным логином и становимся root-ом:'''
 
<syntaxhighlight lang="bash">
su
</syntaxhighlight>
 
Настраиваем rc.conf
 
<syntaxhighlight lang="bash">
ee /etc/rc.conf
</syntaxhighlight>
 
Редактируем rc.conf
<pre>
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"
</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 &
 
Настройка авторизации клиентов


'''Можно использовать такой вариант установки'''
На этом этапе необходимо определиться с технологией подключения и авторизации абонентов. Наиболее распространо:


* Выбираем тип установки Standard
ipoe + dhcp: удобен для абонентов - не нужно ничего настраивать на компьютере. Однако низкая безопасноть т.к. злоумышленник может подделать свой mac-адрес и пользоваться интернетом за чужой счет
* В FDISK Partition Editor нажимаем «a», т.е. системе выдаем в пользование полный диск
ipoe + dhcp + option82: удобен для абонентов - не нужно ничего настраивать на компьютере. Хорошая безопасность. Однако требует установку управляемых свичей и их настройку.
* В Boot Manager выбираем Standard
pppoe: относительно сложен для клиентов. Безопасность лучше чем при dhcp. Небольшое уменьшение пропускной способности внутри сети из-за пересылки дополнительных данных в pppoe протоколе.
* При разметке диска, установщик выделяет бОльшую его часть разделу /usr, а в нашем случае необходимо место для раздела /var, поскольку там будет хранится база данных, создаем
  1G    /
  1G    swap
  1G    /tmp
  15G  /usr
  xxxG  /var
* Если же наша установка тестовая, то можно выбрать стандартный вариант, нажав «a»
* В меню конфигураций выбираем Minimal
* После установки, инсталятор задаст несколько вопросов, вам стоит обратить внимание на:
** Would you like to enable SSH login? - выбирайте yes, чтобы можно было зайти по ssh на сервер
** Соглашайтесь на вопрос создания юзера: укажите свой логин, введите группу 0 (ноль), пароль
** Введите пароль root.
** Остальные параметры по умолчанию, за исключением того, что не нужно включать inetd, а также ставить какие-либо пакеты

Поточна версія на 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"
  • background_fsck="NO" отключает проверку дисков в бекграунде и делает при старте, fsck_y_enable="YES" говорит "yes" на все вопросы при проверке.
  • 1.1.1.1 - виртуальный ip, который автор настраивает на всех своих серверах на интерфейсе lo0. Этот ip клиенты указывают в своих настройках в качестве dns сервера, сервера авторизации и т.д.
  • Интерфейс fxp1 подключен к шлюзу вышестоящего провайдера с ip 1.2.3.1.
  • К интерфейсу fxp0 подключаются абоненты.

Выполняем все нижестоящие команды сразу:

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 протоколе.