Friday, September 12, 2008

HASP 4 driver для linux

подборка статей.
8<---------
Использование аппаратных ключей защиты в Linux

HASP (от англ. Hardware Against Software Piracy)- это мультиплатформенная аппаратно-программная система защиты программ и данных от нелегального использования и несанкционированного распространения.

Драйвера для поддержки ключей защиты в Linux поставляются в пакетах haspd и haspd-modules.

Ключи защиты HASP 4/HL (Aladdin)

Ключи HASP бывают как локальные (однопользовательские), так и сетевые (многопользовательские). По способу подключения ключи также бывают двух типов: подключаемые к порту LPT (параллельный порт) и к шине USB. Для ОС GNU/Linux имеются драйверы USB- и LPT-ключей защиты для ядра версии 2.4 и 2.6. Рекомендуется использовать USB-ключ защиты, так как это более современный способ подключения, и его подключение и настройка вызывает меньше проблем. Возможно, потребуется обратиться к поставщику программы и попросить о замене ключа.

Начиная с Win32 HASP HL API версии 1.12 поддерживаются локальные ключи HASP при работе из WINE@Etersoft. Примером такой программы является 1С: Предприятие 8.0 и выше.

Установка драйвера ключа HASP 4/HL

При эксплуатации программ, защищённых ключом защиты HASP (например, 1С: Предприятие 7.7), необходим драйвер ключа, установленный на компьютере с подключённым ключом. Для сетевого ключа в дополнение к драйверу потребуется также работающий сетевой менеджер лицензий. Сетевой ключ может располагаться на любом узле сети, работающем под управлением Linux или Windows.

Различение ключей:

* локальные LPT-ключи белого цвета, сетевые LPT-ключи — красного цвета;
* локальные USB-ключи фиолетового цвета (H4 M1 ORGL8), сетевые USB-ключи — красного цвета (H4 NET5 ORGL8);
* USB-ключ сервера 1С является локальным, и имеет фиолетовый цвет (надпись H4M1 ENSR8).

Все компоненты драйвера HASP, включая сетевой менеджер лицензий, находятся в пакете haspd. Достаточно обычным способом установить этот пакет (из каталога для вашей версии дистрибутива GNU/Linux) на тот компьютер, к которому подсоединён ключ (вне зависимости от типа ключа).

Проверить, что все компоненты драйвера запущены и работают правильно, можно командой:

[root@test root]# service haspd status
Aladdin HASP 4/HL driver status:
kernel module aksparlnx is loaded
aksusbd is running
winehasp is running
hasplm is running

Пример 35. Проверка статуса haspd


Для тех систем, где отсутствует команда service, следует использовать команду /etc/init.d/haspd status.

Если в выводе service haspd status появляется предупреждение о том, что не загружен модуль ядра (kernel module aksparlnx is not loaded), это свидетельствует о том, что у вас установлено ядро, для которого не удалось автоматически подобрать драйвер.

Проверить, какие порты прослушивает менеджер лицензий HASP, можно командой:

[root@test root]# netstat -ap | grep hasp
udp 0 0 *:475 *:* 1535/hasplm
udp 0 0 localhost.localdom:2790 *:* 1169/winehasp

Пример 36. Проверка прослушиваемых портов


Мы видим, что на порту 475 по протоколу UDP ожидает подключения с любых адресов менеджер лицензий, а на локальном порту 2790 по протоколу UDP слушает winehasp соединения с этой же машины.

Настройка приложения, использующего сетевой ключ

Если приложение использует сетевой ключ, то ему требуется знать информацию о расположении ключа защиты (сетевого менеджера лицензий) и способа обращения к нему. Эти данные указываются в файле NETHASP.INI в каталоге с исполняемыми файлами защищённого приложения. Этот файл может выглядеть, например, так:

[NH_COMMON]
NH_TCPIP = Enabled ; Используем только IP-протокол

[NH_TCPIP]
NH_SERVER_ADDR = 192.168.0.1 ; IP-адрес (или имя) машины с менеджером лицензий
NH_TCPIP_METHOD = UDP ; UDP для Linux-сервера и TCP для Windows-сервера
NH_USE_BROADCAST = Disabled ; Отключить поиск ключа по всей сети

Пример 37. Конфигурационный файл NETHASP.INI


Обратите внимание, что концы строк в файле должны соответствовать принятым в DOS/Windows (CR LF), поэтому редактировать файл лучше в notepad.

Для упрощения настройки можно воспользоваться командой setnethasp IP-адрес, которая создаст NETHASP.INI, настроенный на указанный сервер.

Обращение к сетевому менеджеру лицензий, запущенному под Linux, возможно только по протоколу UDP/IP. Если вы используете менеджер лицензий, запущенный под Windows, то удостоверьтесь что в нём включен протокол TCP/IP.

Обратите внимание, что при использовании Linux-драйвера HASP (haspd) вам не требуется как-либо запускать и настраивать hinstall.exe из поставки Win-приложения.

Обратите внимание, что при использовании сетевого ключа устанавливать пакет haspd нужно только на машине с ключом.

Проверка доступности ключа

Если всё правильно настроено, но приложение не видит ключ, следует для проверки отключить межсетевой экран (firewall) командой service iptables stop или iptables -F

Далее можно попробовать обратиться к менеджеру лицензий с помощью тестовой программы.

# eterkeytest --hasp
USB:

HASP:
HASP API VERSION: 8.0

HASP Local:
LPT HASP4 M4 (HASP3 is connected, key is HASP4 Net 5)
1C:Accountancy v7.7 (simple and network)

HASP Net (press Ctrl-C to break):
..... -- active logins: 1
-- max logins: 5
-- key type: HASP4 Net 5
-- activations: 65535
1C:Accountancy v7.7 (simple and network)

Пример 38. Проверка ключа


Для Windows существует программа АКС Монитор, позволяющая увидеть тип ключа и количество лицензий в нём: ftp://ftp.aladdin.com/pub/hasp/new_releases/utility/monitor/Monitor_Setup.zip

Обратите внимание на количество лицензий в ключе. Например, при использовании двух ключей одного типа (например, USB) по 5 лицензий менеджер лицений всё равно будет выдавать не более 5 лицензий, потому что он увидит только один ключ, то же и с локальными ключами.

Компоненты драйвера HASP в GNU/Linux

Драйвер ключей защиты HASP для GNU/Linux состоит из нескольких взаимодействующих компонент:

* aksparlnx (версия 1.6) — модуль ядра, обеспечивающий низкоуровневый доступ к LPT-ключу;
* askusbd (версия 1.8.1) — универсальный драйвер для USB- и LPT-ключей (системная служба);
* winehasp (версия 1.00) — часть драйвера, предоставляющая доступ к ключу HASP win-приложениям, исполняющимся в среде WINE (системная служба);
* hasplm (версия 8.30) — сетевой менеджер лицензий (системная служба).

Сборка модулей ядра для HASP

При отсутствии в пакете модулей для вашего ядра потребуется запустить сборку командой service haspd build

Для сборки потребуется установить заголовочные файлы ядра или исходники ядра (зависит от системы) именно той версии, под которую вы планируете сборку.

* Для систем ALT Linux это пакет kernel-headers-*.
* Для систем RHEL, Fedora Core, ASP Linux, LinuxXP это пакет kernel-devel-*.
* Для систем Debian, Ubuntu это пакет linux-headers-*.
* Для систем SUSE, Slackware, MOPSLinux это пакет kernel-source-*.
* Для систем Mandriva это пакет kernel-source-stripped-*.

В настоящий момент поддержка HASP на платформе FreeBSD не реализована. Ожидается, что она станет доступна к концу 2007 года.
источник: http://www.etersoft.ru/news/56
8<---------
не сделают они поддержку freebsd. Зачем оно им для старых ключей? Разве что энтузиасты постараются.
Следующее - про Убунту. Для Debian тоже должно сгодиться.
8<---------
http://forum.ubuntu.ru/index.php?topic=14194.0
8<---------
ветка форума по установке драйверов для на debian с ядром 2.6.18
найдено по ссылке с opennet.ru
8<---------
http://www.samaranets.ru/index.php?showtopic=1583
8<---------

сайт разработчика ключей: aladdin.ru - тоже есть форум и что скачать
блог, где описаны опыты по хасповодству на убунте: http://brandykov.blogspot.com/2008/06/ubuntu-hasp-server.html

No comments: