Python/Django разработчик
0,0
рейтинг
13 июня 2012 в 11:00

Администрирование → HowTo: Интернет-банкинг для юридических лиц с использованием Aladdin eToken в Linux (Ubuntu)

UPD: Обновлено для Ubuntu 13.10 x64 сам клиент SafenetAuthenticationClient придётся попросить у техподдержки Аладдин.

Случилось так, что я решил организоваться как самостоятельный разработчик и открыл ИП. Долго я маялся с выбором банка для расчётного счёта, т.к. нужно было что-то максимально платформо-независимое — сильно не хотелось заводить винду только для интернет-банкинга, походы же в отделение банка, естественно, не рассматривались в принципе, да и дороже это выходит. В итоге я остановился на ПромСвязьБанке, в надежде, что ключи шифрования у них можно получить в виде файлов/на обычной флешке, а не на eToken'е (дело происходит в Омске). Я даже честно пытался обзванивать банки, на которых остановился и узнать на каком носителе выдаются у них ключи, но день потрачен был зря — ни в одном банке добраться до вменяемого специалиста мне не удалось. В итоге в выбранном банке услуга создания ключей оказалась довольно муторной. При генерации ключей я попытался выбрать в качестве носителя флешку, а не полученный eToken, но позже я узнал, что в этом банке «главная» подпись может быть только на eToken а для отчётов можно генерить ключи на флешку. В общем далее руководство как пользоваться интернет-банкингом с eToken под Ubuntu 12.04 x64.

Руководство фактически повторяет данное за исключением версий библиотек и того, что сейчас всё есть в x64 варианте.

Если Ваш интернет-банк использует клиента на Java (как мой), то рекомендую снести все свободные варианты JVM и поставить оригинальную версию от Oracle. Как это сделать можно узнать здесь.

Для начала создадим рабочую папку, перейдём в неё и выполним по пунктам:

1. Подготовка.

sudo apt-get install ia32-libs libhal1 opensc pcscd
wget http://archive.ubuntu.com/ubuntu/pool/main/p/pcsc-lite/libpcsclite1_1.8.6-3ubuntu1b1_amd64.deb
wget http://archive.ubuntu.com/ubuntu/pool/main/h/hal/libhal1_0.5.14-0ubuntu6_amd64.deb
dpkg -x libpcsclite1_1.8.3-3ubuntu1_amd64.deb libpcsclite1-amd64
dpkg -x libhal1_0.5.14-0ubuntu6_amd64.deb libhal1-amd64
sudo cp libpcsclite1-amd64/lib/x86_64-linux-gnu/libpcsclite.so.1.0.0 /lib64/
sudo ln -s /lib64/libpcsclite.so.1.0.0 /lib64/libpcsclite.so.1
sudo mkdir /usr/lib64
sudo cp libhal1-amd64/usr/lib/libhal.so.1.0.0 /usr/lib64/
sudo ln -s /usr/lib64/libhal.so.1.0.0 /usr/lib64/libhal.so.1
sudo ln -s /usr/lib64/libhal.so.1 /usr/lib/


Если в последующем всё же возникают проблемы с установкой SafenetAuthenticationClient — установите 32битные версии библиотек:

wget archive.ubuntu.com/ubuntu/pool/main/p/pcsc-lite/libpcsclite1_1.8.6-3ubuntu1b1_i386.deb
wget archive.ubuntu.com/ubuntu/pool/main/h/hal/libhal1_0.5.14-0ubuntu6_i386.deb
dpkg -x libpcsclite1_1.7.2-2ubuntu2_i386.deb libpcsclite1-i386
dpkg -x libhal1_0.5.14-0ubuntu6_i386.deb libhal1-i386
sudo cp libpcsclite1-i386/lib/i386-linux-gnu/libpcsclite.so.1.0.0  /lib32
sudo ln -s /lib32/libpcsclite.so.1.0.0 /lib32/libpcsclite.so.1
sudo cp libhal1-i386/usr/lib/libhal.so.1.0.0 /usr/lib32
sudo ln -s /usr/lib32/libhal.so.1.0.0 /usr/lib32/libhal.so.1

спасибо agel.

Клиентам Альфа-Банка также стоит ознакомиться с этим комментарием, спасибо xmm!

2. Установка сервиса (драйвера).

Тут первым делом мы качаем клиент. Ссылка практически секретная, т.к. скачивать клиент можно только потеребив техподдерржку, но кому это надо?

wget http://www.secdiary.com/packages/pool/main/SafenetAuthenticationClient-8.0.5-0_amd64.deb
sudo dpkg -i SafenetAuthenticationClient-8.0.5-0_amd64.deb
sudo ln -s /usr/lib64/libeTPkcs11.so /usr/lib/

Всё готово. Проверить работу можно воткнув ключ в USB (через usb-хаб у меня заработало уже на этом этапе) и выполнив команду:

pkcs11-tool --module /usr/lib64/libeTPkcs11.so -L

Ключ должен быть в списке. После я ещё перезагрузил систему, т.к. при установке этого попросил клиент.

Удачной работы!
Вадим Лопатюк @qnub
карма
52,2
рейтинг 0,0
Python/Django разработчик
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Спецпроект

Самое читаемое Администрирование

Комментарии (26)

  • +1
    судя по packages/pool/main/ эта штутка является репозиторием и его можно подключать в sources.list После этого будет и upgarade работать, и депенденсы решаться.
    • 0
      Если это и справедливо для библиотек, то репозиторий у клиента врядле есть в открытом доступе, т.е. все ссылки на линукс-клиент на сайте производителя токена ведут в техподдержку, а ссылка на скачивание была нагуглена, от того я не очень уверен что при обновлении библиотек не перестанет работать клиент.
      • 0
        Не совсем понимаю, что значит фраза «репозиторий у клиента врядле есть в открытом доступе».
        Если вы ставите до этого пакеты из репозиториев, то что мешает остальное оттуда же поставить? Фактически, повторяются шаги, которые за вас выполняет apt-get.
        Опять-таки странно, что ставятся более новые версии, чем есть в репозитории 12.04: у меня apt-cache говорит о том, что libpcsclite сейчас версии 1.7.4-2ubuntu2
        • 0
          Открытого репозитория этого пакета SafenetAuthenticationClient-8.0.5-0_amd64.deb я не нашёл. Ссылка в руководстве нагуглена по названию файла, чтобы его получить официально — необходимо связываться с техподдержкой Аладдина.
  • 0
    Я так понимаю, что все договоры на работу с резидентами и валютных операций не возникает?
    • 0
      Не понял вопрос…
      • 0
        ИП открыт что бы работать с заказчиками. Заказчик может быть как резидентом РФ (и тогда расчеты в рублях), так и не резидентом (расчет обычно в евро или долларах). Я так понимаю, что иностранных заказчиков нет и банк в контексте валютного контроля не выбирался?

        Кстати, сколько указанный банк реально берет за работу?
        • 0
          Да, о валюте не задумывался. В плане собственного бизнеса я новичок и всех подводных камней не знаю. Хотя работа с валютой упоминается в прейскуранте услуг.

          Стоит 250р./мес + 12р. за каждый исходящий платёж (кроме налогов/ПФР и т.д.) при работе исключительно с интернет-банком.
          • 0
            Неплохо. В втб 24 приходится 1200 отдавать.
  • 0
    SafenetAuthenticationClient не установится без дополнительных 32-битных библиотек:

    wget archive.ubuntu.com/ubuntu/pool/main/p/pcsc-lite/libpcsclite1_1.7.2-2ubuntu2_i386.deb
    wget archive.ubuntu.com/ubuntu/pool/main/h/hal/libhal1_0.5.14-0ubuntu6_i386.deb
    dpkg -x libpcsclite1_1.7.2-2ubuntu2_i386.deb libpcsclite1-i386
    dpkg -x libhal1_0.5.14-0ubuntu6_i386.deb libhal1-i386
    sudo cp libpcsclite1-i386/lib/libpcsclite.so.1.0.0 /lib32
    sudo cp libhal1-i386/usr/lib/libhal.so.1.0.0 /usr/lib32


    Что любопытно: сразу после установки SafenetAuthenticationClient, eToken от Альфа-Банка загорелся. Но pkcs11-tool показывает, что все слоты пустые.
    • 0
      Интересно. Возможно у меня в системе были 32битные версии библиотек, хотя я не припоминаю чтоб их устанавливал. А после перезагрузки системы ключ так и не заработал? Может стоит попробовать 32битную версию клиента тогда?
      • 0
        Ключ появился в списке после перезагрузки. Но банк-клиент его не видит.

        Что касается 32-битного клиента:
        safenetauthenticationclient:i386 8.0.5-0 (Multi-Arch: no) is not co-installable with safenetauthenticationclient:amd64 8.0.5-0 (Multi-Arch: no) which is currently installed
        • 0
          ну удалить 64битную версию :)
          • 0
            В общем не ставится 32-битная, ругается:
            dpkg: dependency problems prevent configuration of safenetauthenticationclient:i386:
            safenetauthenticationclient:i386 depends on pcscd (>= 1.4.4)

            В то время, как у меня:
            $ pcscd -v
            pcsc-lite version 1.7.4.
            • 0
              $ pcscd -v
              pcsc-lite version 1.7.4.
              Copyright (C) 1999-2002 by David Corcoran <corcoran@linuxnet.com>.
              Copyright (C) 2001-2011 by Ludovic Rousseau <ludovic.rousseau@free.fr>.
              Copyright (C) 2003-2004 by Damien Sauveron <sauveron@labri.fr>.
              Report bugs to <muscle@lists.musclecard.com>.
              Enabled features: Linux x86_64-pc-linux-gnu serial usb libudev usbdropdir=/usr/lib/pcsc/drivers ipcdir=/var/run/pcscd configdir=/etc/reader.conf.d
      • 0
        К слову, я тоже делаю всё под Ubuntu 12.04 x64.
        • 0
          Видимо не та фаза луны. Я руководство фактически скопировал из своего терминала. Т.е. у меня так всё заработало. Система была переустановлена на 12.04 с нуля, и 32бюитных библиотек специально в неё я не ставил. Возможно они инсталлировались с чем-то попутно. Остаётся предположить, что какая-то особенная модель еТокена. Даже не знаю чем помочь…
          • 0
            А я правильно понимаю, что вы вот установили всё описанное выше, затем (ничего больше не запуская и не настраивая) при помощи Firefox вошли в банк-клиент и он успешно проводит аутентификацию по eToken?
            • 0
              Да именно так. Только перезагрузился после
              pkcs11-tool --module /usr/lib64/libeTPkcs11.so -L
              и проверял в Chrome. Теперь использую .jnlp файл (предоставляется банком) для внешнего запуска банк-клиента.
            • 0
              JVM у вас от Oracle? У меня — Oracle…
              • 0
                Да, Oracle.
                Выходит, косяк Альфа-Банка (у него не ДБО BS-Client, а что-то своё видимо), потому что никаких ошибок больше не видно и ключ считывается верно.
  • 0
    Рекомендую попробовать Авангард. Флешка с файлами и валютные операции проходят очень легко
  • 0
    День убил на запуск ibank от АльфаБанка. Пару раз уже бросал это дело, но всё-таки добил — наконец-то получилось подписать документ!

    Мне тоже потребовались 32битные либы: error while loading shared libraries: libpcsclite.so.1: wrong ELF class: ELFCLASS64

    Нашёл старую доку www.altlinux.org/Alfabank_eToken смотреть начиная с раздела «Установка библиотек из iaikPkcs11Wrapper1.2.17.zip»

    И гранты лучше дать такие:
    grant {
    permission java.lang.RuntimePermission «loadLibrary.pkcs11wrapper»;
    permission java.io.FilePermission "<>", «read»;
    };
    Гранты типа "/usr/*" у меня не заработали, а конкретно все пути вписывать мне влом стало, после 4х добавленных.

    И в конце я поменял родной java-plugin от ubuntu 12.04 x64 на sun-овский:
    $ mkdir ~/.mozilla/plugins
    $ ln -s /usr/lib/jvm/java-6-sun-1.6.0.33/jre/lib/amd64/libnpjp2.so ~/.mozilla/plugins/

    Возможно что-то лишнее сделал лишнее, но дальше экспериментировать уже не хочу.
    • 0
      спецсимволы отожрались:
      permission java.io.FilePermission "<<ALL FILES>>", "read";
      • 0
        Спасибо за информацию! Добавляю в статью ссылку на Ваш комментарий.
  • 0
    Для Ubuntu 14.04 уже есть готовый драйвер, который просто ставится из deb-пакета без бубнов. После установки токен сразу определяется в Safenet-клиенте.

    Дальше просто поставить Java и можно работать.

    Например если архив Java x64 скачан и распакован в текущей папке, сюда же скачан файл запуска клиент-банка, то запуск выгдядит так:
    JAVA_HOME=$PWD/jre1.8.0_31 jre1.8.0_31/bin/javaws -Xnosplash JuridicalClient.jnlp

    без -Xnosplash у меня стартовать не захотел, ссылаясь на не найденную картинку заставки.

    На официальном сайте алладин упоминания о поддержке ubuntu 14 нету, но по запросу выслали ссылку на архив с драйвером.

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.