Добавляем модуль python для FreeRadius3

Случилось так, что стандартными средствами FreeRadius авторизации ну никак не «разрулить» те условия, которые необходимы. Решение: включим/поставим модуль python для FreeRadius и будем использовать его для авторизации и выдачи абонентам сетевых настроек.

Далее пути указаны для Ubuntu.

1) Сделаем симлинк (читай включим модуль) для модуля pyhton в папке

2) В файле настроек пропишем путь для файла написанного на языке python, который будет отвечать за авторизацию, и имя собственно модуля, например work:

Так-же нужно расскоментировать те функции, которые будут вызываться модулем. Например:

 

3) Создадим модуль work. Можно на основе example. В моём случае он адаптирован под python3 (в «базе» он поставляется пот python 2.7):

И чуть изменим файл radiusd.py:

В файле default включим модули в секциях authorize и authenticate:

Запускаем:

В логах наблюдаем:

Не запускается MySQL. Исправляем ))

Сначала смотрим логи mysql. Вдумчиво. Возможно что-то удастся понять и устранить (может банально кончилось место на диске).

Если не помогает, то в файле my.cnf добавляем строчку:

И далее пытаемся запустить mysql:

Если запустилось — проверяем таблицы:

Далее убираем из my.cnf строчку innodb_force_recovery=1 иперезапускам сервис:

Есть шанс что всё заработает 😉

Проверка доступности IP адресов по списку

Озадачил тут  Роскомнадзор: а проверьте, доступно 65321 IP адрес в вашей сети? И предоставило текстовый файлик. А нам что? 5 минут и скрипт готов:

Настройка FreeRadius для авторизации по DCHP Option 82 через Mikrotik

На микротике должен быть поднят DHCP сервер, который обращается к Radius клиенту, который обращается к Radius серверу.

queries.conf :

В sites-enabled/default :

1 17 18 19 20 21 55