Пользователь
0,0
рейтинг
13 марта 2010 в 17:03

Администрирование → HOW-TO pptpd+freeradius2+mysql+abills 0.50b для малого офиса или мелкого провайдера на Ubuntu 9.10/10.04

По просьбе уважаемого Nesmit'а публикую его HOW-TO, заместо своего, т.к. считаю что его инструкция достойна бОльшего внимания чем моя, которая была в этом посте, в моей было много недоработок и ошибок. И понапрасну его статью не пускали в ленту. Очень хорошая статья. Вот и она

ubuntu 9.10, с целью обновиться до 10.04, ничего не трогая.
pptpd 1.3.4-2
freeradius2.1.0
abills 0.5
dictionary.microsoft

Разработчик биллинга находится здесь: abills.net.ua
Хотелось бы выразить большую благодарность разработчикам данного биллинга!

Цели:
1.Обеспечить интернетом локальную сеть.
2.Учет трафика
3.Учет финансов
4.Создание тарифных планов.
5.Ограничение по скорости
6.Шифрование 128bit, причин много.
7.Без шифрования, но используя mschapv2.
8.Шифрование личного кабинета (apache SSL)
9.Возможность модернизации: интеграция почтового сервера с биллингом и т.д. Есть много модулей платных и нет.



Список литературы:

Мною найдено 2 полезные статьи по установки abills.
habrahabr.ru/blogs/linux/23650 — наша основа
silverghost.org.ua/2008/10/13/ustanovka-billinga-abills-na-ubuntu-804-lts-server-mikrotik-router-os-v-kachestve-servera-dostupa — наша основа №2
еще:
www.opennet.ru/base/net/abills_server.txt.html — не менее полезная, но microtik'а у нас нет.
www.xakep.ru/magazine/xa/112/136/1.asp — pppoe
Описание параметров в pptpd
www.compress.ru/article.aspx?id=18183&iid=842
В принципе, эта установка ничем не отличается от использования PPPoE или microtik в качестве NAS. Последнее выгоднее, если клиентов станет больше 100 и без головной боли.

Информацию будем брать из первых 2х статей, они ближе всего к нашей теме. Получится переработанная 1я статья с добавлением некоторых деталей из 2й + мои дороботки.

ВНИМАНИЕ! Перед тем как начать ставить систему. Определитесь, какие сетевые карты вы используете. Рекомендую использовать карты intel или 3com. PPTP на реалтеках глючит и срываются туннели без видимых причин.

1. Устанавливаем систему:
Мой выбор пал на дистрибутив Ubuntu 9.10, это уже проверенная система в которой отработан набор пакетов. Обновиться до 10.04, которой осталось 1,5 месяца проблем не составит. Хороший Админ — ленивый Админ. Зачем нам головная боль? Первый сервер на LTS 8.04 простоял 1,5 года пока не накрылся жесткий диск. За это время биллинг никто не трогал.

После установки обновляемся, ставим все самое последнее:

#apt-get update
#apt-get dist-upgrade


И ребут.

заходим под рутом.

$ sudo -s -H

2. Устанавливаем необходимые пакеты одной строчкой:
#apt-get install mysql-server mysql-client libmysqlclient15-dev apache2 apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-curl php5-dev php5-gd php5-idn php-pear php5-imagick php5-imap php5-mcrypt libdbi-perl libdbd-mysql-perl libdigest-md4-perl libdigest-sha1-perl libcrypt-des-perl freeradius radiusclient1 radiusclient1 pptpd

Во время установки MySQL сервер 2 раза спрашивает пароль root для mysql server, скоро понадобится!

Запускаем установленные модули для апача:
#a2enmod ssl
#a2enmod rewrite
#a2enmod suexec
#a2enmod include


Перезапускаем apache:

#/etc/init.d/apache2 restart

#a2enmod rewrite — ОБЯЗАТЕЛЕН, иначе получите ошибку при входе в админку!
3. Скачиваем abills 0.50, с сайта abills.net.ua распаковываем в /usr/abills или воспользуемся cvs и скачаем стабильный релиз.
Ссылка на файлы: sourceforge.net/projects/abills/files

4. Создаем недостающие каталоги и меняем права:

# mkdir /usr/abills/backup
# chown -R www-data:www-data /usr/abills/backup
# mkdir /usr/abills/cgi-bin/admin/nets
# chown -R www-data:www-data /usr/abills/cgi-bin/
# mkdir /usr/abills/var
# mkdir /usr/abills/var/log
# chown -R freerad:freerad /usr/abills/var


Далее редактируем /etc/sudoers добавляем строку. По этой команде убиваются vpn туннели.

www-data ALL=NOPASSWD: /usr/abills/misc/pppd_kill

5. Настраиваем freeradius, информация с сервера разработчика с правками под наш дистрибутив:
в /etc/freeradius/radiusd.conf в секции modules описываем секции:

#abills_preauth
exec abills_preauth {
program = "/usr/abills/libexec/rauth.pl pre_auth"
wait = yes
input_pairs = request
shell_escape = yes
#output = no
output_pairs = config
}

#abills_postauth
exec abills_postauth {
program = "/usr/abills/libexec/rauth.pl post_auth"
wait = yes
input_pairs = request
shell_escape = yes
#output = no
output_pairs = config
}

#abills_auth
exec abills_auth {
program = "/usr/abills/libexec/rauth.pl"
wait = yes
input_pairs = request
shell_escape = yes
output = no
output_pairs = reply
}

#abills_acc
exec abills_acc {
program = "/usr/abills/libexec/racct.pl"
wait = yes
input_pairs = request
shell_escape = yes
output = no
output_pairs = reply
}


в секции exec, фаил /etc/freeradius/modules/exec приведем к следующему виду:

exec {
wait = yes
input_pairs = request
shell_escape = yes
output = none
output_pairs = reply
}


Файл /etc/freeradius/sites-enabled/default — правим секции authorize, preacct, post-auth. Остальное в этих секциях комментируем или удалим.
authorize {
preprocess
abills_preauth
mschap
files
abills_auth
}
preacct {
preprocess
abills_acc
}

post-auth {
Post-Auth-Type REJECT {
abills_postauth
}
}


в /etc/freeradius/users

DEFAULT Auth-Type = Accept

Редактируем /etc/freeradius/clients.conf коментируем все, в конец добавляем (клиент/сервер на локальной машине, если будут на разных кодовое слово лучше поменять)

client localhost {
ipaddr = 127.0.0.1
secret = radsecret
shortname = shortname
}


Переходим к редактированию файла /etc/freeradius/dictionary, добавляем в конец

# Limit session traffic
ATTRIBUTE Session-Octets-Limit 227 integer
# What to assume as limit - 0 in+out, 1 in, 2 out, 3 max(in,out)
ATTRIBUTE Octets-Direction 228 integer
# Connection Speed Limit
ATTRIBUTE PPPD-Upstream-Speed-Limit 230 integer
ATTRIBUTE PPPD-Downstream-Speed-Limit 231 integer
ATTRIBUTE PPPD-Upstream-Speed-Limit-1 232 integer
ATTRIBUTE PPPD-Downstream-Speed-Limit-1 233 integer
ATTRIBUTE PPPD-Upstream-Speed-Limit-2 234 integer
ATTRIBUTE PPPD-Downstream-Speed-Limit-2 235 integer
ATTRIBUTE PPPD-Upstream-Speed-Limit-3 236 integer
ATTRIBUTE PPPD-Downstream-Speed-Limit-3 237 integer
ATTRIBUTE Acct-Interim-Interval 85 integer


После этого перезапускаем радиус:

#/etc/init.d/freeradius restart

Если пишет ошибку, то команда freeradius -X выдает лог и служит для поиска онных.

6. Настраиваем radiusclient.
Редактируем /etc/radiusclient/servers

127.0.0.1 radsecret

dictionary.microsoft кладем в /etc/radiusclient/
эти файлы отвечают за поддержку mschap v2 и mppe
взять фаил можно с cakebilling.googlecode.com/files/etc.tar.bz2 без него mschap2 и mppe работать отказывается.
в фаил dictionary добавляем строки:

INCLUDE /etc/radiusclient/dictionary.microsoft

# Limit session traffic
ATTRIBUTE Session-Octets-Limit 227 integer
# What to assume as limit - 0 in+out, 1 in, 2 out, 3 max(in,out)
ATTRIBUTE Octets-Direction 228 integer
# Connection Speed Limit
ATTRIBUTE PPPD-Upstream-Speed-Limit 230 integer
ATTRIBUTE PPPD-Downstream-Speed-Limit 231 integer
ATTRIBUTE PPPD-Upstream-Speed-Limit-1 232 integer
ATTRIBUTE PPPD-Downstream-Speed-Limit-1 233 integer
ATTRIBUTE PPPD-Upstream-Speed-Limit-2 234 integer
ATTRIBUTE PPPD-Downstream-Speed-Limit-2 235 integer
ATTRIBUTE PPPD-Upstream-Speed-Limit-3 236 integer
ATTRIBUTE PPPD-Downstream-Speed-Limit-3 237 integer
ATTRIBUTE Acct-Interim-Interval 85 integer


правим фаил /etc/hosts

127.0.0.1 localhost vpn-server
127.0.1.1 localhost vpn-server

vpn-server — это имя ВАШЕГО сервера, меняете на ваше усмотрение. Иначе радиус клиент не сможет соединиться с радиус-сервером.

7. Далее необходимо создать БД для AbillS

#mysql -u root -p
GRANT ALL ON abills.* TO abills@localhost IDENTIFIED BY "yourpassword";
CREATE DATABASE abills;

Вариант2: Можно поступить проще, установить пакет phpmyadmin и сделать все за 1 минуту включая генерирование стойкого пароля.
sudo apt-get install phpmyadmin
далее
ip-адрес-вашего-сервера/phpmyadmin
вводим логин root и пароль, для управления сервером и
закладка «Привилегии» –> «Добавить нового пользователя»
Имя пользователя: abills
Хост: localhost
Пароль: нажать кнопку сгенерировать, пароль запомнить или записать.
Поставить галку: Создать базу данных с именем пользователя в названии и предоставить на нее полные привилегии.
Жмем Ок, база создана.

Теперь дамп БД из каталога с abills нужно занести в БД

#mysql -u root -p abills < abills.sql

Настраиваем конфигурационный фаил Abills
В папке /usr/abills/libexec выполняем

#cd /usr/abills/libexec
#cp config.pl.default config.pl

затем его редактируем.

Указываем верные реквизиты доступа к БД, также меняем некоторые параметры:

$conf{dbhost}='localhost';
$conf{dbname}='abills';
$conf{dbuser}='abills';
$conf{dbpasswd}='SxTcBAx7dYfR7cG7';
$conf{dbcharset}='utf-8';
$conf{default_language}='russian';
$conf{periodic_check}='yes';
$conf{ERROR_ALIVE_COUNT} = 10;
$conf{RADIUS2}=1;

Отключаем лишние модули:

@MODULES = ('Dv',
# 'Voip',
# 'Docs',
# 'Mail',
'Sqlcmd');


8.Правим конф /usr/abills/Abills/defs.conf
меняем только приведенные ниже строки

$SNMPWALK = '/usr/bin/snmpwalk';
$SNMPSET = '/usr/bin/snmpset';
$GZIP = '/bin/gzip';
$TAR='/bin/tar';
$MYSQLDUMP = '/usr/bin/mysqldump';
$IFCONFIG='/sbin/ifconfig';


Теперь будет работать backup, изначально конфиг заточен под freeBSD.

8. Создаем сертификат для Apache

#mkdir /etc/apache2/ssl

отвечаем на вопросы следующей команды:

#make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/apache2/ssl/apache.pem
#a2enmod ssl


Заменяем текст из /etc/apache2/sites-available/default-ssl на приведенный.

<VirtualHost *:443>
SSLEngine On
SSLCertificateFile /etc/apache2/ssl/apache.pem
DocumentRoot /usr/abills/cgi-bin/
Alias /abills "/usr/abills/cgi-bin/"
<Directory "/usr/abills/cgi-bin">
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule ^(.*) - [E=HTTP_CGI_AUTHORIZATION:%1]
Options Indexes ExecCGI SymLinksIfOwnerMatch
<_/_IfModule>
AddHandler cgi-script .cgi
Options Indexes ExecCGI FollowSymLinks
AllowOverride none
DirectoryIndex index.cgi
#Options ExecCGI
<Files ~ ".(db|log)$">
Order allow,deny
Deny from all
<_/_Files>
<_/_Directory>
#Admin interface
<Directory "/usr/abills/cgi-bin/admin">
AddHandler cgi-script .cgi
Options Indexes ExecCGI FollowSymLinks
AllowOverride none
DirectoryIndex index.cgi
order deny,allow
allow from all
<_/_Directory>
ErrorLog /var/log/apache2/error-abills.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /var/log/apache2/access-abills.log combined
<_/_virtualhost>


ПРИ КОПИРОВАНИИ УБЕРИТЕ ЗНАКИ ПОДЧЕРКИВАНИЕ ПЕРЕД И ПОСЛЕ СЛЭША!!!

Меняем кодироку на cp1251 здесь /etc/apache2/conf.d/charset
AddDefaultCharset cp1251

Создаем симлинк:

#ln -s /etc/apache2/sites-available/default-ssl /etc/apache2/sites-enabled/default-ssl


Перезапускаем apache

#/etc/init.d/apache2 restart

Проверяем работу сервера, заходим по адресу:
ip-адрес-вашего-сервера/admin
Если все завершилось успешно, гут. Если нет, читаем логи. В них вся сила!

9. Настройка pptpd:

Редактируем /etc/pptpd.conf
ppp /usr/sbin/pppd
option /etc/ppp/pptpd-options
connections 500
localip 192.168.160.1


Редактируем /etc/ppp/options, добавляем строку
+mschap-v2

Редактируем /etc/ppp/pptpd-options, добавляем строки:

ms-dns 192.168.160.1 # или любой удобный для вас днс сервер
asyncmap 0
lcp-echo-failure 30
lcp-echo-interval 5
ipcp-accept-local
ipcp-accept-remote

plugin radius.so
plugin radattr.so


По умолчанию конф настроен на mschap-v2+mppe.

Пишем скрипт шейпера и даем права запуска.

#touch /etc/ppp/ip-up.d/shaper
#chmod 744 /etc/ppp/ip-up.d/shaper
#nano /etc/ppp/ip-up.d/shaper


#!/bin/sh

if [ -f /var/run/radattr.$1 ]
then
DOWNSPEED=`/usr/bin/awk '/PPPD-Downstream-Speed-Limit/ {print $2}' /var/run/radattr.$1`
UPSPEED=`/usr/bin/awk '/PPPD-Upstream-Speed-Limit/ {print $2}' /var/run/radattr.$1`
# echo $DOWNSPEED
# echo $UPSPEED >
/sbin/tc qdisc del dev $1 root > /dev/null
/sbin/tc qdisc del dev $1 ingress > /dev/null

##### speed server->client
if [ "$UPSPEED" != "0" ] ;
then
# /sbin/tc qdisc add dev $1 root handle 1: htb default 20 r2q 1
/sbin/tc qdisc add dev $1 root handle 1: htb default 20
/sbin/tc class add dev $1 parent 1: classid 1:1 htb rate ${UPSPEED}kbit burst 4k
/sbin/tc class add dev $1 parent 1:1 classid 1:10 htb rate ${UPSPEED}kbit burst 4k prio 1
/sbin/tc class add dev $1 parent 1:1 classid 1:20 htb rate ${UPSPEED}kbit burst 4k prio 2
/sbin/tc qdisc add dev $1 parent 1:10 handle 10: sfq perturb 10 quantum 1500
/sbin/tc qdisc add dev $1 parent 1:20 handle 20: sfq perturb 10 quantum 1500
/sbin/tc filter add dev $1 parent 1:0 protocol ip prio 10 u32 match ip tos 0x10 0xff flowid 1:10
/sbin/tc filter add dev $1 parent 1:0 protocol ip prio 10 u32 match ip protocol 1 0xff flowid 1:10
/sbin/tc filter add dev $1 parent 1: protocol ip prio 10 u32 match ip protocol 6 0xff match u8 0x05 0x0f at 0 match u160x0000 0xffc0 at 2 match u8 0x10 0xff at 33 flowid 1:10
fi
##### speed client->server
if [ "$DOWNSPEED" != "0" ] ;
then
/sbin/tc qdisc add dev $1 handle ffff: ingress
/sbin/tc filter add dev $1 parent ffff: protocol ip prio 50 u32 match ip src 0.0.0.0/0 police rate ${DOWNSPEED}kbit burst 12k drop flowid :1
fi
fi


Есть еще один способ шейпить. Через модуль IPN. Об этом способе можно почитать на форуме разработчика.

10. По желанию, устанавливаем squid, делаем его прозрачным.

#apt-get install squid

меняем строки в файле /etc/squid/squid.conf

http_port 3128

на

http_port 3128 transparent

По умолчанию, в конфиге прописаны все возможные сети, убираем комментарий:
http_access allow localnet

перезапускаем сервис

# /etc/init.d/squid restart

11. Включаем нат и прописываем следущие строчки в фаил rc.local
правила фаервола:
ip адрес 192.168.1.10, смотрит в сторону adsl роутера.

# Сбросить правила и удалить цепочки.
iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -X
iptables -t nat -X
iptables -t mangle -X

#Правила для NAT
iptables -t nat -A POSTROUTING -s 192.168.160.0/255.255.255.0 -j SNAT --to-source 192.168.1.10

#Правило для прозрачного прокси, если таковой имеется.
iptables -t nat -A PREROUTING -p tcp -s 192.168.160.0/24 --dport 80 -j REDIRECT --to-port 3128

#Закрываем важные порты на Интерфейсах
iptables -A INPUT -p TCP -i eth0 --dport 3128 -j DROP #Порты proxy
iptables -A INPUT -p TCP -i eth1 --dport 3128 -j DROP
iptables -A INPUT -p TCP -i eth0 --dport 3306 -j DROP #mysql
iptables -A INPUT -p TCP -i eth1 --dport 3306 -j DROP

#Открываем Фовардинг
echo "1" > /proc/sys/net/ipv4/ip_forward

exit 0


Скрипт примитивный, но для начала хватит.

12. В /etc/crontab заносим следующее.

*/5 * * * * root /usr/abills/libexec/billd -all
1 0 * * * root /usr/abills/libexec/periodic daily
1 0 1 * * root /usr/abills/libexec/periodic monthly
#backup
1 3 * * * root /usr/abills/libexec/periodic backup


13. Настрока Abills
Открываем web-интерфейс админки по адресу ip-адрес-вашего-сервера/admin
Логин/пароль abills/abills их можно будет потом сменить.

По умолчанию. NAS, пользователь и тариф уже создан. Мы изменим под свои условия.
Идем Система->Сервер доступа
Ip пишем 127.0.0.1
Выбираем тип pppd:pppd + Radius
Alive (sec.): 120
RADIUS Parameters (,): Acct-Interim-Interval=60
Теперь добавляем IP POOLs:
ставим 192.168.160.2-192.168.160.254

Заводим группы тарифов:
/ Система/ Internet/ Тарифные планы/ Группы/
добавил: безлимит, GID: 0
Идем в/ Система/ Internet/ Тарифные планы/
#: 1
Название: «безлимит»
Группа: «1: безлимит»
Дневная а/п: 10
добавить

Определяем скорости:
/ Система/ Internet/ Тарифные планы/
жмем на, выбранный тариф «Интервалы»
жмем кнопку добавить, затем Трафик
вписываем скорости, добавить.

Теперь заводим пользователя:
/ Клиенты/ Логины/ Internet/ Пользователи Добавить/
создаем клиента: пароль, логин, ФИО, кредит. И сразу можно положить деньги на счет.

Тут главное сначала создать группы тарифов, а потом сами тарифы. Кроме этого читайте на WiKi подробно про все опции. Обычно начинают орать раньше чем поймут что опции означают.

По данной инструкции мной было поднято 4 сервера и успешно работают.
Уже не актуально, абиллс радует своей стабильностью и гибкостью, остальное в ваших руках.

Если нужно убрать шифрование, делаем так:
Убираем строчку «require-mppe-128» в файле /etc/ppp/pptpd-options Это даст бОльшую стабильность VPN туннелей и разгрузит ЦПУ.
Скриншоты результата:
image
image
image
image
Всю благодарность адресовать Nesmit'y с forum.ubuntu.ru =) Я тут ни при чем. Он делал эту статью, я лишь донес ее людям, т.к. от его имени упорно не пускали эту статью в свет!))
Удачи! готов выслушать все вопросы, включая неисправности.
@Slimer
карма
49,0
рейтинг 0,0
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Спецпроект

Самое читаемое Администрирование

Комментарии (33)

  • +1
    Большое спасибо за HOW-TO! Уверен, что многие добавят в закладки :-)
    • +3
      Не за что))) Проблема осталась только в том, что не работает мониторинг активных юзеров, alive пакеты не ходят. Бьюсь над этой задачей, как решу, обязательно дополню пост =) А в целом все работает))
      • 0
        на сколько я помню, что-бы правильно отрабатывались Alive пакеты нужно два условия — что-бы NAS посылал этот атрибут pppd и в dictionary эти самые атрибуты были описаны.
        • 0
          спасибо, покопаю в эту сторону
  • 0
    Очень интересно. Не могли бы вы выложить пару скринов админки?
  • 0
    Поднимали похожую связку. По своему опыту могу сказать, что работа автором проделана колоссальная. Спасибо. Покажите пару скринов действующей системы.
  • 0
    mkdir /usr/abills/var
    mkdir /usr/abills/var/log

    Можно заменить на
    mkdir -p /usr/abills/var/log
    mkdir /usr/abills/var

    А что мы сделали перед этим?
    Дальше вчитываться расхотелось… В закладки поставлю, буду обновлять версию знакомцам, мимо не пройду…
    Спасибо за концентрацию всех шаманских приседаний в одной статье.

    В свое время я долго рылся в замусоренном форуме abills в поисках ответов на банальные вопросы.
    Тогда все было крайне сыро и непрофессионально.
    Разработчик маловменяем и на конструктивный диалог идет только за деньги.
    Создалось впечатление, что он использует толпу тестеров только для отлова багов, а исправленные версии продает, в свободный доступ не выкладывая…

    Еще раз спасибо за инфу о новой версии, проверю.
    • 0
      на этой связке работает сеть на 500+ компов. Уже несколько лет полет нормальный.

      первый сервер ставили на suse.
      второй пришлось ставить экстренно в связи со смертью железа на первом. процесс поднятия сервера с нуля занял
      около 3х часов… и был он на ubuntu :)

      Разработчик вполне вменяем:) по крайней мере когда нам потребовалось сделать плагин к LightSqiud для сопоставления выданных abills айпи адресов пользователям, он меня отлично проконсультировал.
      З.Ы. потом выложенную мной на форуме функцию через некоторое время нашел в очередном пакете LightSqiud :)
      • 0
        На этой не может… 0.40b только-только появилась ;)
        Я пару лет назад то же поставил знакомцам биллинг…
        То же работает, как-то… Я не сопровождаю его.
        Но если не звонят по пол-года, и пароль рутовый не просят, значить нормально.
        Пока ставил, замучался баги отлавливать и недонамеки в форуме вычислять…
        Мне оказалось проще договориться с автором другого биллинга о доработке, чем выпытать у «Асмодея»…

        Кроме того, у меня стойкое недоверие к людям, которые не в состоянии падежные окончания осилить :)
        А по «инструкциям», так создается впечатление, что суть и смысл «магического посвистывания» они там сами не осознают.

        И собрать в одном месте все шаманские па, это таки да, стоит уважения…
        • 0
          вы про 0.50?
          дата релиза Abills 0.40 2008-09-15

          все проблемы в основном с разными сборками pppd и radius в различных дистрибутивах.
          например с сервером на suse был следующий нюанс… все работало но только с win клиентами:)
          как потом оказалось баг в pppd.
          • 0
            Недавно смотрел последний стабильный. Оказался 0.3.7…
            На дату выпуска даже не глянул.
            Увидел 0.4b, с дуру решил, что проект ожил…
            Таки нет…

            А про различия в сборках pppd я почти помнил…
            Спасибо ;)
  • 0
    Извиняюсь, нашел. На сайте такое меню, что сразу и не замешь)
  • +1
    так выкладывать скрины админки или нет?)
    • 0
      да, разумеется.
      • +1
        готово) еще требуется?
        • 0
          спасибо. пока нет 1-)
  • 0
    Пару месяцев назад делал такое для небольшой локалки. Настройка, конечно, не из самых простых, но работает отлично.
  • 0
    На Realtek, кстати, ничего не глючит. :) Раздавал интернет по VPN, интернет получал по VPN от провайдера.
  • 0
    Попробуйте еще вместо pptpd использовать accel-pptp, неплохо так процессор разгружает.
  • 0
    А почему не PPPOE?
    А почему бы не Mikrotik в роли NAS?
  • +2
    Исправил текст поста, теперь работает и мониторинг!!! Кому интересно — могу сказать что сделал.
    Вот теперь работает ВСЕ! пользуйтесь на здоровье =) И спрашивайте если что-то не получается
    • 0
      Настоящий мужик! :-) Было бы неплохо узнать что именно Вы сделали. Заранее благодарен.
  • 0
    Спасибо =) Добавил в секцию moduless файла radiusd.conf две новых модуля, которые вообще не были описаны в how-to от forum.ubuntu.ru

    abills_auth
    exec abills_auth {
    program = "/usr/abills/libexec/rauth.pl"
    wait = yes
    input_pairs = request
    shell_escape = yes
    output = no
    output_pairs = reply
    }

    abills_acc
    exec abills_acc {
    program = "/usr/abills/libexec/racct.pl"
    wait = yes
    input_pairs = request
    shell_escape = yes
    output = no
    output_pairs = reply
    }
    . Затем объвил одну из них в секции preact файла /etc/freeradius/sites-enabled/default.
    один модуль добавленный понадобился. а предназначение второго мне неизвестно =) Самое главное мониторинг работает =)
  • 0
    Дополнил пост инструкцией по отключению шифрованию, т.к. оно не заводится. на днях попробую завести шифрование.
  • 0
    Хех, я с примерно с такой связки начал (freebsd+freeradius+mpd+abills), удивлен, что в этой статье обсуждается версия на которую я обновлял последний свой сервер с биллингом…
  • 0
    Пользуюсь абиллсом уже несколько месяцев, и нагрузка от запихивания нетфлоу в базу многократно возросла, уже пришлось купить новый сервер.
    На форуме абиллс вроде публиковались патчи для ускорения работы скрипта traffic2sql, но они потом куда-то пропали, а я забыл сохранить.
    Если у кого-го они сохранились — поделитесь пожалуйста!
  • 0
    Ну вот и узнал насчет шифрования. пересобирать ядро надо для этого. Кому надо — вперед, пусть ищет инфу)) Я думаю редкие люди будут заморачиваться из за отсутствия шифрования. Так что статью дополнять не буду, исправлю так, чтобы сразу было отключено шифрование
  • 0
    Лучше настроить связь freeradius <=> abills не через exeс files, а через rlm_perl — производительность серьёзно увеличится за счёт того, что скрипты один раз загрузятся в память и будут выполняться оттуда.

    В конфигах вместо rauth.pl и racct.pl в таком случае будет фигурировать rlm_perl.pl

    Подробнее тут и на форуме.
  • 0
    На меня, я смотрю, полилась грязь с форум.убунту.ру, я считаю что они не правы, ссылку источника я разместил, ничего не орал, что я это все я сделал, до последней буковки, просто хотел облегчить жизнь людям. Прошу прощения, если задел автора той темы Nesmit'а, хочу выразить ему благодарность за проделанную работу, которую я подправил под фрирадиус2 и исправил мониторинг. И думаю, что его статья для 0.50 абиллиса достойна опубликования на хабре, и я даже не против заменить свой пост его, т.к. там намного меньше ошибок.
  • 0
    Полностью отредактировал пост, заменив его хав-ту от несмита для новой версии.
  • 0
    Кстати, хабр упорно ест теги и другие от конфига апача. Придется вам, товарищи исправлять вручную текст конфига апача
  • 0
    2-я основа и 3-й линк на опеннет — одно и то же. :)
  • 0
    Помогите товарищи!!! начинающему линуксоиду

    Проверка freeradius
    Выдает такую ошибку

    radiusd: #### Instantiating modules ####
    instantiate {
    ERROR: Cannot find a configuration entry for module «exec».

    В чем может бить причина??

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.