FAQ по установке и настройке IC-RADIUS под FreeBSD

Этот документ не претендует на полноту. Замечания и дополнения 
приветствуются. Последнюю версию можно получить:
http://www.opennet.ru/base/faq/icradius.txt.html
http://www.i.kremenchug.net/docs/icradius.htm
http://www.i.kremenchug.net/docs/icradius.txt.gz

Автор: Andrew Pavlov and@kremenchug.net

Благодарности за поддержку и конструктивную критику:
    Boris Kovalenko      boris@tagnet.ru
    Denis Ladeishchikov  snide@europe.com
    Kirill Lopuchov      kirill@sfugntu.bashnet.ru

Дата последнего обновления: ср  31 июл 09:06:44 2002

Q.  Что такое RADIUS, и как он работает?
Q.  Какие RADIUS сервера существуют?
Q.  Какой же RADIUS выбрать и где взять?
Q.  Как установить и настроить IC-RADIUS?
Q.  Я сделал все как написано, а radiusd выпадает в core.
Q.  IC-RADIUS запустился, а что делать дальше, как мне заставить своих 
    пользователей аутентифицироваться по RADIUS?
Q.  Все получилось, а как быть с пользователями?
Q.  У меня масса пользователей, так неохота прописывать каждому 
    повторяющиеся атрибуты, что делать?
Q.  Можно ли сделать так, чтобы пользователь автоматически добавлялся 
    в группу?
Q.  Где я могу посмотреть весь набор атрибутов и их значений, 
    которые использует мой RADIUS?
Q.  Где IC-RADIUS хранит статистику по отработанным ресурсам?
Q.  Как я могу ограничить пользователя, чтобы он ходил только на 
    определенные адреса?
Q.  Как я могу ограничивать своих пользователей по времени?
Q.  А как сделать, чтобы пользователь мог логиниться только в определенное 
    для него время?
Q.  Могу ли я ограничивать своих пользователей по трафику?
Q.  Меня не устраивают пароли в открытом виде, что можно сделать?
Q.  У меня несколько NAS, как я могу ограничить пользователя так, чтобы 
    он мог заходить только на определенный NAS и/или только на 
    определенный порт?
Q.  Я создал пользователя и просто хочу его проверить, никуда не 
    дозваниваясь.
Q.  Как я могу посмотреть, кто на какой NAS под каким ip залогинен в 
    данный момент?
Q.  Как я могу посмотреть, кто, когда логинился?
Q.  Есть ли какие-нибудь web-интерфейсы для администрирования и 
    просмотра статистики?
Q.  Что если мне надо перенести мою базу на другой хост?
Q.  Мне этого мало, что я еще могу почитать про IC-RADIUS?


Q.  Что такое RADIUS, и как он работает?
A.  RADIUS - служба удаленной аутентификации входящих звонков пользователей. 
    Он является протоколом для передачи информации по аутентификации, 
    авторизации и конфигурации между сервером доступа к сети (NAS)  и 
    сервером аутентификации (RADIUS). Данный стандарт подробно описывается 
    в RFC 2138 и 2139 и доступен на ftp://ftp.ripe.net/rfc/. 
    Процесс условно может быть разделен на 5 стадий:
    1) пользователь дозванивается до NAS;
    2) NAS посылает запрос к RADIUS посредством стандартного набора пар 
       атрибут/значение;
    3) RADIUS проверяет, существует ли пользователь, если да, то может ли 
       он войти в систему;
    4) RADIUS посылает обратно к NAS или Accept или Reject, что определяет 
       разрешение доступа пользователю;
    5) по завершению пользовательской сессии NAS возвращает RADIUS серверу 
	   информацию по выработанным этим пользователем ресурсам.

Q.  Какие RADIUS сервера существуют?
A.  Из бесплатных, например: FreeRADIUS, XtRadius, Cistron RADIUS, 
    Gnu-Radius, IC-RADIUS, в общем, если у Вас FreeBSD, 
    cd /usr/ports; make search key=radius.

Q.  Какой же RADIUS выбрать и где взять?
A.  Исторически сложилось, что я использую IC-RADIUS, в нем есть 
    практически все, что нужно, и его почти не пришлось обрабатывать 
    напильником :), его и рекомендую. IC-RADIUS является вариантом 
    Cistron RADIUS, но для хранения своих баз использует MySQL. 
    Скачать IC-RADIUS можно с ftp://ftp.innercite.com/pub/icradius/. 
    Если у Вас FreeBSD, загляните в коллекцию портов, 
    cd /usr/ports/net/icradius.

Q.  Как установить и настроить IC-RADIUS?
A.  Предполагаем, что у Вас FreeBSD с установленной коллекцией портов, и 
    Вы знаете MySQL (текущая версия IC-RADIUS в портах 0.18.1).
    cd /usr/ports/net/icradius
    make build
    После этого, если все прошло успешно
    make install && make clean
    cd /usr/local/etc/raddb
    cp radius.conf.sample radius.conf
    Это основной конфигурационный файл, открываем его на редактирование и 
    при необходимости изменяем следующие параметры:
    # адрес хоста на котором находится MySQL
    server localhost
    # имя пользователя для доступа к базе
    login   root
    # пароль для доступа к базе
    password rootpass
    Остальное оставляем по умолчанию. Далее нам нужно создать базу и 
    сделать в нее импорт словаря пар атрибутов/значений. Необходимый 
    комплект скриптов и дамп базы после инсталляции находится в 
    /usr/local/share/icradius. Предполагаем, что RADIUS и MySQL находятся 
    у нас на одном хосте, и MySQL уже запущен.
    cd /usr/local/share/icradius/scripts
    mysql -p -e "create database radius";
    mysql -p radius < radius.db
    Делаем импорт словаря, для этого нам нужно сначала отредактировать 
    скрипт dictimport.pl, т.е. указать Ваш логин/пароль к базе и, если 
    нужно, имя хоста.
    my $dbusername = 'root';
    my $dbpassword = 'rootpass';
    my $dbh = DBI->connect("DBI:mysql:radius:localhost",
				    $dbusername,$dbpassword) || die ...;
    Далее запускаем:
    ./dictimport.pl ../raddb/dictionary
		
    Подправим чуть-чуть скрипт для запуска, 
    /usr/local/etc/rc.d/icradiusd.sh, изменим переменную ARGS, которая
    должна принимать вид ARGS="-yz". Ключ -y указывает, что все детали 
    о каждом запросе необходимо записывать в /var/log/radius.log, 
    ключ -z по желанию, он позволяет включать пароли в radius.log даже при 
    успешных логинах, если пароль в базе хранится в открытом виде 
    (this is very insecure! (c) man radiusd :). Можно также добавить ключ
    -i , если у Вас multi-homed хост.

    Note: IC-RADIUS использует порты описанные в /etc/services
    radius	1812/udp  # RADIUS authentication protocol (IANA sanctioned)
    radacct	1813/udp  # RADIUS accounting protocol (IANA sanctioned)
    если Вы хотите использовать другие порты, измените /etc/services, или
    укажите при запуске ключ -p , тогда для аутентификации RADIUS 
    будет использовать указанный порт, а для аккаунтинга указанный порт+1.

    Все, запускаем! 
    /usr/local/etc/rc.d/icradiusd.sh start
    ps ax | grep radiusd
    Должно появиться два процесса, один занимается аутентификацией, а второй
    аккаунтингом.

Q.  Я сделал все как написано, а radiusd выпадает в core.
A.  Причина тут, как правило, одна: radiusd не может соединиться с базой. 
    Т.е. или MySQL не запущен, или неправильно указаны параметры в 
    radius.conf, смотрите /var/log/radius.log, а вообще, при разного рода 
    неприятностях пробуйте запускать radiusd с ключами -x (debug mode) и
    -f (stay foreground).

Q.  IC-RADIUS запустился, а что делать дальше, как мне заставить своих 
    пользователей аутентифицироваться по RADIUS?
A.  Для этого Вам нужно организовать NAS, на который будут обращаться 
    пользователи, и который будет в данном случае RADIUS-клиентом.
    Для начала нужно создать запись о NAS в таблице nas, поля в 
    таблице следующие:
    id		- id, указывать не нужно, auto_increment
    nasname	- имя NAS
    shortname	- короткое имя NAS, которое будет отображаться в логе.
    ipaddr 	- ip адрес NAS
    type 	- тип NAS,  нужен для скрипта /usr/local/sbin/checkrad, 
		  который проверяет на предмет соединения пользователя
		  с данным NAS
    ports 	- количество портов на NAS
    secret 	- пароль для этого NAS
    community 	- snmp community, нужен для checkrad
    snmp 	- должен ли делать проверку checkrad на этом NAS (on|off)
    итак
    mysql -p  radius
    mysql> INSERT INTO nas VALUES 
		('', 'localhost.localdomain','localhost',
		 '127.0.0.1','computone','10','secret','public','on');
    mysql> quit
    После этого нужно перегрузить radiusd, 
    /usr/local/etc/rc.d/icradiusd.sh reload, 
    или 
    kill -HUP `cat /var/run/radiusd.pid`.
    Теперь создадим сам NAS, рассмотрим создание dial-in на FreeBSD с 
    использованием user-level ppp+getty.
    Для начала настроим один модем на поднятие трубы после первого звонка.
    Запускаем ppp:
    ppp> set dev /dev/ttyd0
    ppp> set sp 57600
    ppp> t
    ats0=1&w
    ~.
    ppp>quit
    Далее настраиваем сам ppp. 
    cd /etc/ppp
    touch radius.conf
    В /etc/ppp/radius.conf
    # service type	radius server	secret	timeout	retries
    auth		127.0.0.1:1812	secret	5	3
    acct		127.0.0.1:1813	secret	5	3

    В /etc/ppp/ppp.conf
    radius:
    	set radius /etc/ppp/radius.conf
    dial-in:
    	enable chap pap chap80nt chap81 passwdauth
    	set ifaddr x.x.x.x y.y.y.1-y.y.y.254
	accept dns
	load radius

    Создадим так называемый ppp-shell, который будет запускаться 
    на наших ppp пользователей.
    touch pppshell.sh
    chmod 755 pppshell.sh
    и запишем в него
    #!/bin/sh
    exec /usr/sbin/ppp -direct dial-in
    Более подробную информацию по использованию user-level ppp 
    можно получить в /usr/share/doc/ru/books/ppp-primer и 
    /usr/share/examples/ppp.
    Теперь укажем в /etc/gettytab программу для ppp аутентификации
    std.57600|57600-baud:\
    	    :np:sp#57600:\
	    :pp=/etc/ppp/pppshell.sh:

    Запускаем getty на нужный нам порт, в /etc/ttys
    ttyd0	"/usr/libexec/getty std.57600" dialup on secure
    делаем killall -HUP init и смотрим по ps, появился ли getty на порту.
    Осталось рассмотреть такую мелочь, как проверка на предмет 
    Multiple logins. Для этого используется скрипт /usr/local/sbin/checkrad,
    о котором уже упоминалось выше. В нем содержится набор функций для 
    различных типов NAS, для нашего NAS мы указали computeone, 
    соответственно будет использоваться функция computone_finger, 
    которую нужно немного подправить. Для того, чтобы выполнялась проверка 
    по checkrad, значение поля snmp в таблице nas должно быть обязательно on.
    Приведем условие в этой функции к такому виду
    If( $line[$num] =~ / $ARGV[3] |^$ARGV[3] / ) { ...
    Проверка будет выполняться с помощью finger, поэтому 
    просто пропишем в /etc/inetd.conf
    finger  stream tcp nowait/3/10 nobody /usr/libexec/fingerd fingerd
    или проще
    finger  stream tcp nowait/3/10 nobody /usr/bin/w w
    Добавим в /etc/hosts.allow
    fingerd: localhost 127.0.0.1 : allow
    fingerd: ALL : deny
    или соответственно
    w: localhost 127.0.0.1 : allow 
    w: ALL : deny
    дабы посторонние не видели, что у нас тут делается. Делаем 
    killall -HUP inetd (inetd должен быть запущен с ключами -wW), и 
    NAS готов к работе.

Q.  Все получилось, а как быть с пользователями?
A.  Существуют две основные пользовательские таблицы radcheck и radreply. 
    В первой хранятся аутентификационные атрибуты пользователя, назовем 
    их check, например пароль, различные временные ограничения, 
    а во второй хранятся атрибуты, которые RADIUS возвращает NAS, 
    например ip адрес, протокол, назовем их reply. Формат таблиц 
    одинаков.
    id		- id, указывать не нужно, auto_increment
    UserName	- имя пользователя
    Attribute	- атрибут
    Value	- значение атрибута

    Приведем пример создания обычного PPP пользователя.
    mysql> INSERT INTO radcheck VALUES
    		('','someuser','Password','somepassword');
    mysql> INSERT INTO radcheck VALUES
    		('','someuser','Simultaneous-Use','1');
    Этот атрибут указывает количество одновременно работающих 
    пользователей под таким логином. При попытке зайти под этим логином 
    еще раз, появится соотвествующая запись в radius.log:
    Error: Multiple logins [someuser] (from nas somenas/port) max. 1

    mysql> INSERT INTO radreply VALUES
    		('','someuser','Service-Type','Framed-User');
    mysql> INSERT INTO radreply VALUES
    		('','someuser','Framed-IP-Address','255.255.255.254');
    Значение 255.255.255.254 указывает, что ip адрес должен выдаваться NAS.

    mysql> INSERT INTO radreply VALUES
    		('','someuser','Framed-Protocol','PPP');
    Указывает какой протокол должен включать NAS на данного пользователя.

    mysql> INSERT INTO radreply VALUES
    		('','someuser','Framed-MTU','1500');

    Этого вполне достаточно для создания полноценного ppp пользователя. 
    Перезапускать radiusd после добавления нового пользователя или его 
    модификаций не нужно. 

Q.  У меня масса пользователей, так неохота прописывать каждому 
    повторяющиеся атрибуты, что делать?
A.  Есть соответствующие  групповые таблицы, radgroupcheck и radgroupreply. 
    Поля у них те же самые, но вместо поля UserName используется поле 
    GroupName. Для включения пользователя в группу необходимо добавить 
    соотвествующюю запись в таблицу usergroup. Например:
    mysql> INSERT INTO radgroupcheck VALUES
    	  ('','somegroup','Simultaneous-Use','1');
    mysql> INSERT INTO radgroupreply VALUES
    	  ('','someuser','Service-Type','Framed-User');
    mysql> INSERT INTO radgroupreply VALUES
    	  ('','someuser','Framed-IP-Address','255.255.255.254');
    mysql> INSERT INTO radgroupreply VALUES
    	  ('','someuser','Framed-Protocol','PPP');
    mysql> INSERT INTO radgroupreply VALUES
    	  ('','someuser','Framed-MTU','1500');
    mysql> INSERT INTO usergroup VALUES
    	  ('','someuser','somegroup');

    В таком случае при создании нового пользователя достаточно сделать 
    две записи: одну в radcheck, в которой будет указан пароль, а вторую 
    в usergroup, которая соответственно укажет, к какой группе относится 
    пользователь.

Q.  Можно ли сделать так, чтобы пользователь автоматически добавлялся 
    в группу?
A.  Для этого нужно использовать атрибуты Prefix/Suffix и таблицу hints.
    mysql> INSERT INTO radgroupcheck VALUES
    	  ('','somegroup','Prefix','P');
    mysql> INSERT INTO radgroupcheck VALUES
    	  ('','somegroup','Strip-User-Name','Yes');
    Если значение атрибута Strip-User-Name установлено в Yes, это
    означает сокращение имени пользователя после обнаружения 
    Prefix/Suffix, и только после этого его поиск в базе.
    Т.е. пользователь должен указать Psomeuser во время дозвона к NAS, 
    а поиск в базе будет проводиться уже по имени someuser.	

    mysql> INSERT INTO hints VALUES ('','DEFAULT','somegroup');
    Можно также иметь несколько DEFAULT записей, все они будут просмотрены 
    в порядке hints.id, пока не будет обнаружен соответствующий 
    Prefix/Suffix.

Q.  Где я могу посмотреть весь набор атрибутов и их значений, 
    которые использует мой RADIUS?
A.  В таблице dictionary или в файле dictionary, из которого Вы 
    делали импорт в таблицу.

Q.  Где IC-RADIUS хранит статистику по отработанным ресурсам?
A.  В таблице radacct. Посмотреть формат таблицы можно так:
    mysql -p -e "desc radacct" radius

Q.  Как я могу ограничить пользователя, чтобы он ходил только на 
    определенные адреса?
A.  Существует такой reply атрибут, как Filter-Id, который передает 
    название фильтра в NAS.
    Например, user-level ppp обрабатывает этот атрибут как дополнительную 
    метку в файлах /etc/ppp/ppp.linkup и /etc/ppp/ppp.linkdown.
    mysql> INSERT INTO radreply VALUES
    	  ('','someuser','Filter-Id','somefilter');
    Соответственно, в конфигурации ppp в файле ppp.linkup прописываем 
    somefilter:
    	set filter out 0 permit 0 0
    	set filter in  0 permit 0 0

    Более подробную информацию по использованию фильтров в user-level ppp 
    можно получить в /usr/share/doc/ru/books/ppp-primer и 
    /usr/share/examples/ppp.

Q.  Как я могу ограничивать своих пользователей по времени?
A.  Существуют такие check атрибуты, как:
	Total-Time-Limit	
        Monthly-Time-Limit
        Weekly-Time-Limit
        Daily-time-Limit
    и reply атрибут 
	Session-Timeout

    Атрибут Session-Timeout можно установить просто на сессию, или он 
    будет вычисляться в зависимости от указанных check атрибутов и 
    статистики по времени в radacct. Затем RADIUS сервер возвращает 
    этот атрибут к NAS, который, в свою очередь, будет производить 
    отключение пользователя по истечении времени. Если при проверке 
    check атрибутов окажется, что квота этого пользователя закончилась, 
    RADIUS вернет Reject. Значения всех этих атрибутов задаются в секундах.
 
    Note: Если Вы используете в качестве NAS user-level ppp, то Вам нужно 
    взять user-level ppp и libradius из cvs, с anoncvs.freebsd.org, 
    потому как параметр Filter-Id и Session-Timeout в нем начали 
    обрабатываться недавно, благодаря моим скромным усилиям :)

Q.  А как сделать, чтобы пользователь мог логиниться только в определенное 
    для него время?
A.  Существует check атрибут Login-Time. Например, нам необходимо пускать 
    пользователя в любой день недели кроме субботы, воскресенья с 7:00 
    до 21:00 вечера, в субботу без ограничений, а в воскресенье с 23:00 
    до 16:55 следующего дня:
    mysql> INSERT INTO radcheck VALUES
	  ('','someuser','Login-Time','Wk0700-2100,Sa,Su2300-1655');

    Если пользователь не попал в нужный диапазон времени, RADIUS 
    вернет Reject.
	
Q.  Могу ли я ограничивать своих пользователей по трафику?
A.  Уже можете, при условии, что Вы используете в качестве NAS 
    user-level ppp. 
    Мной написаны два патча, пока еще не включенных в user-level ppp и 
    IC-RADIUS, но борьба за это ведется :)
    Работает это следующим образом, в IC-RADIUS добавлены новые check 
    атрибуты:
	Total-Octets-Limit
	Monthly-Octets-Limit
	Weekly-Octets-Limit
	Daily-Octets-Limit
    и два reply атрибута
	Session-Octets-Limit
	Octets-Direction

    Атрибут Session-Octets-Limit можно установить просто на сессию, или он 
    будет вычисляться исходя из установленных check атрибутов и статистики 
    по октетам в radacct. Затем RADIUS сервер возвращает этот атрибут к NAS, 
    который, в свою очередь, будет производить отключение пользователя по
    истечении лимита. Если при проверке check атрибутов окажется, что квота 
    этого пользователя  закончилась, то RADIUS вернет Reject. Значения всех 
    check атрибутов и Sessin-Octets-Limit задаются в октетах (байтах).

    Атрибут Octets-Direction имеет следующие значения 
	Sum		- ограничение по суммарному трафику
	Input 		- по входящему трафику
	Output 		- по исходящему трафику
	MaxOveral	- по максимальному значению SUM(IN)>SUM(OUT)
	MaxSession	- по максимальному значению, но не за все 
			  время работы, а по сессионно, SUM(GREATEST(IN,OUT))
    Если Octets-Direction не указан, то по умолчанию RADIUS будет 
    возвращать значение Sum.
		
    На IC-RADIUS патч свободно станет на версию 0.18.1 из FreeBSD портов:
    cd /usr/port/net/icradius
    make patch
    cp /xxx/icradius-octets.patch /usr/ports/net/icradius/work
    cd work/
    patch < icradius-octets.patch
    cd ..
    make build
    make install && make clean

    Note: Если у Вас уже работает IC-RADIUS, то после перекомпиляции, 
    не забудьте добавить в таблицу dictionary новые атрибуты.
	
    На user-level ppp патч может не стать, потому как я брал ppp из cvs, 
    но нужные изменения можно внести вручную, там немножко :)
    Патчи можно скачать:
    http://www.i.kremenchug.net/patches/icradius-octets.patch.gz
    http://www.i.kremenchug.net/patches/ppp-octets.patch.gz

    Note: для FreeBSD 4.x-RELEASE можно использовать патч, который добавляет 
    обработку атрибутов:
	Filter-Id
	Session-Timeout
	Session-Octets-Limit
	Octets-Direction
    и исправляет такую ошибку, как назначение RADIUS сервером пользователю 
    ip адреса 255.255.255.254.
    Скачать можно:
    http://www.i.kremenchug.net/patches/ppp-4x.patch.gz
    Установка:
    cd /usr/src/usr.sbin
    cp /xxx/ppp-4x.patch .
    patch < ppp-4x.patch
    cd ppp
    make
    make install
    
    Note: также уже существует реализация возможности отключения 
    пользователя по трафику и в pppd, доступно в cvs на ppp.samba.org. 
    Реализовано Alexandr D. Kanevskiy kad@blackcatlinux.com

Q.  Меня не устраивают пароли в открытом виде, что можно сделать?
A.  Пароли можно хранить в зашифрованном виде. Шифрование производится 
    системной функцией crypt(). На пользователя/группу должен быть 
    установлен атрибут Auth-Type со значением Crypt-Local.

Q.  У меня несколько NAS, как я могу ограничить пользователя так, чтобы 
    он мог заходить только на определенный NAS и/или только на 
    определенный порт?
A.  Добавьте в конфигурацию пользователя/группы check атрибут 
    NAS-IP-Address для ограничения по порту check атрибут NAS-Port-Id.

Q.  Я создал пользователя и просто хочу его проверить, никуда не 
    дозваниваясь.
A.  В таком случае можно воспользоваться скриптом 
    /usr/local/share/icradius/script/testrad. Для его использования 
    необходимо установить perl-модуль Authen::Radius
    cd /usr/ports/security/p5-Authen-Radius
    make build
    make install && make clean
    Также поставьте симлинк 
    ln -s /usr/local/share/icradius/raddb /etc/raddb, именно там скрипт 
    будет искать словарь атрибутов/значений.

Q.  Как я могу посмотреть, кто на какой NAS под каким ip залогинен в 
    данный момент?
A.  /usr/local/share/icradius/scripts/radwho. 
    Скрипт просматривает таблицу radacct на предмет незакрытых сессий, 
    т.е. поле AcctStopTime = 0. Не забудьте изменить в скрипте значения 
    переменных $db_user, $db_pass, $db_host, $db_db, если нужно. Значение 
    переменной $fingerd измените с 1 на 0.

    Note: Бывают моменты, когда сессия завершилась, а стоп запись не 
    закрылась, получается так называемая "подвисшая сессия". При правильно 
    настроенной проверке по checkrad такие сессии будут удаляться 
    автоматически, и в radius.log будет появляться запись вида:
    Error: Deleting stale session [someuser] (child pid xxxx) 
    (from nas somenas/port)

Q.  Как я могу посмотреть, кто, когда логинился?
A.  /usr/local/share/icradius/scripts/radlast, не забудьте изменить 
    соответствующие переменные.

Q.  Есть ли какие-нибудь web-интерфейсы для администрирования и 
    просмотра статистики?
A.  Есть, административный интерфейс 
    /usr/local/share/icradius/scripts/radius.cgi 
    и пользовательский интерфейс 
    /usr/local/share/icradius/scripts/usage.cgi

Q.  Что если мне надо перенести мою базу на другой хост?
A.  Сливаем дамп на одном хосте
    mysqldump -p radius > dump.sql
    потом заливаем его на другом
    mysql -p -e "create database radius"
    mysql -p radius < dump.sql
    и соотвественно правим /usr/local/etc/raddb/radius.conf

Q.  Мне этого мало, что я еще могу почитать про IC-RADIUS?
A.  Ну, собственно, с чего и должны были начать, man radiusd,
    оригинальной документации и FAQ, поставлямых в комплекте 
    с IC-RADIUS :). Также можете подписаться на icradius-user maillist 
    http://lists.ic-isp.com/mailman/listinfo/icradius-user. 

HIVE: All information for read only. Please respect copyright!
Hosted by hive йца: йХЕБЯЙЮЪ ЦНПНДЯЙЮЪ АХАКХНРЕЙЮ