Почему FreeRadius не может обработать учетный ответ от Fortigate? - PullRequest
1 голос
/ 07 мая 2019

Я настроил прокси-сервер Freeradius (3.0.16) в Ubuntu (4.15.0-47-generic).Он получает пакеты учета радиуса от другого сервера радиуса, работающего в Ubuntu, и записывает их на другой сервер радиуса при работе в Fortigate.

Radius Server ---> Proxy Radius Server ---> Fortigate Radius Server

Я настроил сервер copy-acct-to-home-server для включения областив proxy.conf

proxy.conf ( Realm definition )

home_server myFortigate {
    type = acct
    ipaddr = <IP address of Fortigate Interface Running Radius>
    port = 1813
    secret = superSecret
   }

home_server_pool myFortigatePool {
    type = fail-over
    home_server = myFortigate
}



realm myFortigateRealm {

    acct_pool = myFortigatePool
    nostrip
}

запись copy-acct-to-home-server

preacct {
            preprocess

            update control {
                            Proxy-To-Realm := myFortigateRealm
            }
            suffix

    }

После запуска freeradius -X я также запускаю tcpdump из нового сеанса

tcpdump -ni eth01 port 1812 or port 1813

и получите следующий журнал

15:03:40.225570 IP RADIUS_PROXY_IP.56813 > FORTIGATE_INTERFACE_IP.1813: RADIUS, Accounting-Request (4), id: 0x31 length: 371 
15:03:40.236155 IP FORTIGATE_INTERFACE_IP.1813 > RADIUS_PROXY_IP.56813: RADIUS, Accounting-Response (5), id: 0x31 length: 27

, который в основном показывает, что он отправляет запрос на учетную запись для защиты сервера радиуса и получает ответ об учете.

Но, как ни странно, freeradius -Выходные данные отладки X показывают время ожидания запроса для того же сервера радиуса на Fortigate, и в конечном итоге он помечает сервер как зомби

Starting proxy to home server FORTIGATE_INTERFACE_IP port 1813
(14) Proxying request to home server FORTIGATE_INTERFACE_IP port 1813 timeout 30.000000
Waking up in 0.3 seconds.
(14) Expecting proxy response no later than 29.667200 seconds from now

Проснувшись за 3,5 секунды.

и, наконец, он сдается

25)   accounting {
(25)     [ok] = ok
(25)   } # accounting = ok
(25) ERROR: Failed to find live home server: Cancelling proxy
(25) WARNING: No home server selected
(25) Clearing existing &reply: attributes
(25) Found Post-Proxy-Type Fail-Accounting
(25) Post-Proxy-Type sub-section not found.  Ignoring.

Таким образом, ситуация заключается в том, что прокси-сервер Radius отправляет учетные пакеты на сервер Fortigate Radius (это можно увидеть как в журналах freeradius, так и в журналах fortigate) tcpdump показываетчто Radius-прокси получает ответ на учет от fortigate, но по какой-то причине процесс freeradius не распознает (или не может прочитать) ответ на учет.Это может быть проблема совместимости, или я пропустил установку какого-либо флага.Обращение за помощью к экспертам для выявления и устранения проблемы.

...