Инструкция подойдет как для одиночного сервера 1C, так и для кластера.
Мы имеем 3 сервера:
И сразу же перейдем к его настройке:
Стираем всё и вставляем готовый конфиг, в котором нужно лишь подправить ваш домен. test.local здесь меняем на ваш домен, оставляя исходный реестр:
В данном случае я использую все типы шифрования и билет будет создан также со всеми методами шифрования.
Также мы настроим /etc/resolv.conf на наш домен, а именно допишем строку:
Я создал учетную запись с точно таким же названием, как на 1С сервере, но можно создать с любым именем.
Небольшой разбор параметров:
В «Имя входа пользователя» все поменялось, теперь там прописан полный сервер и домен.
и можем пробовать инициализировать его:
/opt/1cv8/x86_64/8.3.24.1691/usr1cv8.keytab — это стандартный путь ключа, но он может меняться. Лучше смотреть файл systemd и поменять его, если требуется.
Если timestamp 1970 года, то в этом нет ничего страшного. Ключ все также будет работать.
Теперь если мы пропишем klist , то у нас должна появиться информация о подключенном ключе и тикетах.
Если после перезахода не получается войти в 1С и продолжает требовать ввести пароль, то идем в ТЖ и смотрим ошибки.
Для кластера лучше делать две учетные записи, 1 запись — 1 привязка. Если привязывать к одной учетной записи, то после регистрации других серверов может не проходить авторизация по ключу из-за того, что имя входа пользователя заменяется на последнюю регистрацию.
- DC01 – Windows Server с Active Directory
- SQL01 – Debian 12 с Postgres и 1С сервером
- TS01 – терминальный сервер 1С на Windows
Установка и настройка Kerberos на Linux
Первым делом установим Kerberos на Linux:apt install krb5-k5tls krb5-user
nano /etc/krb5.conf
[libdefaults] default_realm = TEST.LOCAL dns_lookup_realm = false dns_lookup_kdc = false default_tgs_enctypes = rc4-hmac des3-hmac-sha1 arcfour-hmac des-hmac-sha1 des-cbc-md5 des-cbc-crc aes256-cts-hmac-sha1-96 aes128-cts-hmac-sha1-96 default_tkt_enctypes = rc4-hmac des3-hmac-sha1 arcfour-hmac des-hmac-sha1 des-cbc-md5 des-cbc-crc aes256-cts-hmac-sha1-96 aes128-cts-hmac-sha1-96 permitted_enctypes = rc4-hmac des3-hmac-sha1 arcfour-hmac des-hmac-sha1 des-cbc-md5 des-cbc-crc aes256-cts-hmac-sha1-96 aes128-cts-hmac-sha1-96 udp_preference_limit = 0 [realms] TEST.LOCAL = { kdc = DC.test.local:88 default_domain = test.local } [domain_realm] .test.local = TEST.LOCAL test.local = TEST.LOCAL [kdc] profile = /var/kerberos/krb5kdc/kdc.conf [appdefaults] pam = { debug = true ticket_lifetime = 36000 renew_lifetime = 36000 forwardable = false krb4_convert = false }

Настройка файла hosts для SQL01
Не уходя от сервера, сразу же настроим файл /etc/hosts . Это также может играть важную роль для того, чтобы избежать ошибки. FQDN записи обязательно должны быть вверху.127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 10.15.82.2 SQL01.TEST.LOCAL
Настройка файла resolv.conf

search test.local
Настройка Active Directory
Теперь можем переходить на Windows сервер с Active Directory. Там также нужно провести настройки. Для начала, стоит добавить компьютер в AD, а также создать учетную запись для 1С сервера, которая будет нашим связующим звеном. Также обязательно проверяем, что у нас имеется запись в DNS о нашем сервере. Если нет, то необходимо добавить вручную.

Настройки делегирования в AD
Теперь можно перейти в свойства пользователя. Никаких DES шифрований включать не нужно. Выбираем в Делегировании «Доверять этому пользователю делегирование служб (только Kerberos)». Возможно, этот параметр также не является обязательным, но для избежания ошибок выставим его.
Генерация ключа для 1С
Теперь нам необходимо сгенерировать ключ. Для этого я явно объявляю ptype , kvno и методы шифрования (использую все доступные). Обычно в статьях с 1C 8.2 это не указывают, но в новых версиях AD многие криптоалгоритмы устарели, бывают предупреждения о ptype и проблемы с kvno на Windows, Linux, поэтому лучше указать их явно:ktpass -princ usr1cv8/[email protected] -mapuser usr1cv8 -pass password -out usr1cv8.keytab -ptype KRB5_NT_PRINCIPAL /kvno 1 /crypto ALL
- -princ usr1cv8/[email protected] — указан пользователь Linux – usr1cv8 , от которого работает служба 1С и сам сервер 1С. Несмотря на то, что hostname прописан в верхнем реестре на сервере, здесь я его прописываю в нижнем. Когда я пробовал делать в верхнем, то в ТЖ можно увидеть ошибку:
- -mapuser и -pass — это данные от нашего пользователя AD.
setspn -L usr1cv8

Перенос и настройка ключа на Linux сервере
Теперь можем переходить на сервер Linux. Переносим туда ключ (обычно путь /opt/1cv8/x86_64/8.3.24.1691/usr1cv8.keytab ), выдаем права на файл пользователю 1С:chown usr1cv8:grp1cv8 /opt/1cv8/x86_64/8.3.24.1691/usr1cv8.keytab
chmod 600 /opt/1cv8/x86_64/8.3.24.1691/usr1cv8.keytab
kinit -k -t /opt/1cv8/x86_64/8.3.24.1691/usr1cv8.keytab usr1cv8/[email protected]

Проверка и инициализация ключа
Также можно посмотреть полную информацию по ключу, это делается командой:klist -e -k -t /opt/1cv8/x86_64/8.3.24.1691/usr1cv8.keytab
Проверка авторизации в 1С
Как только ключ будет успешно инициализирован, то можем смело идти в 1С и указывать пользователя домена.