Переход на операционные системы семейства Linux, в частности на REDOS, — это современный и оправданный шаг для инфраструктуры 1С. Часто это решение принимается в рамках реализации более широкой концепции защищенной IT инфраструктуры предприятия, где во главе угла стоят требования безопасности и импортонезависимости. Однако системные администраторы часто сталкиваются с проблемой, когда сервер 1С и СУБД PostgreSQL установлены корректно, но клиенты не могут подключиться к базе, получая ошибку Этот хост неизвестен (11001). В этой статье мы подробно разберем, почему возникает эта ситуация, и совместно пройдем все этапы настройки сервера и клиентских мест для стабильной работы системы.
Давайте проанализируем ситуацию. Когда вы подключаетесь к консоли администрирования по IP-адресу, соединение устанавливается успешно. Однако при попытке открыть свойства базы данных или зайти в конфигуратор сервер 1С передает клиенту свое имя (hostname), указанное в настройках кластера (например, redos). Клиентская машина пытается обратиться к серверу уже не по IP, а по этому имени. Если в вашей сети не настроен DNS-сервер или локальное разрешение имен, операционная система клиента сообщает: Этот хост неизвестен.
Рассмотрев по шагам, как исправить эту проблему, мы правильно настроим окружение на REDOS. Если вы только планируете развертывание системы, рекомендуем использовать сценарий python для автоматизации процессов установки 1С и PostgreSQL, который поможет избежать типовых ошибок на этапе инсталляции.
Это самый быстрый способ проверить гипотезу и восстановить работу, если рабочих станций немного. Разберем, как это сделать. На каждой клиентской машине (Windows или Linux), с которой планируется работа в 1С, необходимо отредактировать файл hosts.
C:\Windows\System32\drivers\etc\ (для Windows) или /etc/ (для Linux).hosts от имени администратора.
# Пример для сервера с IP 192.168.55.14 и именем redos
192.168.55.14 redos
После сохранения файла попробуем снова подключиться через оснастку или конфигуратор. Если связь появилась — причина была именно в DNS.
Чтобы сервер 1С корректно представлял себя в сети, важно правильно задать его имя в самой операционной системе. Проанализируем настройки сервера. Используем утилиту hostnamectl для установки статичного имени:
hostnamectl set-hostname redos
Затем проверим файл /etc/hosts на самом сервере. В нем обязательно должна быть запись, указывающая на локальный адрес и внешнее имя:
127.0.0.1 localhost localhost.localdomain
192.168.55.14 redos
После изменения имени сервера рекомендуется перезапустить службу 1С:Предприятия, чтобы изменения вступили в силу для рабочих процессов rphost.
В REDOS по умолчанию включен сетевой экран firewalld. Даже если пинг до сервера проходит, специфические порты 1С могут быть заблокированы. Рассмотрим, какие порты необходимы для работы:
Выполним команды для открытия этих портов в постоянном режиме:
firewall-cmd --permanent --add-port=1540-1541/tcp
firewall-cmd --permanent --add-port=1560-1591/tcp
firewall-cmd --permanent --add-port=5432/tcp
firewall-cmd --reload
Важный момент: если вы используете нестандартные порты, обязательно скорректируйте эти команды. Проверить текущий список открытых портов можно командой firewall-cmd --list-all.
Система безопасности SELinux в REDOS может блокировать сетевую активность процессов 1С. Для диагностики проблемы временно переведем SELinux в режим уведомлений (permissive):
setenforce 0
Если после этого ошибка исчезла, значит, необходимо настроить политики безопасности. Однако многие администраторы предпочитают полностью перевести SELinux в режим permissive для серверов 1С, чтобы избежать трудноуловимых ошибок доступа. Отредактируйте файл /etc/selinux/config, установив параметр SELINUX=permissive, и перезагрузите сервер. Для разработчиков на этом этапе часто актуальна установка комьюнити-лицензии разработчика на сервер 1С без графической оболочки, что также требует корректно настроенных прав доступа.
Иногда сервер 1С пытается приоритетно использовать протокол IPv6, что вызывает конфликты в сетях, работающих только по IPv4. Проанализируем ситуацию и отключим IPv6 на уровне ядра системы.
Создадим конфигурационный файл:
echo "net.ipv6.conf.all.disable_ipv6 = 1" >> /etc/sysctl.d/99-disable-ipv6.conf
echo "net.ipv6.conf.default.disable_ipv6 = 1" >> /etc/sysctl.d/99-disable-ipv6.conf
sysctl -p /etc/sysctl.d/99-disable-ipv6.conf
Это исключит попытки 1С и PostgreSQL слушать сокеты на IPv6-адресах, что стабилизирует сетевое взаимодействие.
Разберем настройки СУБД, которые критичны для связки с 1С на Linux. Правильное обслуживание баз данных 1C на Postgresql начинается с корректных правок в файле postgresql.conf. Необходимо проверить и изменить следующие параметры:
off. Это необходимо для корректной интерпретации строк платформой 1С.off.150 или выше, чтобы избежать ошибок при сложных транзакциях.Также проверьте файл pg_hba.conf. Убедитесь, что сервер 1С имеет право подключаться к базе. Если сервер 1С и PostgreSQL находятся на одной машине, используйте метод md5 или trust (для локальной отладки):
# Разрешить подключения со всех IP по паролю
host all all 0.0.0.0/0 md5
Для того чтобы отчеты и печатные формы на сервере REDOS формировались без ошибок, выясним состояние локали и наличие шрифтов. 1С требует наличия шрифтов Microsoft Core Fonts.
Установим необходимые пакеты в REDOS:
dnf install mscorefonts2
И проверим системную локаль командой localectl status. Она должна быть установлена в ru_RU.UTF-8. Если это не так, выполним смену локали:
localectl set-locale LANG=ru_RU.UTF-8
Помимо визуальной составляющей, не забывайте о системной гигиене. Регулярная автоматическая очистка серверного кэша 1С поможет избежать странного поведения платформы при обновлении конфигураций, а специализированная обработка обеспечит корректную установку и снятие блокировок у БД на сервере при выполнении регламентных заданий.
Мы рассмотрели комплексный подход к решению проблемы Этот хост неизвестен. Подведем итоги: основная причина кроется в разрешении имен DNS, но для полноценной и стабильной работы сервера 1С на REDOS крайне важно также настроить Firewalld, SELinux и параметры PostgreSQL. Выполнив предложенные шаги, вы обеспечите надежную основу для работы пользователей в новой Linux-инфраструктуре.