ISG в Linux
На сегодняшний день , скорости доступа в интернет для домашних пользователей спокойно достигли высот в 100 мБит/сек . Смысл спользование тунелей VPN и РРРоЕ ставится на сегодняшний день под большое сомнение в силу широкого применения управляемых коммутаторов провайдерами и расширения их функционала (как правило option 82) , что позволяет авторизовать пользователя на порту коммутатора и избавить непросвещенного пользователя от сложностей в создании VPN и РРРоЕ тунелей , что является несомненным плюсом подобной технологии . Также значительно уменьшаются звонки в службу поддержки . RFC пока ничего не говорит нам о такой техногии , самой известной реализацией является ISG Cisco , описание эволющии этого описано здесь .
Правда реализация ISG в Cisco , вернее установка подобного софта на маршрутизаторы Cisco стоит немало денег , я уже не говорю о стоимости самого маршрутизатора , который не по карману небльшим провайдерам . Также немаловажным вопросом является наличие ресурсов для обработки такого огромного колличества пакетов на маршрутизаторе (100-250 тысяч пакетов в секунду и потоки свыше нескольких гигабит) , который у мелких провайдеров представляет собой сервер с установленной OS семейства Unix . Реализация ISG в Linux опубликована на просторах интеренета на известном ресурсе здесь одним из участников форума . Описание установки и настройки этого скрипта написанного на Perl настолько скудно , что непосвященный админ наврядли сходу его осилит . Описаний установки данного скрипта на OS семейства Linux найдено не было , по всей видимости из-за узкопрофильности использования данного решения на сегодншний день . Посему опишем установку на дистрибутив OS Linux Ubutu Server 2012 TLS .
Установка и разворачивание Ubutu Server 2012 TLS .
Мой выбор Ubutu Server 2012 TLS связан прежде всего с длительной поддержкой этого дистрибутива и то , что я сним знаком . Попытка по совету одного из участников форума развернуть ArchLinux лично у меня закончилась неудачно . Настолько параноидальной ситуации с разбивкой дисков я не встречал нигде , а описания мол у вас че то не работает - ваши проблемы мне понравилось еще больше . Обновление пакетов и конфликт библиотек (ну нельзя же так хаотично и резко все менять !) дало граблями по лбу еще раз и этого хватило . В итоге остановился на Бубунте .
Начальная настройку и установку дистрибутива производим примерно отсюда , единственное LAMP нам не нужен .
Проверим обновления нашей OS Ubuntu и установим их
root@ubntu_isg#apt-get update
root@ubntu_isg#apt-get upgrade
Переходим в домашний каталог пользователя который создавался при установке Ubuntu
root@ubntu_isg#cd /home/user_ubuntu
Проверим установлен ли у нас iptables и его версию
root@ubntu_isg#iptables -V
Смотрим на версию iptables , она должна быть не ниже весии 1.4.12 , в противном случае придется править ISG
Если iptables не установлен то установим его
root@ubntu_isg#apt-get install iptables
Подсмотрев версию iptables скачаем исходные коды с официального сайта . ISG не захотел собираться , сказав , что не может найти исходных кодов iptables . Загрузим исхдные коды с официального сайта .
root@ubntu_isg#wget http://www.netfilter.org/projects/iptables/files/iptables-1.4.12.tar.bz2
Разархивируем исходные коды iptables
root@ubntu_isg#tar -xvjf iptables-1.4.12.tar.bz2
Качаем скрипт ISG Linux
root@ubntu_isg#wget https://bitbucket.org/sysoleg/lisg/get/master.tar.gz
Распаковываем master.tar.gz
root@ubntu_isg# tar -xvf master.tar.gz
Переходим в каталог с дистрибутивом
root@ubntu_isg#cd sysoleg-lisg-eea438b3d2ea/kernel/
Установим некоторые пакеты , перед запуском конфигуратора
root@ubntu_isg#apt-get install gcc
Конфигурим ISG
root@ubntu_isg#./configure
Перед компиляцией необходим модуль linux-header иначе ругнется на отсутствие файлов . Здесь нужно глядеть какое ядро в системе , в нашем случае 3.2.0.30
root@ubntu_isg#apt-get install linux-headers-3.2.0-30-generic-pae
Собираем ISG
root@ubntu_isg#make
root@ubntu_isg#make install
Установим дополнительные модули перла через CPAN , которые использует ISG
root@ubntu_isg#cpan
Установим недостающие модули
cpan(1)>install Net::Radius::Packet
cpan(1)>install Net::Radius::Dictionary
cpan(1)>install Net::IPAddress
cpan(1)>>exit
Запустим собраный модуль
root@ubntu_isg#depmod -a && modprobe ipt_ISG
Скопируем файлы ISG из домашнего каталога в место постоянного жительства
root@ubntu_isg#cp -Rf /home/user_ubuntu/sysoleg-lisg-eea438b3d2ea/ISG /usr/local
На этом начальную установку ISG в Linux можно считать законченной и перейти к настройке конфигурационных файлов . Продолжение будет .