Система лицензирования и защиты конфигураций: как устроена и как её настроить
Содержание
СЛК — это «Система лицензирования и защиты конфигураций» фирмы 1С. Она нужна не для запуска самой платформы, а для защиты отраслевых и партнёрских решений: разработчик шифрует часть кода своей конфигурации, а работает этот код только при наличии лицензии на сервере СЛК.
Если в базе стоит такое решение, вам нужны две лицензии одновременно: обычная лицензия платформы 1С:Предприятие 8.3 и лицензия СЛК от разработчика конфигурации. Одна другую не заменяет.
Зачем нужна СЛК и чем она отличается от HASP
Типовые конфигурации фирмы 1С (Бухгалтерия, ЗУП, УТ) открыты: код можно смотреть в Конфигураторе, а законность использования обеспечивает лицензия платформы. Разработчику отраслевого решения этого мало. Ему нужно, чтобы его продукт не копировали из базы в базу и не разбирали по модулям.
СЛК решает две задачи:
- 🔒 Защита кода. Часть модулей конфигурации хранится в зашифрованном виде. Без лицензии эти модули не выполняются, а в Конфигураторе вместо текста видна заглушка.
- 🧾 Учёт лицензий. Разработчик сам решает, что именно лицензируется: число рабочих мест, отдельные модули, срок действия.
С HASP часто путаются, потому что у обоих бывают USB-ключи. Разница в назначении:
| Что сравниваем | Ключи платформы (HASP, программные лицензии) | СЛК |
|---|---|---|
| Что защищает | Право запускать платформу 1С:Предприятие | Код и функции конкретной конфигурации |
| Кто выдаёт | Фирма 1С через продажу платформы | Разработчик отраслевого решения |
| Сетевая служба | HASP License Manager или менеджер лицензий на сервере 1С | Сервер СЛК |
| Без лицензии | База не запускается | База открывается, но защищённые функции недоступны |
Если пользователи жалуются на нехватку лицензий, сначала определите, какой именно. Сообщение платформы о том, что не найдена лицензия, и сообщение конфигурации о сервере СЛК — это две разные проблемы с разными решениями.
Архитектура: как конфигурация получает лицензию от сервера СЛК
Схема работы состоит из трёх частей:
- Защищённая конфигурация. В неё встроена внешняя компонента СЛК. Именно она расшифровывает защищённый код и запрашивает лицензию.
- Сервер СЛК. Отдельная служба Windows или демон Linux. Хранит лицензии, выдаёт их по запросу и считает занятые.
- Носитель лицензии. Аппаратный USB-ключ, вставленный в компьютер с сервером СЛК, или программная лицензия, привязанная к оборудованию этого компьютера.
Кто именно обращается к серверу СЛК
Этот момент определяет почти все сетевые настройки.
- 💻 Файловая база. Компонента работает на компьютере пользователя. Каждый клиент должен видеть сервер СЛК по сети.
- 🖥 Клиент-серверная база . Защищённый код выполняется в рабочем процессе сервера 1С. К серверу СЛК обращается сервер 1С, а не рабочие станции. Клиентам доступ к серверу СЛК не нужен.
Частая ошибка в клиент-серверном варианте: сервер СЛК доступен с компьютера администратора, но закрыт файрволом для сервера 1С. Проверять связь нужно именно с той машины, где работают рабочие процессы.
Как компонента находит сервер
Обычно поиск идёт двумя путями: широковещательным запросом в локальной сети и по явно заданному адресу. В разных сегментах сети, через VPN и в облаке широковещательный поиск не работает . Там адрес сервера СЛК указывают вручную в настройках защиты конфигурации. Где эта форма в интерфейсе, задаёт разработчик решения. Как правило, она открывается сама при первой неудачной попытке получить лицензию или лежит в разделе администрирования конфигурации.
Какие бывают лицензии СЛК: аппаратные, программные, сетевые
Лицензии различаются по носителю и по тому, как их делят между пользователями.
По носителю
| Тип | Как выглядит | Плюсы | Минусы |
|---|---|---|---|
| Аппаратный ключ | USB-ключ, вставленный в компьютер с сервером СЛК | Переносится на другой сервер без участия разработчика | Можно потерять, сломать; в виртуальной машине нужен проброс USB |
| Программная лицензия | Файл лицензии, активированный пин-кодом и привязанный к оборудованию | Ничего не нужно вставлять, удобна для серверов | Слетает при замене железа или переносе виртуальной машины |
По способу использования
- 🌐 Сетевая. Лицензия лежит на сервере СЛК и выдаётся любому подключившемуся сеансу, пока есть свободные места. Ключ на 10 пользователей значит 10 одновременных сеансов, а не 10 конкретных людей.
- 📍 Локальная. Работает только на том компьютере, где активирована. Подходит для одного рабочего места с файловой базой.
Что именно считается «местом» — сеанс, пользователь или база, — решает разработчик. Это записано в его лицензионных условиях, их стоит прочитать до покупки.
Пин-коды и активация программной лицензии
Программную лицензию активируют пин-кодом. Есть два способа:
- Онлайн. Сервер СЛК сам связывается с центром лицензирования и получает файл лицензии.
- Через файл. Если на сервере нет интернета, формируют файл запроса, переносят его на компьютер с доступом в сеть, получают файл ответа и загружают обратно.
Лицензия привязывается к параметрам оборудования. Замена материнской платы, системного диска или сетевой карты может сделать её недействительной. Тогда нужна повторная активация резервным пин-кодом. Если резервных кодов нет или они кончились, вопрос решается только через разработчика конфигурации.
Сохраните конверт или письмо с пин-кодами и регистрационными данными в надёжном месте. Без них восстановление лицензии превращается в переписку на несколько дней.
Настройка сервера СЛК и управление лицензиями
Дистрибутив сервера СЛК поставляется вместе с защищённой конфигурацией или выдаётся разработчиком. Ставить его лучше на постоянно включённую машину: обычно это сервер 1С или отдельная виртуальная машина.
Порядок настройки
- Установите сервер СЛК из дистрибутива разработчика. Под Windows он регистрируется как служба, под Linux — как демон.
- Откройте консоль администрирования. В СЛК 3.0 это веб-интерфейс, по умолчанию он доступен по адресу
http://localhost:9099. - Задайте пароль администратора консоли. Без пароля любой в сети сможет удалить лицензию .
- Добавьте лицензию: вставьте аппаратный ключ или активируйте программную лицензию пин-кодом.
- Откройте порт в файрволе для тех машин, которые обращаются к серверу: сервера 1С в клиент-серверном варианте или клиентов в файловом.
- Пропишите адрес сервера в настройках защиты конфигурации, если серверу 1С и серверу СЛК не хватает широковещательного поиска.
Что смотреть в консоли
В консоли сервера СЛК видны:
- 📦 список лицензий и ключей с количеством мест;
- 👥 занятые лицензии: с какого компьютера и каким процессом;
- 📅 срок действия, если лицензия временная;
- 📝 журнал событий: выдача, отказ, ошибки подключения.
HASP License Manager — это не про СЛК
Утилиту HASP License Manager (служба hasplm) ставят для сетевых HASP-ключей платформы 1С:Предприятие. К лицензиям отраслевой конфигурации она отношения не имеет. Если в базе есть и HASP-ключ платформы, и ключ СЛК, на сервере будут работать обе службы, каждая со своим ключом.
Ошибки СЛК: как найти причину
Начните с вопроса: на какой стадии отказ. Компонента не загрузилась, сервер не найден или сервер найден, но лицензий нет. Это три разных ветки диагностики.
Зависшие сеансы и конфликт лицензий
Если пользователь закрыл 1С некорректно (выдернули сеть, «убили» процесс), сеанс на сервере 1С может держать лицензию ещё какое-то время. Посмотреть сеансы с занятыми лицензиями в клиент-серверном варианте можно через консоль кластера или командой:
rac session list --cluster=<id-кластера> --licenses
Идентификатор кластера покажет rac cluster list.
Завершение сеанса обрывает работу пользователя без сохранения. Перед этим убедитесь, что сеанс действительно брошенный, а не принадлежит человеку, который сейчас проводит документы.
Не перезапускайте службу сервера СЛК в рабочее время: все защищённые функции у всех пользователей перестанут работать до её запуска. То же относится к перезапуску сервера 1С. Делайте это вечером или после предупреждения пользователей.
Конфликт двух серверов СЛК
Если в сети два сервера СЛК (например, старый не удалили после переезда), компонента может обратиться не к тому, где лежит лицензия. Решение — задать адрес нужного сервера явно и остановить лишний.
Терминальный сервер, виртуализация и облако
Терминальный режим
На терминальном сервере все пользователи работают на одной машине. Для СЛК это удобно:
- в файловой базе компонента работает на терминальном сервере, сервер СЛК и ключ можно разместить там же;
- в клиент-серверной базе к серверу СЛК обращается сервер 1С, расположение терминала не важно.
Учитывайте условия разработчика: часть лицензий выдаётся на сеанс, и десять открытых окон одного пользователя могут занять десять мест.
Виртуальные машины
Программная лицензия привязывается к виртуальному оборудованию. Её сбивают:
- 🔄 перенос машины на другой хост, если меняются параметры виртуального оборудования;
- 🧬 клонирование виртуальной машины;
- 🆕 смена MAC-адреса виртуального сетевого адаптера.
Закрепите MAC-адрес в настройках гипервизора и согласуйте миграции с тем, кто отвечает за лицензии. Для аппаратного ключа настройте проброс USB в гостевую систему или используйте USB-over-IP.
Облако и аренда сервера
У облачного провайдера USB-ключ вставить некуда, а программная лицензия может слететь при обслуживании платформы. Перед переездом в облако спросите разработчика конфигурации, есть ли у него лицензии для облачных размещений и на каких условиях. Многие разработчики работают с такими сценариями, но правила у каждого свои.
Законность использования и аудит лицензий
Защита СЛК — это техническое средство защиты авторских прав в смысле ст. 1299 ГК РФ. Обходить её, удалять или подменять компоненту запрещено. Использование «вскрытой» конфигурации — нарушение исключительного права. По ст. 1301 ГК РФ правообладатель может требовать компенсацию от 10 тыс. до 5 млн рублей либо двукратную стоимость права использования. Кроме гражданской, возможна административная и уголовная ответственность.
Практический риск ещё и в другом: модифицированная конфигурация перестаёт обновляться от разработчика, а техподдержку по ней не оказывают.
Как провести внутренний аудит
Раз в квартал полезно сверять:
- Лицензии платформы. Сколько клиентских лицензий и сколько одновременно работающих пользователей в пиковые часы.
- Лицензии СЛК. Сколько мест куплено, сколько занято в пике по консоли сервера СЛК.
- Документы. Лицензионные соглашения, регистрационные карточки, письма с пин-кодами, акты от партнёра.
- Список баз. Нет ли копий базы с защищённой конфигурацией, которые работают на чужом компьютере без отдельной лицензии.
Если в пике мест хватает впритык, пользователи будут регулярно получать отказ. Лучше докупить лицензии заранее, чем разбираться с «утренним» наплывом входов.
Частые вопросы
Можно ли открыть конфигурацию с СЛК без лицензии?
Можно ли поставить сервер СЛК на тот же компьютер, что и сервер 1С?
Нужно ли покупать СЛК отдельно?
Работает ли СЛК с базами на PostgreSQL и Linux?
Сколько лицензий СЛК занимает один пользователь?
Источники
- Гражданский кодекс РФ, часть четвёртая, ст. 1299 «Технические средства защиты авторских прав»
- Гражданский кодекс РФ, часть четвёртая, ст. 1301 «Ответственность за нарушение исключительного права на произведение»