Статус: Участник
Группы: Участники
Зарегистрирован: 14.09.2017(UTC) Сообщений: 12 Откуда: Барнаул Поблагодарили: 2 раз в 1 постах
|
Небольшой мануал для страдальцев типа меня, которым необходимо использовать КриптоПро в php. Конкретно в данном примере разобран пример установки пакета на 64 разрядную версию ubuntu 18.04 и версию php 7.2. Для 32 разрядности необходимо использовать другие пакеты. Для версии php 5.* пункты 3-7 не нужны. Библиотека изначально заточена под 5 версию. - Скачиваем сертифицированную версию КриптоПро CSP 4 для Linux.
В данном случае это пакет КриптоПро CSP 4.0 для Linux (x64, deb) устанавливается легко и просто
- Скачиваем пакет КриптоПро ЭЦП SDK. В данном случае Linux 64 бита.
Распаковываем и устанавливаем все файлы командой указание ключей важно, без них работать не будет.
- Скачиваем исходники php. Версия та, которую вы собираетесь использовать. В данном случае 7.2.
Проверить версию можно командой
если нужно проверить версию php-fpm, то через phpinfo()
- Распаковываем исходники php, заходим в папку и выполняем команду
Может понадобиться пакет libxml2, необходимо будет установить. По мануалу устанавливаем пакеты libboost-all-dev, php7.2-dev
Код:apt install libboost-all-dev php7.2-dev
- Скачиваем патч для php7 из этой темы и распаковываем его в папку /opt/cprocsp/src/phpcades.
- Выполняем команду
Код:patch < php7_support.patch
На все вопросы жмем Enter до победного конца
- Правим Makefile, указывая путь до исходников php в параметре PHPDIR
Выполняем команду
Код:eval `/opt/cprocsp/src/doxygen/CSP/../setenv.sh --64`; make -f Makefile.unix
Получаем заветный libphpcades.so При возникновении ошибки
Код:/usr/bin/ld: cannot find -lcppcades
делаем симлинк
Код:ln -s /opt/cprocsp/lib/amd64/libcppcades.so.2 /opt/cprocsp/lib/amd64/libcppcades.so
И повторяем операцию
- Смотрим папку расширений для php
Код:php -i | grep extension_dir
в данном случае ответ был такой
Код:extension_dir => /usr/lib/php/20170718 => /usr/lib/php/20170718
- Копируем свежесозданный файл библиотеки libphpcades.so в эту папку
Создаем файл конфигурации для библиотеки
Код:touch /etc/php/7.2/mods-available/libphpcades.ini
Правим его, добавляя строку
- Делаем симлинк на этот файл в папках
/etc/php/7.2/fpm/conf.d и /etc/php/7.2/cli/conf.d
Код:cd /etc/php/7.2/fpm/conf.d && ln -s /etc/php/7.2/mods-available/libphpcades.ini
cd /etc/php/7.2/cli/conf.d && ln -s /etc/php/7.2/mods-available/libphpcades.ini
- Перезапускаем php-fpm
Код:systemctl restart php7.2-fpm.service
- Тестим и радуемся жизни(нет)
Желательно установить сертификаты Головного УЦ и УЦ Минкомсвязи, для более быстрой работы. Головной УЦ (ГОСТ 2001)УЦ Минкомсвязи (ГОСТ 2012)Код:/opt/cprocsp/bin/amd64/certmgr -inst -store mroot -file *cert_file*
За терпение и помощь в установке выражаю огромную благодарность Андрею ПисаревуОтредактировано пользователем 29 октября 2018 г. 11:43:28(UTC)
| Причина: Не указана
|
2 пользователей поблагодарили Ragnarek за этот пост.
|
eisy оставлено 13.07.2020(UTC), Max BArev оставлено 04.12.2020(UTC)
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close