Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline rteslenko  
#1 Оставлено : 7 апреля 2023 г. 12:28:03(UTC)
rteslenko

Статус: Новичок

Группы: Участники
Зарегистрирован: 07.04.2023(UTC)
Сообщений: 2

Сказал(а) «Спасибо»: 2 раз
Добрый день!
Разворачиваю cryptopro в докере для взаимодействия через php. За основу взял образ debian. С сайта скачал актуальные cades-linux-arm64.tar.gz и linux-arm64_deb.tgz. В пакете cades-linux-arm64 отсутствует cprocsp-pki-phpcades. Для платформы amd64 он добавлен, но в своем контейнере не могу его установить.
Есть ли другие способы установить cprocsp-pki-phpcades для arm64?
Спасибо!

Код:
# Базовый образ с КриптоПро
FROM debian:stretch-slim as cryptopro-generic

# Устанавливаем timezone
ENV TZ="Europe/Moscow" \
    docker="1"

RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && \
    echo $TZ > /etc/timezone

RUN apt-get update && \
    apt-get install -y libssl-dev libxml2-dev libcurl4-openssl-dev libicu-dev libmcrypt-dev libkrb5-dev libgtk2.0-0

ADD dist /tmp/src
RUN cd /tmp/src && \
    tar -xf linux-arm64_deb_new.tgz && \
    linux-arm64_deb/install.sh

RUN cd /tmp/src && \
    dpkg -i linux-arm64_deb/cprocsp-rdr-gui-gtk-64_5.0.12600-4_all.deb && \
    dpkg -i linux-arm64_deb/lsb-cprocsp-devel_5.0.12600-4_all.deb

RUN # делаем симлинки \
        cd /bin && \
        ln -s /opt/cprocsp/bin/arm64/certmgr && \
        ln -s /opt/cprocsp/bin/arm64/cpverify && \
        ln -s /opt/cprocsp/bin/arm64/cryptcp && \
        ln -s /opt/cprocsp/bin/arm64/csptest && \
        ln -s /opt/cprocsp/bin/arm64/csptestf && \
        ln -s /opt/cprocsp/bin/arm64/der2xer && \
        ln -s /opt/cprocsp/bin/arm64/inittst && \
        ln -s /opt/cprocsp/bin/arm64/wipefile && \
        ln -s /opt/cprocsp/sbin/arm64/cpconfig && \
        # прибираемся
        rm -rf /tmp/src

# Образ с PHP cli и скриптами
FROM cryptopro-generic
ADD dist /tmp/src

RUN apt-get update && \
    apt-get install -y --no-install-recommends expect alien php7.0-cli php7.0-dev libboost-dev unzip g++ curl && \
    cd /tmp/src && \
    tar -xf cades-linux-arm64.tar.gz && \
    tar -xf cades-linux-amd64.tar.gz && \
#    alien -kci lsb-cprocsp-devel-4.0.9921-5.noarch.rpm && \
    dpkg -i cades-linux-arm64/cprocsp-*.deb
#    dpkg -i cades-linux-amd64/cprocsp-pki-phpcades-64_2.0.14660-1_amd64.deb

#RUN apt-get install -y libssl-dev libxml2-dev libcurl4-openssl-dev libicu-dev libmcrypt-dev libkrb5-dev libzip-dev zlib1g-dev && \
#    apt-get install -y php-pear && \
#    apt-get install -y php-dev && \
#    pecl install phpcades && \
#    echo "extension=phpcades.so" >> /usr/local/etc/php/php.ini && \
#    service php7.4-fpm restart

# меняем Makefile.unix
RUN PHP_BUILD=`php -i | grep 'PHP Extension => ' | awk '{print $4}'` && \
    EXT_DIR=`php -i | grep 'extension_dir => ' | awk '{print $3}'` && \
    # /usr/include/php/20151012/
    sed -i "s#PHPDIR=/php#PHPDIR=/usr/include/php/$PHP_BUILD#g" /opt/cprocsp/src/phpcades/Makefile.unix && \
    # копируем недостающую библиотеку
    ln -s /opt/cprocsp/lib/arm64/libcppcades.so.2 /opt/cprocsp/lib/arm64/libcppcades.so && \
    # начинаем сборку
    cd /opt/cprocsp/src/phpcades && \
    # применяем патч
    unzip /tmp/src/php7_support.patch.zip && \
    patch < php7_support.patch && \
    # собираем
    eval `/opt/cprocsp/src/doxygen/CSP/../setenv.sh --64`; make -f Makefile.unix && \
    # делаем симлинк собранной библиотеки
    mv libphpcades.so "$EXT_DIR" && \
    # включаем расширение
    echo "extension=libphpcades.so" > /etc/php/7.0/cli/conf.d/20-libphpcades.ini && \
    # проверяем наличие класса CPStore
    php -r "var_dump(class_exists('CPStore'));" | grep -q 'bool(true)' && \
    # прибираемся
    cd / && \
    apt-get purge -y php7.0-dev cprocsp-pki-phpcades lsb-cprocsp-devel g++ && \
    apt-get autoremove -y && \
    rm -rf /opt/cprocsp/src/phpcades && \
    rm -rf /tmp/src && \
    rm -rf /var/lib/apt/lists/

ADD scripts /scripts
ADD www /www

# composer
# RUN apt-get update && \
#     apt-get install -y --no-install-recommends curl ca-certificates && \
#     # composer
#     curl "https://getcomposer.org/installer" > composer-setup.php && \
#     php composer-setup.php && \
#     rm -f composer-setup.php && \
#     chmod +x composer.phar && \
#     mv composer.phar /bin/composer && \
#     # прибираемся
#     cd / && \
#     apt-get purge -y curl ca-certificates && \

HEALTHCHECK --interval=60s --timeout=5s CMD ["curl", "-m5", "-f", "http://localhost:8080/healthcheck"]

CMD ["php", "-S", "0.0.0.0:8080", "-t", "/www/public/"]
Offline Русев Андрей  
#2 Оставлено : 7 апреля 2023 г. 14:27:23(UTC)
Русев Андрей

Статус: Сотрудник

Группы: Администраторы, Участники
Зарегистрирован: 16.04.2008(UTC)
Сообщений: 1,556

Сказал(а) «Спасибо»: 44 раз
Поблагодарили: 650 раз в 448 постах
Здравствуйте.
cprocsp-pki-phpcades - noarch пакет, так что его можно использовать из cades-linux-amd64.tar.gz, примерно как у вас и написано.
Добавлю, что install.sh очень давно понимает список дополнительных пакетов в качестве аргументов, а в последних версиях КриптоПро CSP пакеты cades входят в его состав, так что поставить всё можно одной командой:
Код:
root@hw-arm64-astra:~# linux-arm64_deb/install.sh lsb-cprocsp-devel cprocsp-rdr-gui-gtk cprocsp-pki-cades
Удаление пакетов КриптоПро CSP...
Пакеты КриптоПро CSP успешно удалены
Установка ./lsb-cprocsp-base_5.0.12600-4_all.deb ./lsb-cprocsp-rdr-64_5.0.12600-4_all.deb ./lsb-cprocsp-kc1-64_5.0.12600-4_all.deb ./lsb-cprocsp-capilite-64_5.0.12600-4_all.deb ./cprocsp-curl-64_5.0.12600-4_all.deb ./lsb-cprocsp-ca-certs_5.0.12600-4_all.deb ./lsb-cprocsp-devel_5.0.12600-4_all.deb ./cprocsp-rdr-gui-gtk-64_5.0.12600-4_all.deb ./cprocsp-pki-cades-64_2.0.14660-1_arm64.deb ...
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Заметьте, вместо «./lsb-cprocsp-base_5.0.12600-4_all.deb» выбирается «lsb-cprocsp-base»
Заметьте, вместо «./lsb-cprocsp-rdr-64_5.0.12600-4_all.deb» выбирается «lsb-cprocsp-rdr-64»
Заметьте, вместо «./lsb-cprocsp-kc1-64_5.0.12600-4_all.deb» выбирается «lsb-cprocsp-kc1-64»
Заметьте, вместо «./lsb-cprocsp-capilite-64_5.0.12600-4_all.deb» выбирается «lsb-cprocsp-capilite-64»
Заметьте, вместо «./cprocsp-curl-64_5.0.12600-4_all.deb» выбирается «cprocsp-curl-64»
Заметьте, вместо «./lsb-cprocsp-ca-certs_5.0.12600-4_all.deb» выбирается «lsb-cprocsp-ca-certs»
Заметьте, вместо «./lsb-cprocsp-devel_5.0.12600-4_all.deb» выбирается «lsb-cprocsp-devel»
Заметьте, вместо «./cprocsp-rdr-gui-gtk-64_5.0.12600-4_all.deb» выбирается «cprocsp-rdr-gui-gtk-64»
Заметьте, вместо «./cprocsp-pki-cades-64_2.0.14660-1_arm64.deb» выбирается «cprocsp-pki-cades-64»
Следующие НОВЫЕ пакеты будут установлены:
  cprocsp-curl-64 cprocsp-pki-cades-64 cprocsp-rdr-gui-gtk-64 lsb-cprocsp-base
  lsb-cprocsp-ca-certs lsb-cprocsp-capilite-64 lsb-cprocsp-devel
  lsb-cprocsp-kc1-64 lsb-cprocsp-rdr-64
Обновлено 0 пакетов, установлено 9 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Необходимо скачать 0 B/23,5 MB архивов.
После данной операции объём занятого дискового пространства возрастёт на 92,8 MB.
Пол:1 /root/linux-arm64_deb/lsb-cprocsp-base_5.0.12600-4_all.deb lsb-cprocsp-base all 5.0.12600-4 [150 kB]
Пол:2 /root/linux-arm64_deb/lsb-cprocsp-rdr-64_5.0.12600-4_all.deb lsb-cprocsp-rdr-64 all 5.0.12600-4 [577 kB]
Пол:3 /root/linux-arm64_deb/lsb-cprocsp-kc1-64_5.0.12600-4_all.deb lsb-cprocsp-kc1-64 all 5.0.12600-4 [1 030 kB]
Пол:4 /root/linux-arm64_deb/lsb-cprocsp-capilite-64_5.0.12600-4_all.deb lsb-cprocsp-capilite-64 all 5.0.12600-4 [2 281 kB]
Пол:5 /root/linux-arm64_deb/cprocsp-curl-64_5.0.12600-4_all.deb cprocsp-curl-64 all 5.0.12600-4 [560 kB]
Пол:6 /root/linux-arm64_deb/cprocsp-pki-cades-64_2.0.14660-1_arm64.deb cprocsp-pki-cades-64 arm64 2.0.14660-1 [17,3 MB]
Пол:7 /root/linux-arm64_deb/cprocsp-rdr-gui-gtk-64_5.0.12600-4_all.deb cprocsp-rdr-gui-gtk-64 all 5.0.12600-4 [131 kB]
Пол:8 /root/linux-arm64_deb/lsb-cprocsp-ca-certs_5.0.12600-4_all.deb lsb-cprocsp-ca-certs all 5.0.12600-4 [14,7 kB]
Пол:9 /root/linux-arm64_deb/lsb-cprocsp-devel_5.0.12600-4_all.deb lsb-cprocsp-devel all 5.0.12600-4 [1 505 kB]
Выбор ранее не выбранного пакета lsb-cprocsp-base.
(Чтение базы данных … на данный момент установлено 160815 файлов и каталогов.)
Подготовка к распаковке …/0-lsb-cprocsp-base_5.0.12600-4_all.deb …
Распаковывается lsb-cprocsp-base (5.0.12600-4) …
Выбор ранее не выбранного пакета lsb-cprocsp-rdr-64.
Подготовка к распаковке …/1-lsb-cprocsp-rdr-64_5.0.12600-4_all.deb …
Распаковывается lsb-cprocsp-rdr-64 (5.0.12600-4) …
Выбор ранее не выбранного пакета lsb-cprocsp-kc1-64.
Подготовка к распаковке …/2-lsb-cprocsp-kc1-64_5.0.12600-4_all.deb …
Распаковывается lsb-cprocsp-kc1-64 (5.0.12600-4) …
Выбор ранее не выбранного пакета lsb-cprocsp-capilite-64.
Подготовка к распаковке …/3-lsb-cprocsp-capilite-64_5.0.12600-4_all.deb …
Распаковывается lsb-cprocsp-capilite-64 (5.0.12600-4) …
Выбор ранее не выбранного пакета cprocsp-curl-64.
Подготовка к распаковке …/4-cprocsp-curl-64_5.0.12600-4_all.deb …
Распаковывается cprocsp-curl-64 (5.0.12600-4) …
Выбор ранее не выбранного пакета cprocsp-pki-cades-64.
Подготовка к распаковке …/5-cprocsp-pki-cades-64_2.0.14660-1_arm64.deb …
Распаковывается cprocsp-pki-cades-64 (2.0.14660-1) …
Выбор ранее не выбранного пакета cprocsp-rdr-gui-gtk-64.
Подготовка к распаковке …/6-cprocsp-rdr-gui-gtk-64_5.0.12600-4_all.deb …
Распаковывается cprocsp-rdr-gui-gtk-64 (5.0.12600-4) …
Выбор ранее не выбранного пакета lsb-cprocsp-ca-certs.
Подготовка к распаковке …/7-lsb-cprocsp-ca-certs_5.0.12600-4_all.deb …
Распаковывается lsb-cprocsp-ca-certs (5.0.12600-4) …
Выбор ранее не выбранного пакета lsb-cprocsp-devel.
Подготовка к распаковке …/8-lsb-cprocsp-devel_5.0.12600-4_all.deb …
Распаковывается lsb-cprocsp-devel (5.0.12600-4) …
Настраивается пакет lsb-cprocsp-base (5.0.12600-4) …
Настраивается пакет lsb-cprocsp-devel (5.0.12600-4) …
Настраивается пакет lsb-cprocsp-rdr-64 (5.0.12600-4) …
Настраивается пакет cprocsp-rdr-gui-gtk-64 (5.0.12600-4) …
Настраивается пакет lsb-cprocsp-kc1-64 (5.0.12600-4) …
Настраивается пакет lsb-cprocsp-capilite-64 (5.0.12600-4) …
Настраивается пакет cprocsp-pki-cades-64 (2.0.14660-1) …
License 0A202-U0030-00ECW-RRLMF-UU2WK is set
[ErrorCode: 0x00000000]
License TA200-G0030-00ECW-RRLNE-BTDVV is set
[ReturnCode: 0x00000000]
Настраивается пакет lsb-cprocsp-ca-certs (5.0.12600-4) …
Настраивается пакет cprocsp-curl-64 (5.0.12600-4) …
Обрабатываются триггеры для systemd (246.5-1~bpo10+1+astra.ce1) …
Пакеты КриптоПро CSP успешно установлены
Официальная техподдержка. Официальная база знаний.
thanks 1 пользователь поблагодарил Русев Андрей за этот пост.
rteslenko оставлено 10.04.2023(UTC)
Offline rteslenko  
#3 Оставлено : 10 апреля 2023 г. 12:26:36(UTC)
rteslenko

Статус: Новичок

Группы: Участники
Зарегистрирован: 07.04.2023(UTC)
Сообщений: 2

Сказал(а) «Спасибо»: 2 раз
Спасибо за ответ! Но при попытке поставить cprocsp-pki-phpcades-64:amd64 получаю:
Код:
dpkg --add-architecture amd64 # иначе ошибка package architecture (amd64) does not match system (arm64)
RUN dpkg -i cprocsp-pki-phpcades-64_2.0.14071-1_amd64.deb
#18 3.644 dpkg: dependency problems prevent configuration of cprocsp-pki-phpcades-64:amd64:
#18 3.644  cprocsp-pki-phpcades-64:amd64 depends on libc6.
#18 3.644  cprocsp-pki-phpcades-64:amd64 depends on libgcc1.
#18 3.644  cprocsp-pki-phpcades-64:amd64 depends on libstdc++6.
#18 3.644  cprocsp-pki-phpcades-64:amd64 depends on lsb-cprocsp-capilite-64.
#18 3.644 
#18 3.644 dpkg: error processing package cprocsp-pki-phpcades-64:amd64 (--install):
#18 3.644  dependency problems - leaving unconfigured
#18 3.649 Errors were encountered while processing:
#18 3.649  cprocsp-pki-phpcades-64:amd64


Указанные зависимости ставлю до установки phpcades:
Код:
RUN apt install -y lsb-base \
                   libc6 \
                   libgcc1 \
                   libstdc++6


lsb-cprocsp-capilite-64 устанавливаю через скрипт:
Код:
linux-arm64_deb/install.sh lsb-cprocsp-base lsb-cprocsp-rdr-64 lsb-cprocsp-devel lsb-cprocsp-capilite-64


Образ контейнера беру arm64v8/php:7.4.2

Отредактировано пользователем 10 апреля 2023 г. 12:38:56(UTC)  | Причина: Не указана

Offline Русев Андрей  
#4 Оставлено : 10 апреля 2023 г. 13:35:38(UTC)
Русев Андрей

Статус: Сотрудник

Группы: Администраторы, Участники
Зарегистрирован: 16.04.2008(UTC)
Сообщений: 1,556

Сказал(а) «Спасибо»: 44 раз
Поблагодарили: 650 раз в 448 постах
Автор: rteslenko Перейти к цитате
при попытке поставить cprocsp-pki-phpcades-64:amd64 получаю:
ошибка package architecture (amd64) does not match system (arm64)
Это мы поправили (прошу прощения: я как бы живу в "будущем" и в нём проблем нет) - в ближайшее время выйдет очередной релиз csp+cades, где cprocsp-pki-phpcades - noarch пакет. Вам я скину его ночную сборку в личку.
Официальная техподдержка. Официальная база знаний.
thanks 2 пользователей поблагодарили Русев Андрей за этот пост.
rteslenko оставлено 10.04.2023(UTC), nickm оставлено 10.04.2023(UTC)
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.