Привет Хабр, меня зовут Данила Гуляев, я – методист Linux-решений в АСКОН, и это третья статья о развёртывании программных продуктов в условиях предприятий с закрытыми внутренними сетями (первая статья про Astra Linux и вторая о РЕД ОС).
Сегодня мы опишем сценарий развёртывания КОМПАС-3D для технических специалистов, работающих с операционной системой «Альт Рабочая Станция 11». В нашем материале эта система будет использоваться как для сервера локального репозитория, так и для клиентских машин.
Мы покажем последовательность действий на примере КОМПАС-3D, но общий сценарий сработает и для других приложений. В частности, точно таким же способом можно поставить любые доступные в публичном репозитории продукты Комплекса АСКОН.
Мы разыграем полноценный сценарий развёртывания приложений в закрытой сети в два этапа. В первой части имитируем работу из внешней сети: покажем репозитории-источники приложений, разберём их подключение и выгрузим все необходимые пакеты на внешний носитель. Далее этот внешний носитель пройдёт воображаемую проверку безопасности, и его содержимое будет передано в закрытый контур.
Затем мы завершим наш сценарий из внутренней сети: развернём локальный репозиторий с полученными пакетами и установим приложения на машину в закрытом контуре нашего воображаемого предприятия.
Часть 1. Получение установочных материалов из открытой сети
1.1 Подключение репозитория
Посмотрим на последовательность действий сотрудника предприятия во внешней сети, который получит и передаст на дальнейшую проверку необходимые для установки ресурсы.
Пакеты от АСКОН располагаются в официальных открытых репозиториях и могут быть подключены через скрипт, описанный в прилагающейся документации.
Для КОМПАС-3D можно воспользоваться документом ReadMe или официальной справкой. Скопируем содержимое справки, откроем терминал сочетанием клавиш Ctrl+Alt+T или из меню приложений и выполним команды:
su - bash -c "$(wget -O - https://repo.ascon.ru/scripts/ascon-stable-alt.sh)" exit
Скрипт автоматически подключит репозиторий КОМПАС-3D и получит информацию о содержащихся в нём пакетах.
1.2 Определение состава установки
Пакеты, связанные с АСКОН, начинаются с ключевого слова ascon. Мы можем вывести их список и краткие описания командой
apt-cache search ascon
Или выбрать конкретный пакет и получить его описание командой
apt-cache show ascon-kompas3d-v25-full
таким образом выбрав необходимый для нас состав установки.
1.3 Установка КОМПАС-3D
На данном этапе в условиях открытой сети я бы мог просто поставить, например, полную версию КОМПАС-3D со всеми доступными компонентами командой из следующего пункта справки:
su - apt-get install ascon-kompas3d-v25-full ascon-common-coredump-watcher exit
Но наша задача — скачать и передать установочные данные коллегам внутри закрытого контура, поэтому мы пропустим этот шаг и будем двигаться дальше.
1.4 Скачивание пакетов
В рамках этого сценария мы будем использовать выкачивание необходимых нам пакетов через кэш apt. Перейдём в режим работы от администратора:
su -
Останемся в этом режиме до окончания работы из внешнего контура.
Сначала очистим кэш apt для удобства передачи нужных пакетов:
apt-get clean
Перейдём в директорию с пакетами и убедимся, что на данный момент она пуста:
cd /var/cache/apt/archives ls
При правильном выполнении всех действий в директории не останется ни одного .rpm пакета. Чтобы наполнить её необходимыми для дальнейшей установки ресурсами, воспользуемся той же командой, что и для установки целевых пакетов, но с флагом -d (--download-only):
apt-get install -d ascon-kompas3d-v25-full ascon-common-coredump-watcher
В данном случае мы скачиваем всё необходимое для установки КОМПАС-3D версии 25 и всех доступных приложений, а также утилиты сбора диагностической информации АСКОН. Рекомендуем не пренебрегать этой утилитой даже в условиях отсутствия подключения к интернету, поскольку, наряду с отправкой отчётов при сбоях, эта утилита способна делать выгрузки при ошибках, в некоторых случаях необходимые для осуществления техподдержки.
Подключим к компьютеру внешний носитель и создадим внутри папку, в которой мы хотели бы сохранить архив с передаваемыми пакетами. Скопируем путь к этой папке (из проводника или любым другим способом) и поместим в неё ранее скачанные пакеты. Нас интересуют лишь пакеты, связанные с АСКОН и КОМПАС-3D. Чтобы скопировать только их, я воспользуюсь регулярным выражением:
cp ascon* /run/media/your_device/packages cp kompas /run/media/your_device/packages
Где /run/media/your_device/packages — путь до папки с пакетами на внешнем носителе.
Дополнительно, для удобства, репозиторий АСКОН содержит пакет сервера лицензий Guardant. Он скачивается в тот же кэш составе зависимостей пакета ascon-kompas3d-v25-full или отдельно с помощью команды
apt-get install -d grdcontrol
После чего его можно перенести на внешний носитель:
cp grdcontrol* /run/media/your_device/packages
Но при желании этот же пакет сервера лицензий можно скачать и с официальных ресурсов Guardant.
1.5 Передача пакетов в закрытый контур
Мы получили пакеты, а значит, наш внешний носитель или архив можно передавать на проверку службы безопасности, а затем — в закрытую сеть предприятия.
Со стороны закрытого контура будут присутствовать сервер и рабочая станция, к которому мы далее подключим репозиторий. В нашем сценарии мы используем «Альт Рабочая Станция К 11» в качестве операционной системы на обеих машинах, но аналогичный результат можно получить и с другими вариантами серверной ОС, например, «Альт Сервер 11».
Часть 2. Развёртывание и подключение локального репозитория в закрытой сети
2.1 Развёртывание сервера с локальным репозиторием
Операционные системы семейства «Альт» предоставляют удобный модульный инструмент для управления рабочими местами — Центр Управления Системой. Для более глубокого изучения этой утилиты можно воспользоваться документацией на официальном сайте. В рамках этого сценария мы развернём дополнительный репозиторий из веб-интерфейса Центра Управления с помощью соответствующего модуля.
На серверной машине переключимся в режим работы от администратора и останемся в нём до завершения сценария:
su -
Поставим необходимые пакеты: сам Центр Управления Системой alterator, модуль веб-интерфейса alterator-fbi, модуль Сервера обновлений alterator-mirror и модуль подключения дополнительного репозитория altlinux-repos-additional:
apt-get install alterator alterator-fbi alterator-mirror altlinux-repos-additional
Зайдём в веб-интерфейс Центра Управления Системой. Это можно сделать с помощью любого браузера по адресу localhost:8080 с самого сервера или по адресу http://your-server-ip:8080 с машины в локальной сети. Войдём в веб-интерфейс от администратора – пользователя root на серверной машине. Потребуется пароль:

В веб-интерфейсе нас интересует модуль Сервера обновлений, пункт Дополнительного репозитория:

В интерфейсе дополнительного репозитория загрузим все ранее переданные пакеты, активируем архитектуру x86_64 и опубликуем репозиторий для сети:

После публикации репозитория обязательно нажмём кнопку «обновить индексы» для генерации метаданных. Настройка репозитория завершена, и структуру репозитория с загруженными пакетами теперь можно увидеть на сервере в каталоге /srv/mirror/additional.
2.2 Подключение репозитория к клиентской машине
На клиенте перейдём в режим работы от администратора:
su -
Подключим созданный репозиторий:
apt-repo add http://your-server-ip/mirror/additional
Убедимся, что новый репозиторий теперь подключён и доступен:
apt-repo
И если вы получили в выводе адрес нового локального репозитория – значит, всё готово к установке пакетов!
2.3 Установка КОМПАС-3D из локального репозитория
После завершения настройки можно будет обновить информацию о доступных пакетах и поставить КОМПАС-3D ранее упомянутой командой, как из сетевого репозитория:
su - apt-get update apt-get install ascon-kompas3d-v25-full ascon-common-coredump-watcher exit
Заключение
Мы рассмотрели еще один пример подготовки и развертывания КОМПАС-3D в закрытом контуре предприятия. Но на этом наш цикл материалов не заканчивается. Готовим заметку-инструкцию, как «упаковать» в образ ISO скачанные пакеты КОМПАС-3D и использовать его в качестве локального репозитория.