Astra linux файл ответов

Установка и настройка DHCP/TFTP-сервера

Установка пакетов

Установить необходимые пакеты:

sudo apt install tftpd-hpa pxelinux syslinux
  • tftpd-hpa — TFTP-server;
  • pxelinux — загрузчик для сетевой загрузки PXE;
  • syslinux — загрузчик для сетевой загрузки DOS FAT / NTFS;

Настройка службы TFTP

Служба tftpd после установки запускается автоматически и сразу предоставляет доступ к каталогу /srv/tftp/, в котором далее и будут размещены файлы для сетевой загрузки.

Установка и настройка службы DHCP

Создание собственой службы DHCP требуется только в том случае, если в сети нет уже такой действующей службы. Если в сети уже имеется служба DHCP (DHCP-сервер), то следует внести в его настройку указанные ниже параметры в соответствии его с инструкциями по эксплуатации.

Для создания собственного DHCP-сервера:

sudo apt install isc-dhcp-server

В файле /etc/default/isc-dhcp-server:

Настроить конфигурацию в файле /etc/dhcp/dhcpd.conf. В данной конфигурации dhcp сервер будет определять тип клиента (UEFI или Legacy BIOS) и передавать ему нужный загрузчик:

После внесения изменений в настройки перезапустить службу:

sudo systemctl restart isc-dhcp-server

Независимо от используещейся службы DHCP для загрузки по сети нужны следующие файлы:

  • pxelinux.0;
  • библиотеки syslinux;
  • ядро ОС;
  • специальный initrd.

Эти файлы находятся на установочном диске в каталоге netinst и для того, чтобы они могли быть переданы клиентам, они должны быть скопированы в каталог /srv/tftp/.

Для копирования файлов:

Для Astra Linux Special Edition (в примере ниже предполагается, что основной установочный диск находится в приводе компакт дисков) это копирование сделать командами:

sudo mkdir -p /srv/repo/se/
sudo mount /dev/sr0 /srv/repo/se/
sudo mkdir -p /srv/tftp/se/
sudo cp /srv/repo/se/netinst/linux /srv/tftp/se/
sudo cp /srv/repo/se/netinst/initrd.gz /srv/tftp/se/

Для Astra Linux Common Edition, если образ установочного диска находится в файле ce212.iso:

sudo mkdir -p /srv/repo/ce/
sudo mount ce212.iso /srv/repo/ce
sudo mkdir -p /srv/tftp/ce/
sudo cp /srv/repo/ce/netinst/linux /srv/tftp/ce/
sudo cp /srv/repo/ce/netinst/initrd.gz /srv/tftp/ce/

Скопировать в каталог /srv/tftp файл pxelinux.0 и необходимые библиотеки syslinux из установленной ОС:

sudo cp /usr/lib/PXELINUX/pxelinux.0 /srv/tftp/
sudo cp /usr/lib/syslinux/modules/bios/ /srv/tftp/

Создать каталог /srv/tftp/pxelinux.cfg/:

sudo mkdir -p /srv/tftp/pxelinux.cfg

Создать в этом каталоге файл /srv/tftp/pxelinux.cfg/default со следующим содержимым:

При использовании приведенного выше файла по умолчанию загрузка клиента выполняется с локального жесткого диска. Это сделано для предотвращения повторной автоматической установки после завершения первой установки, или случайной установки на компьютер с уже установленной ОС, подключенный к этой же сети.

hostname — имя хоста, которое будет использовано при автоматической установке ОС;

domain — имя домена ;

url — адрес, по которому должны быть доступны конфигурационные файлы. В данном примере используется протокол TFTP, однако можно использовать FTP или HTTP (файлы при этом должны быть размещены в соответствующих локациях).

append . astra_install=1 — параметр ядра astra_install=1 необходим для корректной установки Astra Linux Special Edition с включенным МКЦ.

Для загрузки в режиме UEFI служит специальный EFI образ загрузчика grub. Для его установки:

Загрузить архив с образом с помощью web-браузера по ссылке: скачать. По умолчанию архив будет сохранен в подкаталоге Загрузки домашнего каталога;

Распаковать архив Загрузки/netinst.tar.gz в каталог /srv/tftp:

sudo tar xvf Загрузки/netinst.tar.gz -C /srv/tftp

Отредактировать конфигурационный файл /srv/tftp/debian-installer/amd64/grub/grub.cfg:

При редактировании следует указать правильное имя домена и пути поиска файлов. При этом, несмотря на указание в имени пути протокола FTP, в самом деле используется протокол TFTP , что следует учесть, указывая имя файла. По умолчанию в файле задана загрузка образа EFI из EFI/Boot/Bootx64.efi (на некоторых системах может быть иначе). Это сделано для того, чтобы избежать повторной автоматической установки после завершения первой установки, или случайной установки на компьютер с уже установленной ОС, подключенный к этой же сети;

sudo systemctl restart isc-dhcp-server # если используется
sudo systemctl restart tftpd-hpa

Автоматическая установка с помощью файла preseed.cfg

Ссылки для скачивания файлов:

  • Файл preseed.cfg для Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7) см. далее.
  • Файл preseed.cfg для Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) : preseed_se16.cfg .
  • Файл preseed.cfg для Astra Linux Common Edition 2.12 : preseed_ce.cfg .
Читайте также:  Use ftp server linux

Файл после скачивания скопировать в каталог установочных файлов соответствующего дистрибутива под именем preseed.cfg, например:

sudo cp preseed_se16.cfg /srv/tftp/se/preseed.cfg
sudo cp preseed_ce.cfg /srv/tftp/ce/preseed.cfg

Важные параметры файла preseed:

Пути к репозиториям пакетов:

Порядок настройки репозиториев пакетов см. в статье Создание локальных и сетевых репозиториев.

Пример путь к HTTP-репозиторию с пакетами для установки:

Пример указания пути для FTP -репозиториев:

В следующем блоке подготавливаются разделы на жестком диске (по умолчанию стоит автоматическое создание с использованием всего диска, с одним корневым разделом и разделом подкачки (см. Область подкачки (swap): особенности применения и обеспечения безопасности)):

# Если один из дисков, который нужно разметить с помощью автоматической
# разметки, содержит старую конфигурацию LVM, то пользователю выдаётся
# предупреждение. Ответ можно автоматизировать.
d-i partman-auto/purge_lvm_from_device boolean true
# И подтвердить запись lvm разделов.
d-i partman-lvm/confirm boolean true

# Вы можете выбрать любой из имеющихся наборов разметки.
# Замечание: он должен содержать локализованные (переведённые) значения.
# Расскомментируйте ниже нужный тип разметки

# Для режима legacy bios:
d-i partman-auto/choose_recipe select atomic

# Для режима UEFI:
# d-i partman-auto/choose_recipe select /lib/partman/recipes-amd64-efi/30atomic

# Этот параметр заставляет partman выполнить разметку автоматически
# без подтверждения.
d-i partman/confirm_write_new_label boolean true
d-i partman/choose_partition select finish
d-i partman/confirm boolean true
d-i partman-auto-crypto/erase_disks boolean true
d-i partman-basicfilesystems/no_swap boolean true
d-i partman-target/mount_failed boolean true
d-i partman-partitioning/unknown_label boolean true
d-i partman-auto/purge_lvm_from_device string true
d-i partman-lvm/vgdelete_confirm boolean true
d-i partman/confirm_write_new_label string true
d-i partman-lvm/confirm boolean true
d-i partman/confirm_nooverwrite boolean true

Создание пользователя (user) и задание пароля:

Не рекомендуется использовать пароли в виде открытого текста.
В примере ниже использован вариант с указанием пароля 12345678 в виде открытого текста, и вариант с указанием хеша. Получить хеш пароля можно командой:

openssl passwd -1

Эта команда запросит ввод пароля и выведет на экран кеш этого пароля.

Дополнительно устанавливаемые пакеты можно указать в:

Установка загрузчика. По умолчанию, загрузчик ставится на первый диск в MBR. Но в Astra Linux Common Edition 2.12 необходимо указать вручную, на какой диск ставить загрузчик:

Пароль для загрузчика:

Не рекомендуется использовать пароли в виде открытого текста.
В примере ниже использован пароль 12345678 и его хеш. Получить хеш пароля можно командой:

openssl passwd -1

Эта команда запросит ввод пароля и выведет на экран кеш этого пароля.
Не указывайте пароль в виде открытого текста!

Выполнение команд перед завершением установки и перезагрузкой компьютера, например включить ssh сервер:

Теперь, если подключить машину к этой сети и настроить в BIOS/UEFI загрузку по сети, автоматически запустится установка Astra Linux . Так же можно установить систему вручную, ответив на все вопросы, и после установки выполнить команды:

sudo debconf-get-selections —installer > preseed.new
sudo debconf-get-selections >> preseed.new

Это создаст файл preseed.new с готовыми ответами, который можно использовать как прототип для создания конфигурации для следующих установок.

Автоматическая установка обновлений после установки системы

В Astra Linux Common Edition 2.12 можно выполнить обновление указав в late-command:

В Astra Linux Special Edition для автоматической установки обновлений нужно создать файл update.service в корне ftp или http сервера с таким содержимым:

Там же создать файл update.sh в котором должны быть указаны репозитории с обновлениями. Репозитории могут размещаться где угодно, важно только правильно указать путь к ним:

а в preseed.conf в конец добавляем команды для загрузки и запуска созданных файлов:

Если всё сделано корректно — то после завершения установки ОС, после первой перезагрузки выполнится сценарий обновления, самоудалится и перезагрузит машину.

Автоматическая разметка дисковых разделов с помощью partman-auto

Данная статья является переводом статьи : https://github.com/xobs/debian-installer/blob/master/doc/devel/partman-auto-recipe.txt

Директива partman-auto является частью системы управления дисковыми разделами, автоматизирующей разбиение дисков на дисковые разделы. Порядок разбиения управляется рецептами, предоставляемыми в виде файлов, а также может управляться пакетами udeb (пакетами, предназначенными для Debian Installer) или указанием параметров разметки в файле предварительных настроек preseed. В настоящем документе описываются формы рецептов и порядок их применения.

1. Форма рецептов

Все символы перевода строки и табуляции преобразуются в пробелы. Далее каждые два или более пробела заменяются одним пробелом. Почти все лексемы разделяются пробелами. Важным исключением является открывающая фигурная скобка («<"); перед котоной _не_ должно быть пробелов.
Далее в правилах пробелы обозначаются символом подчеркивания («_»).

Назначением лексемы является перевод имен рецептов на другие языки.

  • задает минимальный допустимый размер дискового раздела в мегабайтах. Размер округляется до размера дискового цилиндра, поэтому есть задать минимальный размер 20МБ при размере цилиндра 12МБ размер дискового раздела будет 12МБ. Размеры также могут быть заданы в процентах от общего объёма системного ОЗУ или (начиная с partman-auto версии 87) как число плюс проценты (например, «2000+50%»), что задает размер как указанное число плюс указанный процент от общего объёма системного ОЗУ;
  • — некоторое число, обычно между числами и . Оно определяет приоритеты разделов при назначении размера. Если слишком мал (относительно приоритета другого раздела) этот раздел получит размер ближе к величине . Для маленьких разделов рекомендуется задавать больше чем их ;
  • — максимальный размер раздела. Специальное значение -1 используется для задания разделов неограниченного размера;
  • — файловая система для этого раздела. Может быть задана как $default_filesystem для использования значения по умолчанию (в настоящее время ext3).
Читайте также:  Joomla javascript одна страница

  • $primary <_>— раздел должен быть создан как первичный (если это возможно);
  • $bootable <_>— раздел должен быть загрузочным;
  • $default_filesystem <_>— определяет, что должна использоваться файловая система, заданная по умолчанию (в настоящее время ext3).
  • — имя файла, который будет создан в разделе (подробности см. часть 2.4 руководства по partman);
  • — информация, которая будет записана в этот файл.
  • $lvmok <_>— указувает, что раздел может быть логическим томом LVM при использовании LVM;
  • $defaultignore <_>— используется для очистки принятых по умолчанию параметров раздела (применимо при использовании LVM);
  • $lvmignore <_>— используется для очистки принятых по умолчанию параметров раздела LVM (применимо при неиспользовании LVM)

Спецификаторы defaultignore и lvmignore позволяют в одном рецепте определить разные параметры, например, раздела /boot в LVM-схеме разбиения на разделы и не-LVM схеме.

2. Примеры

Пример: корневой раздел и раздел подкачки (swap)

Этим рецептом задается, что:

  • Раздел root должен быть не менее 500 МБ и фактически не имеет максимального размера. Размер раздела swap изменяется от 64МБ до тройного размера системного ОЗУ;
  • Параметр $bootable < >делает раздел загружаемым, и параметр $primary < >делает раздел первичным.

Кроме того, в примере используются параметры:

  • method < format >— указывает, что раздел должен быть отформатирован. Для разделов подкачки (swap) используется значение «swap». Для создания раздела без форматирования используется значение «keep» (такой раздел может применяться для резервирования дискового пространства);
  • format < >— следует указать, чтобы раздел был отформатирован;
  • use_filesystem < >— указывает, что на разделе размещается файловая система;
  • filesystem < ext4 >— указывает тип файловой системы для размещения на разделе;

mountpoint < / >— задает точку монтирования раздела. Дополнительно можно задать опции монтирования, например, для задания опций «nodev,ro»:

Также возможно задать метку файловой системы для поддерживающих метки файловых систем. Например, для задания метки «astralinux»:

При установке должен быть отформатирован один дисковый раздел, помеченный как:

Пример: корневой раздел, раздел подкачки и отдельный раздел /home

Разделы будут создаваться в том порядке, в котором они перечислены в рецепте.

3. Опции, специфичные для LVM

При использовании метода автоматического разбиения «lvm» в рецепте задаются специальные опции. Это позволяет разбить на разделы несколько дисков, определяя разделы, содержащие физические тома, принадлежность этих томов группам томов, имена и принадлежность логических томов.
В одной сессии может быть обработано несколько дисков, что также должно быть указано в рецепте. Разделы, не являющиеся логическими томами и не имеющие назначенных дисков (например, /boot) по умолчанию размещаются на первом диске. Для явного задания физического тома определим раздел следующим образом:

Параметры «device< . >» и «vg_name< >» опциональны.
Указанные в параметре device устройства обязательно должны быть объявлены с помощью параметра partman-auto/disk.
Группа томов, в которую входит логический том, может быть задана как «in_vg< >«, например:

Параметр «lv_name< >» задает имя логического тома, который будет создан.

4. Зависимость от архитектуры

Некоторые архитектуры предъявляют специфические требования к дисковым разделам. Например, многие из них требуют выделения специального дискового радела для поддержки загрузки. В частности, так называемые NewWorld PowerMAC машины требуют загрузочный дисковый раздел, размещенный в начале дискаn. Ниже приведен фрагмент рецепта для создания такого раздела:.

Этот раздел должен быть первым в списке разделов и он не должет быть отформатирован.

Другой пример — архитектура netwinder, требующая небольшой раздел /boot, отформатированный в файловую систему ext2 версии 0:

И, наконец, пример настройки загрузочного раздела EFI для архитектуры ia64:

Для других архитектур см. соответствующие рецепты в udeb-пакете partman_auto.

5. Ограничения

Из-за ограничений реализации partman-auto для того, чтобы было использовано всё свободное дисковое пространство, должен быть задан один раздел максимального размера. Обычно для этого используется раздел /home, которому назначается максимальный размер 1000000000, что достаточно для существующих устройств хранения данных. Если большой раздел /home не нужен, можно задать дополнительный дисковый раздел с размером 1000000000, с методом создания «keep» и оставить его не примонтированым. После завершения инсталляции такой раздел можно удалить.

6. Как вычисляются размеры разделов

Предположим, требуется создать N разделов и min[i], max[i] и priority[i] — максимальный размер, минимальный размер и приоритет раздела i как описано в части 1 настоящей статьи.
Предположим free_space — размер свободного места для размещения разделов. Тогда:

В итоге значение min[i] будет значением размера радела i.

Особенности настройки параметров сети

Eсли файл ответов загружается из сети, то настройка параметров сети выполняется до загрузки файла ответов, и параметры настройки сети, заданные в этом файле, игнорируются. То есть, настройка сети с помощью файла ответов по умолчанию применима если загрузка происходит с компакт-диска или USB-накопителя. При загрузке файла ответов из сети можно только указать используемый для загрузки файлов ответов сетевой интерфейс, для чего используется параметр ядра interface, например interface= eth1 .

Принудительно выполнить перенастройку сети (например, задать статический адрес) с помощью файла ответов после завершения установки по сети можно следующим способом:

Создать на ftp-сервере сценарий со следующим содержимым:

При выполнении этого сценария будут отключены службы автоматической настройки сети через DHCP и выполнены директивы netcfg из файла ответов (список возможных директив см. ниже).

Сделать файл с созданным сценарием исполняемым:

sudo chmod +x

Добавить следующую строку в файл ответов непосредственно перед статической настройкой сети:

Для настройки сети могут использоваться следующие переменные debconf:

d-i netcfg/get_nameservers string 192.168.1.1
d-i netcfg/get_ipaddress string 192.168.1.42
d-i netcfg/get_netmask string 255.255.255.0
d-i netcfg/get_gateway string 192.168.1.1
d-i netcfg/confirm_static boolean true

Переменная Описание
d-i netcfg/enable boolean false Полностью выключить настройку сети. Это полезно при установке на устройства, не имеющие сети, когда вопросы о сети неуместны.
d-i netcfg/choose_interface select auto Автоматический выбор активного сетевого интерфейса, если такой имеется. Если имеется более одного интерфейса, то при данной настройке список интерфейсов выводиться не будет.
d-i netcfg/choose_interface select eth1 Принудительный выбор указанного сетевого интерфейса (в данном случае — интерфейс eth1).
d-i netcfg/link_wait_timeout string 10 Время ожидания появления связи (link) (по умолчанию 3 секунды). Значение указывается в секундах.
d-i netcfg/dhcp_timeout string 60
d-i netcfg/dhcpv6_timeout string 60
Время ожидания параметров DHCP
d-i netcfg/disable_autoconfig boolean true Отключение автоматической настройки сети, переход к ручной настройке.
d-i netcfg/dhcp_failed note
d-i netcfg/dhcp_options select Configure network manually
Игнорирование отсутствия DHCP-сервера
Статические настройки параметров сети (пример для IPv4).
d-i netcfg/get_ipaddress string fc00::2
d-i netcfg/get_netmask string ffff:ffff:ffff:ffff::
d-i netcfg/get_gateway string fc00::1
d-i netcfg/get_nameservers string fc00::1
d-i netcfg/confirm_static boolean true
Статические настройки параметров сети (пример для IPv6).
d-i netcfg/hostname string somehost Принудительное задание имени хоста (значения, предлагаемые DHCP или реверсивным DNS игнорируются).
d-i netcfg/wireless_wep string Выключение диалога о ключе WEP
d-i netcfg/dhcp_hostname string radish Специальное имя DHCP-сервера, которое используют некоторые провайдеры в качестве некоего пароля.
d-i hw-detect/load_firmware boolean true Разрешение загрузки несвободных микропрограмм без запроса подтверждения (или значение false для запрета загрузки).
netcfg/get_netmask string 255.255.255.0 Принудительное задание маски сети. Если не задано, то маска выбирается автоматически.
netcfg/get_gateway string 192.168.1.1 Принудительное задание адреса сетевого шлюза. Если не задано, то адрес сетевого шлюза выбирается автоматически. Специальное значение none указывает, что шлюз не используется.

Пример файла preseed.cfg для Astra Linux Special Edition РУСБ.10015-01 очередное обновление 1.7

    Загрузка выполняется из Интернет-репозитория Astra Linux Special Edition РУСБ.10015-01 очередное обновление 1.7 (см. Интернет-репозитории Astra Linux Special Edition x.7);

Установка выполняется с раздельными дисковыми разделами для корневого каталога и каталогов /boot и /tmp и без создания раздела подкачки (подробнее про рекомендованную структуру разделов см. Astra Linux Red Books):

Установка ПО выполняется в минимальной конфигурации (только базовые пакеты Base packages и графическая оболочка Fly desktop), дополнительно устанавливается служба SSH Server для обеспечения возможности удаленного управления компьютером:

Установка ПО Astra Linux Directory (ALD) не выполняется;

Максимальный уровень защищенности:

Усиленный уровень защищенности:

Базовый уровень защищенности:

Максимальный уровень защищенности:

Усиленный уровень защищенности:

Базовый уровень защищенности:

  • После установки:
      1. Удалятся серверная служба синхронизации времени ntp, и включается клиентская служба синхронизации времени systemd-timesyncd.service (см. Службы синхронизации времени в ОС Astra Linux):

      Удаляются созданные при установке сетевые подключения:

      (сетевые подключения будут автоматически созданы при включении компьютера после установки).

      Пример файла preseed.cfg:

      Загрузка по сети в режиме восстановления (rescue mode)

      Разрешение загрузки (локально или по сети) в режиме восстановления существенно снижает защищенность информационной системы, предоставляя неограниченных доступ анонимным пользователям.

      Для того, чтобы предоставить пользователям возможность загрузки компьютеров в режиме восстановления следует создать в файле pxelinux.cfg/default элемент меню следующего содержания:

      От ранее приведенных примеров меню данный пример отличается добавленной опцией:

      включающей загрузку в режиме восстановления

      Источник

  • Поделиться с друзьями
    КомпСовет
    Adblock
    detector