Утилита ring для лицензий 1С: установка на Windows и Linux
Содержание
Ring ставится из дистрибутива утилиты администрирования лицензий 1С: сначала установите 64-разрядную Java и пропишите JAVA_HOME, затем запустите установщик самого ring, а следом — установщик модуля лицензирования (license-tools). Проверка — команда ring license list в консоли.
Частое заблуждение: ring считают частью платформы и ищут его в каталоге bin рядом с 1cv8.exe. Его там нет. Это отдельная консольная утилита на Java, у неё свой дистрибутив, свой каталог установки и свои требования. Поэтому и ставят его отдельно, даже если платформа на компьютере уже есть.
Что подготовить до установки ring
Ring нужен там, где программную лицензию 1С неудобно или невозможно активировать через диалог платформы: на Linux-сервере без графики, при массовой активации, при проверке уже установленных лицензий. Перед установкой проверьте четыре вещи.
- ☕ Java. Ring — Java-приложение. Нужна 64-разрядная Java (JRE или JDK) той версии, которую требует ваш выпуск утилиты: требование указано в описании дистрибутива. 1С для своих Java-инструментов рекомендует сборки Liberica, подойдёт и другой OpenJDK.
- 📦 Дистрибутив. На портале обновлений 1С в разделе технологических дистрибутивов лежат два пакета: ring и модуль лицензирования (license-tools). Скачайте оба, одной версии и под вашу ОС.
- 🔑 Права администратора. Установщик пишет в системные каталоги, а ring при активации записывает файл лицензии в общий каталог лицензий.
- 🌐 Доступ в интернет для онлайн-активации. Если интернета на сервере нет, лицензию активируют на другом компьютере или по телефону/файлу через центр лицензирования.
Проверить Java можно сразу:
java -version
echo %JAVA_HOME%
На Linux — java -version и echo $JAVA_HOME. В выводе должна быть строка 64-Bit. Если стоит 32-разрядная Java, ring либо не запустится, либо будет работать нестабильно.
На одном сервере может стоять несколько Java. Ring берёт ту, на которую указывает JAVA_HOME, а не ту, что первой нашлась в PATH. Расхождение между ними — частая причина странных ошибок при первом запуске: java -version показывает одну версию, а ring падает с жалобой на другую.
Установка ring и license-tools в Windows
Порядок важен: сначала ring, потом модуль лицензирования. Модуль встраивается в уже установленный ring и добавляет ему команды ring license ….
- Распакуйте архив ring в любую временную папку.
- Запустите установщик от имени администратора (правой кнопкой → «Запуск от имени администратора»).
- Пройдите мастер. Каталог установки по умолчанию менять без причины не стоит.
- Распакуйте архив license-tools и так же, от администратора, запустите его установщик.
- Закройте все открытые окна командной строки и откройте новое — только так подхватится обновлённый
PATH.
Компоненты ложатся в общий каталог инструментов 1С, обычно это C:\Program Files\1C\1CE\components\. Внутри будут папки вида 1c-enterprise-ring-<версия> и 1c-enterprise-license-tools-<версия>. Исполняемый файл ring в Windows — ring.cmd.
Проверьте, что система видит утилиту:
where ring
ring help
Если where ничего не нашёл, добавьте папку с ring.cmd в системную переменную Path вручную (см. раздел про переменные окружения).
Устанавливайте license-tools той же версии, что и ring. Модуль от другой версии может не зарегистрироваться, и команда ring license выдаст сообщение, что такого модуля нет.
Как установить ring на Linux-сервер
На Linux дистрибутивы приходят архивами .tar.gz, внутри — самораспаковывающийся установщик .run. Его можно запустить без графики, в режиме без вопросов.
# 1. Распаковать и установить ring
tar -xzf 1c-enterprise-ring-<версия>-x86_64.tar.gz
sudo ./ring-<версия>-x86_64.run --mode unattended
# 2. Распаковать и установить модуль лицензирования
tar -xzf 1c-enterprise-license-tools-<версия>-x86_64.tar.gz
sudo ./license-tools-<версия>-x86_64.run --mode unattended
Компоненты устанавливаются в /opt/1C/1CE/components/. Установщик создаёт ссылку на ring в системном каталоге, поэтому после установки команда должна находиться из любого места:
which ring
ring help
Если which ring пуст, найдите файл вручную и создайте ссылку:
find /opt/1C/1CE -name ring -type f
sudo ln -s /opt/1C/1CE/components/1c-enterprise-ring-<версия>/ring /usr/local/bin/ring
Java на сервер ставьте из репозитория дистрибутива или пакетом Liberica. Главное — чтобы JAVA_HOME был задан для того пользователя, от которого вы будете запускать ring. Для sudo окружение обычного пользователя по умолчанию не передаётся, это частая ловушка.
Переменные окружения: JAVA_HOME, PATH и кодировка
Отдельного конфигурационного файла, который нужно править после установки, у ring нет. Всё поведение задаётся окружением. Три переменные решают почти все проблемы запуска.
| Переменная | Что задаёт | Пример значения |
|---|---|---|
JAVA_HOME | Какую Java использует ring | C:\Program Files\BellSoft\LibericaJDK-11 или /usr/lib/jvm/java-11 |
PATH | Где система ищет команду ring | папка с ring.cmd или /usr/local/bin |
RING_OPTS | Параметры Java-машины для ring | -Dfile.encoding=UTF-8 -Dosgi.nl=ru |
Windows
Откройте Панель управления → Система → Дополнительные параметры системы → Переменные среды. В блоке системных переменных (не пользовательских) создайте JAVA_HOME с путём к папке Java — без \bin на конце. В Path добавьте строку %JAVA_HOME%\bin и, при необходимости, папку ring.
Для кодировки вывода в консоли:
setx RING_OPTS "-Dfile.encoding=UTF-8 -Dosgi.nl=ru" /M
Linux
Пропишите переменные в /etc/environment или в отдельном файле /etc/profile.d/ring.sh:
export JAVA_HOME=/usr/lib/jvm/java-11
export PATH="$JAVA_HOME/bin:$PATH"
export RING_OPTS="-Dfile.encoding=UTF-8 -Dosgi.nl=ru"
После правки перелогиньтесь. Для разовой проверки под sudo используйте sudo -E ring ... — ключ -E сохраняет окружение текущего пользователя.
Если вместо русских сообщений ring выводит «кракозябры», дело почти всегда в RING_OPTS и кодировке консоли, а не в самой утилите. В Windows дополнительно помогает chcp 65001 перед запуском.
Каталог лицензий и права доступа
Ring сам по себе ничего не «регистрирует» в платформе. Он кладёт файл лицензии в общий каталог, откуда его читают клиент и сервер 1С. Поэтому права на этот каталог важнее, чем права на папку установки.
| ОС | Каталог лицензий по умолчанию | Кому нужен доступ |
|---|---|---|
| Windows | C:\ProgramData\1C\licenses | запись — тому, кто активирует; чтение — учётной записи службы сервера 1С |
| Linux | /var/1C/licenses | запись — root при активации; чтение — пользователю usr1cv8 |
Типичная история: лицензию активировали через sudo ring license activate, файл создался с владельцем root и правами только для владельца. Сервер 1С работает от usr1cv8 и лицензию не видит. Проверка и исправление на Linux:
ls -l /var/1C/licenses
sudo chmod 755 /var/1C/licenses
sudo chmod 644 /var/1C/licenses/*.lic
В Windows откройте свойства папки licenses → вкладка «Безопасность» и убедитесь, что учётная запись, от которой запущена служба агента сервера 1С, имеет право на чтение.
Не копируйте файлы .lic с одного сервера на другой. Программная лицензия привязана к параметрам компьютера. На чужом железе она станет недействительной, а повторная активация потратит пин-код из комплекта.
Первый запуск: проверка ring из консоли
После установки пройдите короткую проверку. Каждая команда отвечает на свой вопрос.
ring help— ring установлен и запускается, Java найдена.ring license list— модуль лицензирования подключён. Команда выводит список лицензий в каталоге. Пустой список на новом сервере — норма.ring license info --name <имя лицензии>— подробности по конкретной лицензии: на кого выдана, какой продукт, сколько рабочих мест. Имя берите из выводаlist.ring license validate --name <имя лицензии>— проверка, что лицензия действительна на этом компьютере. Полезна после замены оборудования.
Активация новой лицензии выглядит так (значения в угловых скобках замените своими):
ring license activate \
--serial <регистрационный номер> \
--pin <пин-код> \
--company "<организация>" \
--last-name "<фамилия>" --first-name "<имя>" \
--email <почта> \
--country "Россия" --zip-code <индекс> --town "<город>" \
--street "<улица>" --house <дом>
Полный список параметров зависит от версии утилиты, его выводит встроенная справка ring help. При повторной активации (после замены оборудования) дополнительно указывают ранее использованный пин-код — нужный параметр также есть в справке.
Ring и HTTPS: сертификаты, прокси, веб-клиент
Онлайн-активация — это обращение ring к центру лицензирования 1С по HTTPS. Здесь работают правила Java, а не Windows: ring доверяет только сертификатам из хранилища cacerts той Java, на которой запущен.
В корпоративных сетях это часто ломается. Прокси или межсетевой экран с проверкой TLS подменяет сертификат своим. Браузер ему доверяет (корневой сертификат раздан политиками домена), а Java — нет. Результат — ошибка PKIX path building failed при активации.
Решение — добавить корневой сертификат прокси в хранилище Java:
keytool -importcert -alias corp-proxy \
-file corp-root-ca.cer \
-keystore "$JAVA_HOME/lib/security/cacerts" \
-storepass changeit
Для Java 8 путь к хранилищу — $JAVA_HOME/jre/lib/security/cacerts. Пароль changeit — стандартный, если его не меняли. Команду запускайте с правами администратора. Файл сертификата выдаст ваш сетевой администратор.
Не отключайте проверку сертификатов в Java целиком, даже ради одной активации. Лучше один раз импортировать корневой сертификат прокси или на время активации выпустить сервер в интернет напрямую.
Теперь про веб-клиент. Часто ring ищут в связке с настройкой HTTPS для публикации базы. Это разные задачи. Ring к веб-серверу отношения не имеет. HTTPS для веб-клиента настраивается на стороне Apache или IIS: сертификат подключается в конфигурации веб-сервера, а сама публикация делается из Конфигуратора или утилитой webinst. Лицензии для веб-клиента при этом нужны обычные — те, что ring поставил на сервер 1С.
Ошибки при установке и запуске ring
Ещё один случай — ошибка про уже использованный пин-код. Каждый пин из комплекта активирует лицензию один раз. Если вы переустановили ОС или поменяли оборудование, нужен следующий неиспользованный пин и предыдущий пин в параметрах повторной активации. Пины закончились — обращайтесь к партнёру, у которого покупали лицензию, за резервным комплектом.
Частые вопросы
Нужно ли ставить ring на каждый компьютер пользователя?
Можно ли обойтись без ring?
Нужно ли перезапускать сервер 1С после активации через ring?
Как обновить ring до новой версии?
Работает ли ring с аппаратными ключами HASP?
ring license работают с программными лицензиями. Аппаратные ключи обслуживаются драйвером HASP и менеджером лицензий, ring для них не нужен.