Дерево страниц
Перейти к концу метаданных
Переход к началу метаданных

В пакет eltex-radius с билда 1.7-28 добавлены утилиты eraddebug и eradmin из родительского пакета freeradius (raddebug и radmin в оригинале).

eraddebug позволяет снимать дебаг (т.е. то, что выводится на экран при запуске сервера с ключом -X) RADIUS сервера без его остановки. Таким образом можно получать отладочную информацию без влияния на доступность и производительность сервера в production.

Для работы скрипта необходимы следующие настройки RADIUS-сервера:

/etc/eltex-radius/servers/control
listen {
        type = control
        socket = ${run_dir}/${name}.sock
        uid = eltxrad
        gid = eltxrad
        mode = rw
}

в пакете eltex-radius они хранятся в файле /etc/eltex-radius/servers/control

Запуск производится командами:

sudo -u eltxrad eradmin
sudo -u eltxrad eraddebug

Первая команда выполняет запуск утилиты eradmin, а вторая скрипта eraddebug от имени пользователя eltxrad. Для снятия дебага необходимо выполнять только вторую. eradmin самостоятельная утилита, для администрирования RADIUS-сервера. eraddebug пердставляет собой shell-скрипт, который использует возможности eradmin и автоматизирует процесс дебага сервера.

Внимание! Без заданных условий информации выводиться очень много.

Опции

ОпцияОписание
-c conditionУстановить условие выборки дебаг информации. Формат условий описан тут: http://freeradius.org/radiusd/man/unlang.html#lbAF
-f socket_fileПуть к сокет-файлу, который указывается тут socket = ${run_dir}/${name}.sock. По умолчанию читает из конфигурации. Если что то не так, можно указать сокет вручную.
-i ipv4-addressВывести дебаг для точки доступа с IPv4 адресом. То же самое с использованием conditions: -c '(Packet-Src-IP-Address == ipv4-address)'
-d config directoryДиректория конфигурации radius, по умолчанию /etc/eltex-radius.
-n mnameПрочитать файл raddb/name.conf вместо raddb/radiusd.conf.
-I ipv6-addressВывести дебаг для точки доступа с IPv6 address. Эквивалентно: -c '(Packet-Src-IPv6-Address == ipv6-address)'
-t timeoutТаймаут дебага в секундах, работа скрипта завершается по истечении этого времени. По умолчанию установлено в 60 секунд. Для выключения ограничения по времени можно использовать "-t 0".
-u nameВывести дебаг для определенного пользователя. То же, что и: -c '(User-Name == name)'
Параметр -t использовать с особой осторожностью! Крайне не рекомендуется использовать  "-t 0" в продакшне.

Примеры

eltex@ubuntu:/$ sudo -u eltxrad eraddebug -u wifiuser

Данная команда, запущенная не от имени суперпользователя root выполняет скрипт eraddebug от имени пользователя eltxrad и выводит отладочную информацию по пользователю wifitester в течении 60 секунд (таймаут по умолчанию), по истечении которых автоматически завершается.

eltex@ubuntu:/$ sudo -u eltxrad eraddebug -t 300 -u wifiuser

Данная команда запущенная не от имени суперпользователя root выполняет скрипт eraddebug от имени пользователя eltxrad и выводит отладочную информацию по пользователю wifitester в течении 5 минут, по истечении которых автоматически завершается.

root@ubuntu:/# eraddebug -t 0 -u wifiuser

При запуске от суперпользователя root в использовании sudo нет необходимости. Данная команда будет выводить отладочную информацию по пользователю wifiuser до ручной остановки комбинацией Crtl+C.

Источники:

  • Нет меток