Настройка FreeRadius3 для авторизации Mikrotik DHCP+Radius Client

При следующей настройке Mikrotik:

И стандартных настройках FreeRadius мы получаем в атрибут User-Name, MAC адрес абонента. А User-Password — пустой. Нужно научить FreeRadius принимать пустые пароли. Самое простое, поправить default секцию authorize следующим образом:

authorize {

if(User-Name =~ /^([0-9A-F]{2}:?){6}$/ && User-Password == ''){
update request {
    User-Password = "123"
  }

    update control {
	Auth-Type := Accept
    }
}
...

, т.е. если мы видим что пришел User-Name MAC адрес, то мы подставляем ему пароль 123 и проводим авторизацию в любом случае, даже если данный MAC адрес не найден в базе (в этом случае ответ придет Accept, но без IP, который будет автоматом выдан из пула свободных DHCP).

При этом в БД в таблицу radreply нужно добавить строки следующего вида:

+----------+-------------------+---------------------+----+-------------+
| id       | username          | attribute           | op | value       |
+----------+-------------------+---------------------+----+-------------+
| 33727393 | 18:D6:C7:2A:5E:F5 | Mikrotik-Rate-Limit | := | 10M         |
| 33727396 | 18:D6:C7:2A:5E:F5 | Framed-IP-Address   | := | 10.30.100.3 |
+----------+-------------------+---------------------+----+-------------+

radtest b8:69:f4:5a:45:5b «» localhost 1812 secret123


Комментарии:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.