Поддержка ключей HASP в Wine — различия между версиями
(→1С:Предприятие 8.х) |
м (39 версий) |
||
(не показано 12 промежуточных версии 4 участников) | |||
Строка 4: | Строка 4: | ||
* HASP 4 (USB) сетевые и локальные | * HASP 4 (USB) сетевые и локальные | ||
* HASP HL (USB) сетевые и локальные | * HASP HL (USB) сетевые и локальные | ||
+ | * HASP SRM (отличается другими драйверами и менеджером лицензий, существенно переписанной схемой взаимодействия) | ||
− | + | Получить драйверы ключей и менеджер лицензий для Linux и WINE@Etersoft можно [http://wiki.etersoft.ru/HASP здесь], собранные для всех систем. | |
== Ситуация по поколениям ключей == | == Ситуация по поколениям ключей == | ||
− | === HASP HL === | + | === HASP HL === |
− | [[Изображение: | + | [[Изображение:Hasp hl.png|thumb|right|400px|Схема взаимодействия HASP HL]] |
− | Поддержка платформы Linux у ключей HASP имеется давно и в полном объёме. Раньше ситуацию немного омрачали LPT-ключи, которым | + | Поддержка платформы Linux у ключей HASP имеется давно и в полном объёме. Раньше ситуацию немного омрачали LPT-ключи, которым требовалось компилировать модуль ядра, сейчас такие ключи становятся менее актуальны, да и сборка модуля ядра максимально упрощена в пакете haspd. Поддержка платформы Mac OS нас пока не интересует, а поддержка FreeBSD до сих пор так и не появилась, несмотря на многочисленные просьбы. Та же ситуация и с Solaris. |
− | требовалось компилировать модуль ядра, сейчас такие ключи становятся менее актуальны, да и сборка модуля ядра максимально упрощена. | + | |
− | Поддержка платформы Mac OS нас пока не интересует, а поддержка FreeBSD до сих пор так и не появилась, несмотря на многочисленные просьбы. | + | |
− | + | Но запуск программ в Wine имеет свою специфику, поскольку программа не может работать с Linux-драйверами ключей. Начиная с WINE@Etersoft 1.0.10 появилась поддержка "родных" Windows-драйверов для HASP 4/HL, что снимает проблему с локальными ключами, которые могут работать только через загруженный в Wine драйвер. | |
− | + | ||
− | С поддержкой сетевых ключей HASP 4/HL проблем не было никаких, поскольку имеется драйвер ключа и менеджер лицензий, запускаемый в Linux, слушающий порт UDP/475, | + | С поддержкой сетевых ключей HASP 4/HL проблем не было никаких, поскольку имеется драйвер ключа и менеджер лицензий, запускаемый в Linux, слушающий порт UDP/475, к которому можно обратиться из Wine или Windows. Странным является только то, что в Windows менеджер лицензий слушает порт TCP/475. Зачем сделано отличие, не ясно, но оно неплохо вносит сумятицу. |
− | к которому можно обратиться из Wine или Windows. Странным является только то, что в Windows менеджер лицензий слушает порт TCP/475. Зачем сделано отличие, не ясно, | + | |
− | но оно неплохо вносит сумятицу. | + | |
− | + | '''В настоящий момент локальные и сетевые ключи HASP HL USB поддерживаются полностью.''' | |
− | WINEHASP. В 2005 году Etersoft совместно с LinuxCenter обратились в Аладдин с предложением наладить работу локальных ключей HASP. Решение планировалось универсальным, | + | Драйвер ключа под Linux - aksusbd, менеджер лицензий - hasplm. |
− | но по какой-то причине применяется только компанией 1С. | + | |
− | при этом производится на localhost по порту UDP/2790 (который слушает процесс winehasp). | + | WINEHASP. В 2005 году Etersoft совместно с LinuxCenter обратились в Аладдин с предложением наладить работу локальных ключей HASP. Решение планировалось универсальным, но по какой-то причине применяется только компанией 1С в продуктах семейства 1С:Предприятие 8.x. Реализовано решение следующим образом: в Windows-API HASP HL начиная с версии API 1.12 добавлена проверка на запущенность в Wine и обращение при этом производится на localhost по порту UDP/2790 (который слушает процесс winehasp). |
=== HASP SRM === | === HASP SRM === | ||
Строка 54: | Строка 50: | ||
Для 1С:Предприятия 8.х работают как сетевые, так и локальные ключи. | Для 1С:Предприятия 8.х работают как сетевые, так и локальные ключи. | ||
− | В WINE@Etersoft 1.0.10 и выше по умолчанию локальные ключи работают через драйвера HASP, | + | В WINE@Etersoft 1.0.10 и выше по умолчанию локальные ключи работают через драйвера HASP, входящие в состав WINE@Etersoft. |
+ | |||
+ | '''!!! Обратите внимание !!!''' | ||
+ | '''В некоторых системах возможны проблемы с правами на устройство ключа, тогда нужно в /proc/bus/usb/devices надо найти шину и номер устройства, соответствующие ключу, и поставить права для всех +rw на /dev/bus/usb/номер_шины/номер_устройства.''' | ||
− | Также локальные ключи могут работать через Linux-сервис winehasp, | + | Также локальные ключи могут работать через Linux-сервис winehasp, входящий в состав hapsd. Использование winehasp включается правкой реестра. С помощью regedit нужно импортировать такой файл: |
REGEDIT4 | REGEDIT4 | ||
Строка 66: | Строка 65: | ||
=== КОМПАС v.10 === | === КОМПАС v.10 === | ||
− | Используется HASP HL без поддержки Wine | + | Используется HASP HL без поддержки Wine. Локальные ключи работают через "родные" Windows-драйвера, поддержка которых встроена, начиная с WINE@Etersoft 1.0.10. Для использования ключа по сети загрузка "родных" Windows-драйверов также должна быть включена, запускать haspd на машине, на которой запускается Компас, не обязательно. |
=== КОМПАС v.11 === | === КОМПАС v.11 === |
Текущая версия на 13:39, 25 января 2023
Ситуация по поддержке ключей HASP в Wine неоднозначна из-за одновременного сосуществования различных поколений ключей, а скорее драйверов к ним, разными способами использования ключей в программах. Встречаются ключи
- HASP 3 (LPT) сетевые и локальные
- HASP 4 (USB) сетевые и локальные
- HASP HL (USB) сетевые и локальные
- HASP SRM (отличается другими драйверами и менеджером лицензий, существенно переписанной схемой взаимодействия)
Получить драйверы ключей и менеджер лицензий для Linux и WINE@Etersoft можно здесь, собранные для всех систем.
Содержание
[убрать]Ситуация по поколениям ключей
HASP HL
Поддержка платформы Linux у ключей HASP имеется давно и в полном объёме. Раньше ситуацию немного омрачали LPT-ключи, которым требовалось компилировать модуль ядра, сейчас такие ключи становятся менее актуальны, да и сборка модуля ядра максимально упрощена в пакете haspd. Поддержка платформы Mac OS нас пока не интересует, а поддержка FreeBSD до сих пор так и не появилась, несмотря на многочисленные просьбы. Та же ситуация и с Solaris.
Но запуск программ в Wine имеет свою специфику, поскольку программа не может работать с Linux-драйверами ключей. Начиная с WINE@Etersoft 1.0.10 появилась поддержка "родных" Windows-драйверов для HASP 4/HL, что снимает проблему с локальными ключами, которые могут работать только через загруженный в Wine драйвер.
С поддержкой сетевых ключей HASP 4/HL проблем не было никаких, поскольку имеется драйвер ключа и менеджер лицензий, запускаемый в Linux, слушающий порт UDP/475, к которому можно обратиться из Wine или Windows. Странным является только то, что в Windows менеджер лицензий слушает порт TCP/475. Зачем сделано отличие, не ясно, но оно неплохо вносит сумятицу.
В настоящий момент локальные и сетевые ключи HASP HL USB поддерживаются полностью.
Драйвер ключа под Linux - aksusbd, менеджер лицензий - hasplm.
WINEHASP. В 2005 году Etersoft совместно с LinuxCenter обратились в Аладдин с предложением наладить работу локальных ключей HASP. Решение планировалось универсальным, но по какой-то причине применяется только компанией 1С в продуктах семейства 1С:Предприятие 8.x. Реализовано решение следующим образом: в Windows-API HASP HL начиная с версии API 1.12 добавлена проверка на запущенность в Wine и обращение при этом производится на localhost по порту UDP/2790 (который слушает процесс winehasp).
HASP SRM
И в Windows, и в Linux на TCP/1947 работает веб-интерфейс. По умолчанию доступ к нему разрешён только с машины, на которой он запущен. В Linux защищённая программа взаимодействует с демоном hasplmd, в Windows - со службой hasplms (HASP License Manager). Работа и с сетевым, и с локальным ключами происходит через локальный демон или службу по TCP/1947. Сетевой ключ, установленный на Linux-машине, позволяет работать с защищёнными программами на Windows-машине, и наоборот. Взаимодействие между различными машинами по сети происходит по TCP/1947 и по UDP с использованием порта 1947 и ещё одного порта, номер которого меняется при перезапуске демона.
В WINE защищённые программы не работают. По-видимому, это связано с тем, что Linux-программа и работающая в WINE Windows-программа сообщают различную информацию о машине, на которой они работают, то есть протоколы локального обмена разные для Windows / Linux.
Количество драйверов, необходимых для работы с ключом в Windows, увеличилось по сравнению с HASP HL, что не упрощает реализацию их поддержки в WINE@Etersoft. Для Linux поставляются aksusbd, winehasp под теми же именами, что и прежде, и они совместимы с программами, написанными для HASP HL. Менеджер лицензий называется теперь hasplmd, и совместимости с предыдущим не имеет.
Странно, что hasp_demo.exe из HASP-SRM-3-50/Windows/Installed/Samples/Runtime/C/win32/msc/dll/ не видит ключ, хотя в идущей рядом hasp_windows_demo.dll проверка на Wine и код обращения к winehasp имеется.
Ситуация по популярным программам
1С:Предприятие 7.7
Сетевые ключи работают без проблем. Поддержка локальных ключей находится в стадии тестирования.
1С:Предприятие 8.х
Для 1С:Предприятия 8.х работают как сетевые, так и локальные ключи.
В WINE@Etersoft 1.0.10 и выше по умолчанию локальные ключи работают через драйвера HASP, входящие в состав WINE@Etersoft.
!!! Обратите внимание !!! В некоторых системах возможны проблемы с правами на устройство ключа, тогда нужно в /proc/bus/usb/devices надо найти шину и номер устройства, соответствующие ключу, и поставить права для всех +rw на /dev/bus/usb/номер_шины/номер_устройства.
Также локальные ключи могут работать через Linux-сервис winehasp, входящий в состав hapsd. Использование winehasp включается правкой реестра. С помощью regedit нужно импортировать такой файл:
REGEDIT4
[HKEY_LOCAL_MACHINE\Software\Wine\Wine\Config]
"compat"="yes"
КОМПАС v.10
Используется HASP HL без поддержки Wine. Локальные ключи работают через "родные" Windows-драйвера, поддержка которых встроена, начиная с WINE@Etersoft 1.0.10. Для использования ключа по сети загрузка "родных" Windows-драйверов также должна быть включена, запускать haspd на машине, на которой запускается Компас, не обязательно.
КОМПАС v.11
Используется HASP SRM. На тестовых ключах возможность сетевой работы проверена, с КОМПАС ещё не проверялось.