如何使用EAP-TLS和基于组的授权配置FreeRADIUS?

我将FreeRADIUS配置为使用EAP-TLS进行基于证书的身份验证(自签名证书)。 身份验证工作正常,除了我想添加基于组的授权。

更具体地说,我需要使用 Class 属性在回复中发送回NAS。 然后,NAS将读取该属性并将其解释为组成员身份信息(例如 Class = myclass )。

一些背景信息:我将FreeRADIUS与strongSwan一起使用;

我正在寻找一种使FreeRADIUS能够识别组的简单方法。 我试图在rlm_files模块的配置文件( freeradius / 3.0 / mods_config / files / authorize )的配置文件中设置 Class 属性,如下所示:

username     
            Reply-Message := "Hello, %{User-Name}",
            Class := "myclass"

我离开了 第一行为空,因为不需要“检查项目”

EAP-TLS身份验证成功,但是, Class 属性未附加到答复中。

我什至不确定在完成EAP-TLS身份验证后FreeRADIUS是否会处理用户(或 authorize )文件。

是否有一种简单的方法可以基于用户名指定 Class 属性(假设有多个用户和几个组)?

0
задан 7 November 2019 в 22:53
1 ответ

FreeRADIUS может не обрабатывать пользовательский файл, так как он замыкает секцию авторизации для большинства EAP-пакетов.

В пост-автоматическом разделе необходимо вызывать файл пользователя с помощью files.authorized, т. е.

Post-auth {
    files.authorize
}

User-Name можно настроить на что угодно, а авторизация все равно будет успешной, поэтому использовать его при принятии политических решений для EAP-TLS нецелесообразно.

IIRC атрибуты сертификата расшифровываются и помещаются в список &session-state:.

В этом случае можно сделать

Post-auth {
    update request {
        &request: += &session-state:[*]
    }
    files.authorize
}

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

.
1
ответ дан 4 December 2019 в 15:35

Теги

Похожие вопросы