В облако на работу: Все варианты авторизации ОС сервером 1С на базе РЕД ОС 8 в домене windows. Рецепты от Капитана

18.03.24

Интеграция - Облачные сервисы, хостинг

В публикации рассматриваются все варианты авторизации ОС сервером 1С на базе РЕД ОС 8 в домене windows. Как случаи, когда сервер 1С авторизирует веб и обычных клиентов 1С в active directory, так и когда сам сервер является клиентом, например при HTTP запросах выполняемых сервером 1С.

 

Путь в тысячу ли начинается с первого шага.
©Лао-цзы

 

Когда публиковались первые статьи серии "Три пингвина под окном…", проходившие мимо админы делали грустную мину и рассказывали, как непосильно тяжело будет при переходе с обычной рабочей группы на серверах РедОС в домен active directory.

 

 

Масла в огонь подлило выступление на IE 2023 спикеров из Авито, как им даже в паре с 1С РКЛ не удалось настроить доменную авторизацию 1С апача на линуксе.

 

 

С такими исходными данными мы выступаем в поход за авторизацию ОС сервером 1С (и сервера 1С) в смешанном домене windows (linux & windows рабочие станции).

Ингредиенты:


 

  • Контроллер домена, сервер Windows 2012 R2, домен AD уровня Windows 2012. dc.test.loc
  • Рабочая станция Windows 10. win-cln01.test.loc
  • Рабочая станция РедОС 8. red8-cln01.test.loc
  • Сервер 1С РедОС 8 настроенный. red8-srv.test.loc
  • Сервер 1С РедОС 8 настраиваемый. red-srv.test.loc
  • Postgres 16 от PostgresPro
  • 1С Предприятие 64-х 8.3.24.1467
  • все в домене test.loc. 
    Пользователь, от которого работает сервер 1С usr1cv83, пароли у всех 123456.
    Все эти значения произвольные и должны в скриптах быть заменены на ваши.
    Имя домена *.local не рекомендуют коллеги РедОС.
  • все по железу 4ГБ RAM 50ГБ SSD 2 Ядра CPU
  • все развернуто в облаке из оригинальных iso образов производителей для чистоты эксперимента.
    Благодарю компанию ©Serverspace за предоставленное оборудование, без поддержки собрать такой пингвинариум мне было бы негде.
    Хорошо, что у локального офиса международного облачного провайдера остался питерский, а возможно петровский, дух покровительства знаниям и наукам.

По поводу РедОС 8 и Postgres 16. В продуктовой среде на них рано переходить, но в тестовой, хочется попробовать все новинки, этим обусловлен такой выбор.
Чтобы заработала 1С в РедОС 8 достаточно одной строки bash, для аккуратных двух

 

Кроме того, что под капотом (новое ядро, новые сборки пакетов) РедОС 8 включает в себя возможность пользователю выбрать самому где у него будет кнопка Пуск находиться или выбрать интерфейс в стиле Mac.


 

Результат:

 

  • прозрачная авторизация ОС для обычных клиентов 1С с рабочих станций
  • прозрачная авторизация ОС для веб-клиентов 1С с рабочих станций

  • прозрачная авторизация ОС 1С открытой в браузере
  • прозрачная авторизация ОС запросов идущих с сервера 1С, на примере обращения к веб-серверу с отключенной анонимной и включенной авторизацией windows

 

Те, кто больше любит видео, могут и сейчас посмотреть его вместо чтения статьи, желательно и то, и другое.

Для остальных приступаем.

Аперитив

Рутинные операции первичной настройки сервера: обновление пакетов, настройка сети, настройка синхронизации времени. Тем не менее, не стоит пренебрегать их важностью. Здесь фраза: Как вы яхту назовете, как нельзя кстати. 



Если вы используете FQDN (предпочтительный вариант), то везде дальше надо использовать полное имя, решили пойти коротким путем, аналогично. Смешивать не рекомендую.
Все настройки по инструкциям с сайта РедОС и 1С ИТС.

 

Аналогично, пристальное внимание нужно уделить синхронизации времени, так как это базовая часть Kerberos и такая мелочь приводит к трудно диагностируемым ошибкам.

Так же в тестовом контуре вольно отнесемся к безопасности и отключим Selinux, ошибки которые порождает он могут в самых неожиданных местах проявляться.
Как с ним жить не отключая, описано в публикации
Установка 1С:Сервера взаимодействия. Заметки на полях

 

На выходе обязательно надо получить 100% результат при 

  • nslookup dc.test.loc
  • timedatectl status либо аналогичный сервис синхронизации времени, например chronyd
    так как тестовый контур в этом плане очень нестабилен из-за постоянных перезагрузок, после которых рабочая станция в хаотичном порядке может принять время хоста, а время дорого в прямом и переносном смысле, то использовал их оба.

Ввод РЕД ОС в домен Windows

 

Здесь тоже все по инструкции с сайта производителя.
Единственный подводный камень - файл /etc/krb5.conf.d/crypto-policies который устанавливает предпочтительный вариант шифрования файла keytab в aes256-cts-hmac-sha1-96, а 1С пока хочет видеть RC4-HMAC.
Его комментируем строкой на perl.

На выходе обязательно надо получить 100% результат при выполнении команд

id usr1cv83
kinit usr1cv83

Не забываем о том, что 1С рекомендует однократно войти под логином пользователем сервера, чтобы создался его домашний каталог

Первое блюдо

Устанавливаем и настраиваем сервер 1С и postgres

 

На выходе обязательно надо получить 100% результат работающий сервер 1С и возможность подключиться к нему с клиентов, в этот же момент можно создать чистую базу 1С.

Пока устанавливается сервер идем на контроллер домена и создаем учетную запись под которой будет работать сервер 1С, почти аналогично как это было для сервера на windows. Но не совсем...
Для нее нам нужно будет создать и передать на linux файл keytab с паролем и записями для служб.
В нашем случае в финальном файле keytab будут три записи принципиалов:

  • usr1cv83 для пользователя (имя произвольное) под которым будет работать сервер 1С
  • usr1cv83/red-srv.test.loc для службы сервера 1С на конкретном компьютере, помните мы говорили про FQDN, тут надо обратить на это внимание
  • HTTP/red-srv.test.loc для службы http на конкретном компьютере
 

Передаем keytab файл на linux сервер и кладем в каталог с доступом служб сервера 1С и HTTP

Важно
В продуктивной среде этот файл нужно максимально защитить.

Важно
Для учетных записей пользователя и компьютера сервера 1С нужно установить признак делегирования Kerberos



 

Без этого магия не сработает и вы получите как раз ту самую ошибку 402 Payment Required, она связана именно с этим, а не с тем, о чем все сразу подумали.

Что касается самого пользователя usr1cv83,  UPN его не изменится, но обязательно должны добавиться SPN




 

На выходе обязательно надо получить 100% результат при выполнении команд

klist -e -k -t /1c/usr1cv83.keytab

покажет содержимое файла



kinit -k -t /1c/usr1cv83.keytab usr1cv83@TEST.LOC
аутентифицируется на сервере Kerberos используя записи keytab файла
команда не должна выдать ошибок
klist -e 
покажет полученный тикет

Правим файл конфигурации сервера 1С, указав, где находится файл keytab, и поменяв, учетную запись запускаем сервер

 

 

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

 


 

Второе блюдо

Устанавливаем HTTP сервер и публикуем на нем базу

 

Из хитростей только то, что мы не портим меняем общий файл конфигурации веб-сервера, а создаем отдельный файл конфигурации для отдельной базы 1С

в него мы прописываем настройки для авторизации Kerberos

 


не забываем сам пакет mod_auth_kerb установить и перезапустить веб-сервер

dnf install mod_auth_kerb -y

systemctl restart httpd 
systemctl status httpd --no-pager -l

Если все сделано правильно, то после перезапуска сервера мы сможем войти в базу 1С как из веб-клиента 1С, так и обычного браузера.

Со всех рабочих станций


 

На РедОС надо еще настроить браузеры на прозрачную авторизацию ОС для нашего домена.

 


 

Сладкое и компот

Если вы не устали, то продолжим.

Сервер 1С сам достаточно часто является клиентом, например другого сервера 1С, поэтому нужно чтобы и его могли прозрачно авторизовать по учетной записи ОС.

Эта часть ни в какой документации не описана, поэтому подробнее.

В windows мы просто в службах прописывали учетную запись и пароль пользователя от которого работает сервер 1С.

В linux мы нигде пароль не сохраняем, единственное, что нам может помочь, это билет пользователя Kerberos.

Когда мы вводили компьютер в домен, то в файле /etc/krb5.conf указали место хранения кэша 
default_ccache_name = FILE:/tmp/krb5cc_%{uid}

Пользователь авторизуется и его билет помещается в кэш.




Пока он там, сервер 1С авторизуется как обычный пользователь на сервисах домена и все идет по плану. Мы делаем HTTP запрос &НаСервере и проходим авторизацию на веб сервере DC



Если бы не время жизни билета. Обычно оно составляет 24 часа. 

 

 

Нет билета, нет авторизации



Вариант простой, как гвоздь, раз в сутки авторизоваться с учетной записью usr1cv83.
вижу как в меня летит помидор

Не вариант.

Но у нас есть keytab файл для пользователя usr1cv83. Делаем 
kinit -k -t /1c/usr1cv83.keytab usr1cv83@TEST.LOC

сейчас билет usr1cv83 попал в кэш по id root, если мы под рутом.

Осталось узнать id usr1cv83

id -u usr1cv83

в нашем случае это 149401151 и сделать
mv /tmp/krb5cc_0 /tmp/krb5cc_149401151
chown -R usr1cv83:grp1cv8 /tmp/krb5cc_149401151

Заносим эти строки в скрипт и запускаем его чуть чаще, чем время жизни билета.

Все. Обед готов.

Ничего особо сложного.

Варите свой сервер по данному рецепту, у вас не будет проблем с авторизацией ОС 1С и вы будете жить с ним долго и счастливо, пока обновление не разлучит вас.

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

Будет интересно, вы знаете, что сделать.

Найдете ошибки, вы знаете, где меня искать.

Ошибки есть у всех, в планах сделать публикацию(и) из серии "Разрушители легенд", где поразбирать ошибки других публикаций)

 

Статья продолжает серию публикаций:

Серия "Рецепты от Капитана" на всякий случай

Также на всякий случай полный листинг установки

 

Вступайте в нашу телеграмм-группу Инфостарт

Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

См. также

DevOps и автоматизация разработки Linux HighLoad оптимизация Групповая разработка (Git, хранилище) Системный администратор Программист Руководитель проекта 1С:Предприятие 8 1С 8.3 1С:Документооборот 1С:ERP Управление предприятием 2 1С:Управление холдингом 1С:Комплексная автоматизация 2.х Беларусь Россия Казахстан Абонемент ($m)

Системный анализ архитектурных границ масштабирования учетных систем «1С:Предприятие 8.3» под управлением PostgreSQL в ОС Linux. Формулирование инженерной методологии сквозного проекта «Торговый контур», определение измеримых целевых показателей (p95, MTTR, APDEX) и стратегии поэтапной модернизации эксплуатационного контура без остановки промышленных учетных процессов.

1 стартмани

07.09.2026    581    Ninel_S    9    

2

Linux Групповая разработка (Git, хранилище) Администрирование СУБД Системный администратор Программист 1С 8.3 Абонемент ($m)

Декларативный pipeline в GitHub Actions, тонкости лицензирования в Docker (--net=host), изоляция RUN_ID и интеграция со сборочным конвейером 1C:SRE-Suite. Вторая часть практического руководства (https://infostart.ru/public/2779597): от первого коммита до детерминированного синтаксического гейта на headless-раннере Linux

1 стартмани

03.09.2026    896    Ninel_S    0    

3

Linux Групповая разработка (Git, хранилище) Администрирование СУБД Системный администратор Программист 1С 8.3 Бесплатно (free)

Пакетный запуск Конфигуратора 1С на Linux таит опасную ловушку: при критических ошибках утилита DESIGNER завершается с кодом возврата 0 - «всё хорошо». Дефект уходит на продуктив. Мы открываем проект 1C:SRE-Suite - набор проверенных инструментов для надёжной эксплуатации 1С на Linux: • пятислойный сборочный скрипт с защитой от False Success (BOM, кодировки, lock-файлы, diff с Git) • Мягкая ротация процессов "rphost" через RAS API без обрыва сеансов • EDT ; Конфигуратор: CLI-мост для CI/CD на Node.js • Готовые конфиги logcfg.xml и nethasp.ini для боевого сервера • systemd-шаблоны для фонового мониторинга кластера Проект в активной разработке, лицензия MIT. Ждём ваших тест-репортов и PR.

03.09.2026    868    Ninel_S    0    

1

Облачные сервисы, хостинг Программист 1С 8.3 1С:Бухгалтерия 3.0 Бухгалтерский учет Абонемент ($m)

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

5 стартмани

02.09.2026    154    0    marat987654321    0    

0

Linux Системный администратор Программист 1С 8.3 Бесплатно (free)

Настоящее руководство описывает процесс развертывания и интеграции скриптов сборки, синтаксического контроля и автотестирования в реальную инфраструктуру контейнеризации Docker и конвейер GitLab CI/CD на серверах под управлением ОС Linux. Особое внимание уделено решению критической проблемы — сохранению стабильности коммерческого лицензирования платформы «1С:Предприятие» в динамическом контейнерном окружении.

28.08.2026    835    Ninel_S    0    

2

Linux DevOps и автоматизация разработки Программист 1С 8.3 Беларусь Россия Казахстан Бесплатно (free)

Разворачивание полноценной CI/CD инфраструктуры для 1С на Linux — это не просто дань моде, а жесткая необходимость для бизнеса, который не может позволить себе простои из-за ошибок человеческого фактора.

25.08.2026    1092    Ninel_S    0    

1

Облачные сервисы, хостинг Сервера Нейросети Программист Бесплатно (free)

В последние годы спор «облако или локалка» стал одним из самых горячих в мире работы с нейросетями. Давайте разберемся.

03.08.2026    3813    dsdred    54    

12
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. user1772139 22.07.24 09:38 Сейчас в теме
Огромное спасибо за проделанную работу! Мучались 2 месяца, пока не наткнулись на данную статью! Всё просто и понятно, по шагам и с возможностью проконтролировать результат на каждом значимом шаге!
2. G_101236070757873401750 21.03.25 00:13 Сейчас в теме
Подскажите, пробовали использовать mod_auth_gssapi для авторизации в веб? На астре только он доступен, не удаётся завести никак
3. mpzflame 21.10.25 11:17 Сейчас в теме
Столкнулись с проблемой, как обозначено в видео "проблема с авторизацией ос linux на платформах 1с выпущенных после 01.10.2024"
https://rutube.ru/video/0d8eebb5dff3f21a1112576f4ccacba8
Т.е. сначала сквозная авторизация на Линуксе работала, но при обновлении платформы перестала.
Кто-то смог победить?
Для отправки сообщения требуется регистрация/авторизация