Ключевое слово в защите информации
ключевое слово
в защите информации
Получить ГОСТ 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,645

Сказал(а) «Спасибо»: 49 раз
Поблагодарили: 705 раз в 486 постах
Здравствуйте.
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,645

Сказал(а) «Спасибо»: 49 раз
Поблагодарили: 705 раз в 486 постах
Автор: 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 (2)
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.