LINUX.ORG.RU
ФорумAdmin

Freeradius+Python -не видит библиотеки

 ,


0

1

При установки python модуля freeradius - не видит некоторые библиотеки, конкретно py-crypto, pip list - библиотека присутствует, сам питоновский скрипт установлен и без шифрования все хорошо работает.

Если запустить код из консоли, то все библиотеки видны и скрипт работает.

Скрипт валится на строке from Crypto.Cipher import AES

python_function_load - Module 'radius' not found
python_error_log:200, Exception type: <class 'ImportError'>, Exception value: /usr/local/lib/python3.8/dist-packages/Crypto/Cipher/_AES.cpython-38-x86_64-linux-gnu.so: undefined symbol: PyExc_SystemError
python_error_log:218, full_backtrace: ['Traceback (most recent call last):\n', '  File "/etc/freeradius/3.0/scripts/radius.py", line 15, in <module>\n    from Crypto.Cipher import AES\n', '  File "/usr/local/lib/python3.8/dist-packages/Crypto/Cipher/AES.py", line 50, in <module>\n    from Crypto.Cipher import _AES\n', 'ImportError: /usr/local/lib/python3.8/dist-packages/Crypto/Cipher/_AES.cpython-38-x86_64-linux-gnu.so: undefined symbol: PyExc_SystemError\n']
python_function_load - Failed to import python function 'radius.authorize'
python_error_log:188, Unknown error
/etc/freeradius/3.0/radiusd.conf[78]: Instantiation failed for module "python3"

сделал вывод:

print('каталог Python', sys.prefix)
print('Каталог установки Python', sys.base_prefix)
print('Каталог для конкретной программы', sys.exec_prefix)
print('Каталог базовой установки Python', sys.base_exec_prefix)
print('Путь исполняемого файла интерпретатора Python', sys.executable)

каталог Python /usr
Каталог установки Python /usr
Каталог для конкретной программы /usr
Каталог базовой установки Python /usr
Путь исполняемого файла интерпретатора Python 

Подскажите, пожалуйста, куда копать дальше.



Последнее исправление: akalend (всего исправлений: 1)

а сам freeradius у тебя собран с поддержкой питона из /usr/local/lib/python3.8 или системного?

anonymous
()
Ответ на: комментарий от anonymous
python3 {

    python_path="/etc/freeradius/3.0/scripts/"

    module = "radius"
    mod_authorize = radius
    func_authorize = authorize

    mod_accounting = radius
    func_accounting = accounting

    # mod_preacct = example
    # func_preacct = preacct

    # mod_postauth = example
    # func_postauth = postauth     
}
akalend
() автор топика
Ответ на: комментарий от anonymous

вот результат sys.path ‘/usr/lib/python38.zip’, ‘/usr/lib/python3.8’, ‘/usr/lib/python3.8/lib-dynload’, ‘/usr/local/lib/python3.8/dist-packages’, ‘/usr/local/lib/python3.8/dist-packages/py_crypto-0.0.4-py3.8.egg’, ‘/usr/lib/python3/dist-packages’, ‘/etc/freeradius/3.0/scripts/’, ’/usr/local/lib/python3.8/dist-packages/

библиотека расположена в /usr/local/lib/python3.8/dist-packages/ не находит файл /usr/local/lib/python3.8/dist-packages/Crypto/Cipher/_AES.cpython-38-x86_64-linux-gnu.so

akalend
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.