Сервер защиты 1С:СЛК — от установки ключа до запуска базы

· 9 мин

Содержание

Чтобы настроить 1С:СЛК, поставьте сервер СЛК на компьютер, где будет жить ключ, активируйте лицензию, откройте входящий TCP-порт 9099 и укажите адрес имя_сервера:9099 в окне подключения защиты внутри конфигурации. Драйвер HASP и файл hasplm.ini к этому не относятся: они управляют лицензиями самой платформы.

Типичная ошибка при подключении СЛК — правка hasplm.ini в надежде, что база «увидит» ключ отраслевого решения. Не увидит. СЛК и HASP — две независимые системы защиты, у каждой свой сервер, свой порт и свои ключи. Ниже — как настроить обе части так, чтобы они не мешали друг другу.

Как устроена 1С:СЛК и чем она отличается от защиты платформы

СЛК (система лицензирования и защиты конфигураций) применяют разработчики отраслевых и тиражных решений на платформе 1С:Предприятие. Платформу вы лицензируете у фирмы 1С, а прикладное решение — у его разработчика через СЛК.

Схема состоит из трёх частей:

  • 🔑 Ключ — аппаратный (USB) или программный (файл лицензии, привязанный к оборудованию компьютера).
  • 🖥️ Сервер СЛК — служба, которая видит ключ и раздаёт лицензии по сети. По умолчанию слушает порт 9099.
  • 🧩 Компонента защиты — встроена разработчиком в конфигурацию. Она расшифровывает защищённые модули и запрашивает лицензию у сервера.

Кто именно обращается к серверу СЛК, зависит от режима работы базы:

Режим базыГде работает компонента защитыКому нужен доступ к серверу СЛК
ФайловаяНа каждом клиентском компьютереКаждому рабочему месту
Клиент-сервернаяВ рабочих процессах сервера 1ССерверу 1С (клиентам — не обязательно)
Публикация на веб-сервереВ процессах веб-сервера или сервера 1СТому компьютеру, где исполняется код

В клиент-серверном варианте проверяйте связь с СЛК именно с сервера 1С. Пинг с ноутбука бухгалтера ничего не скажет: защищённый код исполняется не там.

Сколько лицензий расходует один пользователь, решает разработчик. Бывает расход на сеанс, на пользователя, на компьютер, бывают отдельные лицензии на модули. Схему расхода смотрите в документации к вашему решению.

Установка сервера СЛК и драйвера ключа

Дистрибутив сервера СЛК поставляется вместе с решением или выдаётся его разработчиком. Версию сервера берите ту, которую требует ваша конфигурация: компонента защиты новой версии не всегда работает со старым сервером.

Где ставить сервер

  • 🏢 Для сети ставьте на машину, которая работает постоянно: сервер 1С, файловый сервер или отдельную виртуальную машину.
  • 🔌 Аппаратный ключ вставляется только в этот компьютер. На клиентах ключ и сервер СЛК не нужны.
  • 💻 Для одного пользователя в файловой базе сервер ставится на его же компьютер, адрес подключения — localhost:9099.

Порядок установки

  1. Запустите установщик от имени администратора.
  2. Оставьте отмеченной установку драйвера ключа, если будете работать с аппаратным ключом. Для программной лицензии драйвер не нужен, но и не мешает.
  3. Завершите установку и проверьте в services.msc, что служба сервера СЛК запущена и тип запуска — «Автоматически».
  4. Вставьте USB-ключ после установки драйвера, а не до.
  5. Откройте в браузере на этом компьютере http://localhost:9099. Должна открыться веб-консоль сервера со списком ключей и лицензий.

Если на порту 9099 уже что-то работает, служба не запустится или консоль не откроется. Проверьте командой netstat -ano | findstr :9099 и сравните PID с процессом службы СЛК в диспетчере задач.

Порт меняется в настройках сервера. Если меняете — запомните новое значение: его придётся указывать в каждой базе вместо 9099.

Активация программной лицензии и подключение аппаратного ключа

Аппаратный ключ

Аппаратный ключ работает сразу после установки драйвера. В веб-консоли он появляется в списке ключей с указанием, какие лицензии и на сколько пользователей в нём записаны.

Ключ не появился — пересоедините его в другой USB-порт, лучше на задней панели, без удлинителей и хабов. Затем перезапустите службу СЛК.

Программная лицензия

Программную лицензию активируют пин-кодом, который выдаёт разработчик решения или партнёр при продаже.

  1. В веб-консоли сервера найдите команду получения или активации лицензии.
  2. Введите пин-код и регистрационные данные организации.
  3. Если у сервера есть доступ в интернет — активация пройдёт онлайн за минуту.
  4. Если доступа нет — выберите обмен через файл: сервер сформирует файл запроса, вы отправите его с другого компьютера и загрузите полученный файл лицензии обратно.

Программная лицензия привязывается к оборудованию компьютера, на котором её активировали. Замена материнской платы, сетевой карты, переустановка ОС или перенос виртуальной машины на другой хост могут сделать её недействительной. Повторная активация обычно ограничена по числу попыток, поэтому сначала уточните у разработчика, как перенести лицензию, а потом меняйте железо.

Для виртуальных машин надёжнее аппаратный ключ, проброшенный в гостевую систему (USB passthrough или USB-over-IP), либо отдельная физическая машина под сервер СЛК.

Подключение базы 1С к серверу СЛК

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

  1. Запустите базу в режиме 1С:Предприятие под пользователем с правами администратора.
  2. При первом запуске платформа попросит разрешение на установку внешней компоненты защиты. Разрешите установку.
  3. Если ключ не найден, конфигурация сама откроет окно настроек подключения к серверу лицензирования. В части решений это окно вызывается и вручную из раздела администрирования — ищите там команды со словами «лицензирование» или «защита».
  4. Впишите адрес сервера в формате имя_или_IP:порт, например srv-1c:9099 или 192.168.10.5:9099.
  5. Если серверов несколько (основной и резервный) — укажите их по очереди, в том порядке, в котором база должна к ним обращаться.
  6. Перезапустите сеанс.

Особенности клиент-серверной базы

  • 🔒 Компоненту защиты загружает процесс сервера 1С. Учётная запись службы агента сервера 1С должна иметь возможность загрузить компоненту — с правами по умолчанию проблем обычно нет, а при урезанных правах службы компонента не загрузится.
  • 🌐 Адрес сервера СЛК должен разрешаться с сервера 1С. Если в адресе стоит localhost, а СЛК стоит на другой машине — защита работать не будет.
  • 👥 Пользователям не нужно ничего устанавливать на свои компьютеры ради СЛК.

СЛК и файл hasplm.ini: что настраивается там, а что нет

hasplm.ini — файл настроек поиска ключей HASP для лицензий платформы 1С. Он лежит в папке bin установленной платформы, например C:\Program Files\1cv8\8.3.24.1548\bin\ (номер версии у вас свой). На СЛК этот файл не влияет никак.

Его правят, когда платформенный сетевой ключ HASP стоит на другом компьютере и клиенты не находят его широковещательным поиском. Пример рабочего файла:

[NH_COMMON]
NH_IPX = Disabled
NH_NETBIOS = Disabled
NH_TCPIP = Enabled

[NH_TCPIP]
NH_SERVER_ADDR = 192.168.10.5
NH_USE_BROADCAST = Disabled

Здесь NH_SERVER_ADDR — адрес компьютера с HASP License Manager, а отключённый broadcast ускоряет запуск: клиент не опрашивает всю сеть.

Сравнение двух систем, чтобы не путать при настройке:

ЧтоЗащита платформы (HASP)1С:СЛК
Что лицензируетПлатформу 1С:ПредприятиеКонкретное прикладное решение
СерверHASP License ManagerСервер СЛК
ПортUDP/TCP 475TCP 9099 (по умолчанию)
Где указать адресhasplm.ini у клиента или сервера 1СОкно подключения в самой конфигурации
Кто выдаёт ключФирма 1СРазработчик решения

На одном компьютере спокойно уживаются оба менеджера: и HASP License Manager, и сервер СЛК. Порты разные, конфликта нет.

Сетевой доступ к серверу СЛК: порты и брандмауэр

Если база на этом же компьютере видит ключ, а с других машин — нет, почти всегда виноват брандмауэр. Откройте входящий TCP-порт 9099 на компьютере с сервером СЛК. Команда для Windows, от имени администратора:

netsh advfirewall firewall add rule name="1C SLK 9099" dir=in action=allow protocol=TCP localport=9099

Проверка с той машины, откуда идёт обращение (с сервера 1С или с клиента в файловом режиме), в PowerShell:

Test-NetConnection srv-slk -Port 9099

В ответе должно быть TcpTestSucceeded : True. Если False — проблема в сети, а не в 1С.

Что ещё проверить в сети:

  • 🧱 Аппаратный межсетевой экран или правила между VLAN, если сервер 1С и сервер СЛК в разных сегментах.
  • 🛡️ Антивирус со своим сетевым экраном — он может блокировать порт поверх правил Windows.
  • 📛 Разрешение имени: если по имени Test-NetConnection не проходит, а по IP — проходит, укажите в базе IP-адрес или поправьте DNS.
  • 🌍 Удалённые филиалы: публиковать порт 9099 в интернет напрямую не стоит. Подключайте филиал через VPN.

Перенос сервера СЛК на другой компьютер

Сервер СЛК переносят при замене сервера, переезде в облако или выводе старой машины из работы. Порядок зависит от типа ключа.

С аппаратным ключом всё просто:

  1. Установите сервер СЛК той же или более новой версии на новую машину.
  2. Откройте порт 9099 в брандмауэре нового компьютера.
  3. В нерабочее время переставьте USB-ключ и проверьте его в веб-консоли.
  4. Поменяйте адрес сервера в каждой базе или перенаправьте старое DNS-имя на новый компьютер — тогда базы трогать не придётся.

С программной лицензией сначала свяжитесь с разработчиком решения. Лицензия привязана к старому железу, и её нужно активировать заново на новом. Не удаляйте сервер со старой машины, пока новая активация не прошла: иначе пользователи останутся без лицензий на время переписки.

Короткое DNS-имя вроде slk.company.local вместо имени конкретного сервера избавляет от правки баз при каждом переезде.

Ошибки СЛК: диагностика по симптомам

Начинайте с веб-консоли сервера: она сразу показывает, видит ли сервер ключ, сколько лицензий занято и какими сеансами.

Диагностика: выберите симптом

Перезапуск службы СЛК или завершение рабочих процессов сервера 1С обрывает работу всех пользователей защищённого решения: они получат ошибку лицензии посреди документа. Делайте это вне рабочего времени или предупредите людей заранее.

Частые ошибки при настройке

  • ❌ Правят hasplm.ini для ключа СЛК — бесполезно, это другая система.
  • ❌ Ставят сервер СЛК на каждый клиентский компьютер, а ключ — на один. Сервер нужен только там, где ключ.
  • ❌ Указывают адрес без порта или с портом платформенного кластера (1540/1541) вместо порта СЛК.
  • ❌ Активируют программную лицензию на временной машине, а потом переносят базу — лицензия остаётся привязанной к старому железу.
  • ❌ Проверяют доступ с клиента, хотя в клиент-серверной базе к СЛК обращается сервер 1С.

Частые вопросы

Нужен ли интернет серверу СЛК для работы?
Нет. Интернет нужен только для онлайн-активации программной лицензии. Без него активируют через обмен файлами, а дальше сервер работает в локальной сети.
Можно ли поставить сервер СЛК и сервер 1С на один компьютер?
Да, так делают часто. Тогда в базе можно указать адрес этого компьютера с портом 9099, а открывать порт наружу нужно только для файловых баз на других машинах.
Сколько серверов СЛК нужно на несколько баз?
Одного достаточно. Все базы с защищённым решением указывают один и тот же адрес, лицензии считаются по общему пулу ключа.
Можно ли держать два сервера СЛК для отказоустойчивости?
Можно, если лицензии разнесены по двум ключам. В базе указываются оба адреса, и при недоступности первого компонента обращается ко второму.
Работает ли защищённая конфигурация без ключа?
Защищённые модули без лицензии не исполняются, и база не даёт работать с этими функциями. Есть ли у решения пробный период, решает разработчик — смотрите его документацию.