Привет Хабр, меня зовут Данила Гуляев, я — методист Linux-решений в АСКОН, и это вторая статья из серии о развёртывании программных продуктов в условиях предприятий с закрытыми внутренними сетями. Первую можно прочитать здесь.
Сегодня мы опишем сценарий развёртывания КОМПАС-3D в операционной системе РЕД ОС 8. В нашем материале эта операционная система будет использоваться как для сервера локального репозитория, так и для клиентских машин.
Показывать последовательность действий будем на примере КОМПАС-3D, но общий сценарий сработает и для других приложений. В частности, точно таким же способом можно поставить любые доступные в публичном репозитории продукты Комплекса АСКОН.
Мы разыграем полноценный сценарий развёртывания приложений в закрытой сети в два этапа. В первой части имитируем работу из внешней сети: покажем репозитории-источники приложений, разберём их подключение и выгрузим все необходимые пакеты на внешний носитель. Далее этот внешний носитель пройдёт воображаемую проверку безопасности, и его содержимое будет передано в закрытый контур.
Затем мы завершим наш сценарий из внутренней сети: развернём локальный репозиторий с полученными пакетами и установим приложения на машину в закрытом контуре нашего воображаемого предприятия.

Часть 1. Получение установочных материалов из открытой сети
1.1 Подключение репозитория
Посмотрим на последовательность действий сотрудника предприятия во внешней сети, который получит и передаст на дальнейшую проверку необходимые для установки ресурсы.
Пакеты от АСКОН располагаются в официальных открытых репозиториях и могут быть подключены через скрипт, описанный в прилагающейся документации.
Для КОМПАС-3D можно воспользоваться документом ReadMe или официальной справкой. Скопируем содержимое справки, откроем терминал сочетанием клавиш Ctrl+Alt+T или из меню приложений и выполним команду:
sudo bash -c "$(wget -O - https://repo.ascon.ru/scripts/ascon-stable-redos.sh)"
Скрипт автоматически подключит репозиторий КОМПАС-3D и получит информацию о содержащихся в нём пакетах.
1.2 Определение состава установки
Пакеты, связанные с АСКОН, начинаются с ключевого слова ascon. Мы можем вывести их список и краткие описания командой
dnf search ascon
Или выбрать конкретный пакет и получить его описание командой
dnf info ascon-kompas3d-v25-full
таким образом выбрав необходимый для нас состав установки.
1.3 Установка КОМПАС-3D
На данном этапе в условиях открытой сети я бы мог просто поставить, например, полную версию КОМПАС-3D со всеми доступными компонентами командой из следующего пункта справки:
sudo dnf install ascon-kompas3d-v25-full ascon-common-coredump-watcher;\ nohup /opt/ascon/common/coredump-watcher/inotify_dump_script.sh > /dev/null 2>&1 &
Но наша задача — скачать и передать установочные данные коллегам внутри закрытого контура, поэтому мы пропустим этот шаг и будем двигаться дальше.
1.4 Скачивание пакетов
Подключим к компьютеру внешний носитель (у меня в этой роли будет обычная флешка) и создадим внутри папку, в которой мы хотели бы сохранить архив с передаваемыми пакетами.
Откроем статью базы знаний АСКОН с командами для определения рекурсивных зависимостей пакетов. Скопируем команду для РЕД ОС. Откроем терминал из ранее созданной папки и вставим команду, указав в качестве имён пакетов наши целевые ascon-kompas3d-v25-full и ascon-common-coredump-watcher:
dnf repoquery --requires --recursive --resolve ascon-kompas3d-v25-full ascon-common-coredump-watcher | sed 's/-.:.*$//' | sort -u
В выводе получился внушительный список пакетов зависимостей. В данном сценарии нас интересуют только пакеты, связанные с АСКОН или КОМПАС-3D, поэтому в конец команды я добавлю | grep -E «ascon|kompas».
dnf repoquery --requires --recursive --resolve ascon-kompas3d-v25-full ascon-common-coredump-watcher | sed 's/-.:.*$//' | sort -u | grep -E «ascon|kompas»
Вывод значительно сократился.
Эта команда выводит список зависимостей без указания версий — за это отвечает часть sed 's/-.:.*$//' .
Уберём её, чтобы гарантированно выкачать из репозитория нужные версии пакетов:
dnf repoquery --requires --recursive --resolve ascon-kompas3d-v25-full ascon-common-coredump-watcher | sort -u | grep -E «ascon|kompas»
Для удобства запишу вывод в текстовый файл внутри той же папки:
dnf repoquery --requires --recursive --resolve ascon-kompas3d-v25-full ascon-common-coredump-watcher | sort -u | grep -E «ascon|kompas» > list.txt
И не забуду добавить к списку инсталляции сами целевые пакеты:
echo «ascon-kompas3d-v25-full ascon-common-coredump-watcher» >> list.txt
После чего можно будет скачать все пакеты в текущую папку простой командой
dnf download $(cat list.txt)
В данном случае мы скачиваем всё необходимое для установки КОМПАС-3D версии 25 и всех доступных приложений, а также утилиты сбора диагностической информации АСКОН. Мы рекомендуем не пренебрегать этой утилитой даже в условиях отсутствия подключения к интернету, поскольку, наряду с отправкой отчётов при сбоях, эта утилита способна делать выгрузки при ошибках, в некоторых случаях необходимые для осуществления техподдержки.
Дополнительно для вашего удобства репозиторий АСКОН содержит пакет сервера лицензий Guardant, который можно скачать либо с помощью команды dnf download grdcontrol, либо напрямую с ресурсов Guardant.
1.5 Передача пакетов в закрытый контур
Мы получили пакеты, а значит, наш внешний носитель или архив можно передавать на проверку службе безопасности, а затем — в закрытую сеть предприятия.
Со стороны закрытого контура в сценарии будут присутствовать сервер и рабочая станция, к которой мы далее подключим репозиторий. Мы предполагаем, что на предприятии уже созданы зеркала репозиториев РЕД ОС, и опустим этот вопрос. На эту тему у наших коллег есть соответствующая справка.
Часть 2. Развёртывание и подключение локального репозитория в закрытой сети
2.1 Развёртывание сервера с локальным репозиторием
Здесь предлагается развернуть локальный веб-репозиторий на базе httpd — сервера Apache. Для создания репозитория и метаданных к нему также понадобятся утилиты createrepo_c и dnf-utils. Зайдём на сервер, обновим информацию и поставим нужные пакеты:
sudo dnf makecache sudo dnf install httpd createrepo_c dnf-utils
И активируем сервис httpd для дальнейшей сетевой установки:
sudo systemctl enable httpd —now
Мы используем умолчательную конфигурацию сервера Apache, поэтому настройки конфигурационных файлов происходить не будет. Тем не менее, при желании сервер можно запустить с любыми необходимыми параметрами — подробности описаны в справке. Также при необходимости можно воспользоваться руководством по настройке ssl-шифрования для локального репозитория.
В нашем случае достаточно будет скопировать файлы репозитория в папку сетевого доступа /var/www/html/ любым удобным способом.
Сгенерируем метаданные:
createrepo --database /var/www/html/
Можно использовать и любой другой каталог, отличный от /var/www/html/, создав для него символическую ссылку и установив правильный контекст SELinux (для файловых систем с поддержкой Extended File Attributes - ext2, ext3, ext4, jfs, xfs, btrfs):
ln -s /mnt/repodisk/ /var/www/html/repos semanage fcontext -a -t httpd_sys_content_t "/mnt/repodisk(/.*)?" restorecon -Rv /mnt/repodisk
После этого репозиторий будет опубликован в сети, и мы можем переключиться на клиентскую машину.
2.2 Подключение репозитория к клиентской машине
На клиенте создадим новый файл репозитория с названием kompas-local.repo в папке /etc/yum.repos.d/ с помощью любого текстового редактора, например, nano:
sudo nano /etc/yum.repos.d/kompas-local.repo
И заполним его следующей информацией:
[kompas-local] name=Local KOMPAS-3D Repository baseurl=http://server.address/kompas-repo/ enabled=1 gpgcheck=0
где server.address — это адрес сервера с репозиторием в вашей сети.
Мы опять используем минимальную конфигурацию, но при желании можно поменять идентификатор и имя репозитория, включить проверку по gpg-ключу или поменять другие параметры. Сохраним конфигурацию и выйдем из редактора с помощью последовательности сочетаний клавиш: Ctrl+O, Enter, Ctrl+X.
И обновим информацию о подключённых репозиториях:
sudo dnf makecache
Убедимся, что репозиторий теперь подключён и доступен:
dnf repolist
Если вы получили в выводе идентификатор и имя нового локального репозитория — значит, всё готово к установке пакетов!
2.3 Установка КОМПАС-3D из локального репозитория
После завершения настройки можно будет поставить КОМПАС-3D ранее упомянутой командой, как из сетевого репозитория:
sudo dnf install ascon-kompas3d-v25-full ascon-common-coredump-watcher;\ nohup /opt/ascon/common/coredump-watcher/inotify_dump_script.sh > /dev/null 2>&1 &
Заключение
Мы рассмотрели ещё один пример подготовки и развертывания КОМПАС-3D в закрытом контуре предприятия — в этот раз с помощью базовых инструментов РЕД ОС 8. Итогом стал рабочий локальный репозиторий, который позволяет подключать клиентские машины за считанные минуты и обеспечивает работу, идентичную сетевому хранилищу.
Мы продолжаем развивать сопроводительные материалы к продуктам АСКОН для Linux. Разумеется, в рамках данной статьи мы не охватили все возможные сценарии и доступные параметры — но мы ценим обратную связь, поэтому приглашаем вас делиться вопросами, идеями и пожеланиями в комментариях.
Комментарии (4)

DS2
22.07.2026 09:01Когда httpd запускаете ключ now c двойным дефисом указывать надо
Статья могла быть такая: Внимание кто не знал! У Аскона есть репозитарий, в т.ч. для RedOS 8 https://repo.ascon.ru/stable/rpm/redos/8.0/ Можно сделать локальный репозитарий (см. инструкцию у производителя ОС) и пользуйтесь!
:-)
r1bgg
а на debian можно установить?
red_cell
можно, у меня на Debian 13.6 установился.
domix32
Astra основана на debian, так что можно читать гайд из первой ссылки.