Я использую freeRADIUS 3.0 с двумя источниками данных:
Конфигурация работает нормально, но когда freeRADIUS запускается при включении питания, а сервер LDAP недоступен, freeRADIUS жаловаться и не начинать.
Итак, есть ли особая конфигурация, чтобы сказать freeRADIUS:
«Эй, сейчас вы не можете привязаться к LDAP, неважно, используйте только пользовательский файл в качестве источника данных». ?
Обновление 2017.02.11 ===========
/ etc / raddb / sites-enabled / default и файлы внутреннего туннеля:
authorize {
filter_username
preprocess
auth_log
chap
mschap
digest
suffix
eap {
ok = return
}
files
ldap {
fail = 1
}
if (fail) {
ok
}
expiration
logintime
pap
}
Выписка из режима отладки:
radiusd -X
FreeRADIUS Version 3.0.16
...
rlm_ldap (ldap): Initialising connection pool
pool {
start = 0
min = 0
max = 32
spare = 0
uses = 0
lifetime = 0
cleanup_interval = 30
idle_timeout = 60
retry_delay = 30
spread = no
}
rlm_ldap (ldap): Loading dynamic clients
rlm_ldap (ldap): 0 of 0 connections in use. You may need to increase "spare"
rlm_ldap (ldap): Opening additional connection (0), 1 of 32 pending slots used
rlm_ldap (ldap): Connecting to ldap://srv1.lan4:636
rlm_ldap (ldap): Bind with uid=radius,ou=users,dc=lan1 to ldap://srv1.lan4:636 failed: Can't contact LDAP server
rlm_ldap (ldap): Opening connection failed (0)
/etc/raddb/mods-enabled/ldap[312]: Error loading clients
/etc/raddb/mods-enabled/ldap[8]: Instantiation failed for module "ldap"
Используйте избыточный раздел, например
authorize {
redundant {
ldap
files
}
}
Если первый модуль выйдет из строя, будет вызван второй модуль.
Если вы хотите, чтобы сервер запускался, если LDAP недоступен, установите pool.start параметр конфигурации на ноль.
Если вы хотите игнорировать тот факт, что модуль ldap вышел из строя
authorize {
ldap {
fail = 1
}
if (fail) {
ok
}
}