Включение поддержки устаревшего md2 алгоритма openssl
/opt/mssql/bin/sqlservr: symbol lookup error: /opt/mssql/bin/sqlservr: undefined symbol: EVP_md2, version OPENSSL_3.0.0
ноя 05 01:36:12 WokrStation systemd[1]: mssql-server.service: Main process exited, code=exited, status=127/n/a
ноя 05 01:36:12 WokrStation systemd[1]: mssql-server.service: Failed with result 'exit-code'.
ноя 05 01:36:13 WokrStation systemd[1]: mssql-server.service: Scheduled restart job, restart counter is at 2.
ноя 05 01:36:13 WokrStation systemd[1]: Started mssql-server.service - Microsoft SQL Server Database Engine.
Хочу запустить sql-server на ubuntu. Установка прошла успешно. Судя по логам запуска, не стартует потому что, нет в libcrypto поддержки старого алгоритма шифрования md2. Скачать исходники openssl скомпилировал с поддержкой нужного.
root@WokrStation:/home/nice/Загрузки/openssl-3.0.17# ./config enable-md2
Configuring OpenSSL version 3.0.17 for target linux-x86_64
Using os-specific seed configuration
Created configdata.pm
Running configdata.pm
Created Makefile.in
Created Makefile
**********************************************************************
*** ***
*** OpenSSL has been successfully configured ***
*** ***
*** If you encounter a problem while building, please open an ***
*** issue on GitHub <https://github.com/openssl/openssl/issues> ***
*** and include the output from the following command: ***
*** ***
*** perl configdata.pm --dump ***
*** ***
*** (If you are new to OpenSSL, you might want to consult the ***
*** 'Troubleshooting' section in the INSTALL.md file first) ***
*** ***
**********************************************************************
root@WokrStation:/home/nice/Загрузки/openssl-3.0.17#
Но когда проверяешь, поддержку нужного алгоритма через
root@WokrStation:/home/nice/Загрузки/openssl-3.0.17# openssl list --digest-commands
blake2b512 blake2s256 md5 rmd160
sha1 sha224 sha256 sha3-224
sha3-256 sha3-384 sha3-512 sha384
sha512 sha512-224 sha512-256 shake128
shake256 sm3
То его поддержки нет..((
Где я ошибаюсь?
Ответы (1 шт):
openssl 1.1 и 3 работают нормально на одной системе. можно его взять в предыдущем релизе ОС.
но при этом стоит проверить линковку командой ldd и если sqlserver линкуется всеравно на 3.0, то подсунуть ссылку на правильный в папку.
например ln -s /usr/lib/x86_64-linux-gnu/libcrypto.so.1 /opt/mssql/lib/
./config enable-md2 - не собрирает openssl, а только готовит к сборке
# openssl list --digest-commands показывает конфигурацию системного openssl, а не собранного.