ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... ·...

189
Утвержден ДВНБ.10001-01-УД Инв. № подл. Подп. и дата Взам. инв. № Инв. № дубл. Подп. и дата 2018 ОПЕРАЦИОННАЯ СИСТЕМА «ОСНОВА» Руководство оператора ДВНБ.10001-01 34 01 Листов 189

Upload: others

Post on 22-Jan-2021

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

УтвержденДВНБ.10001-01-УД

Инв.№

подл.

Подп.и

дата

Взам

.инв.№

Инв.№

дубл.

Подп.и

дата

2018

ОПЕРАЦИОННАЯ СИСТЕМА «ОСНОВА»Руководство оператораДВНБ.10001-01 34 01

Листов 189

Page 2: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

2ДВНБ.10001-01 34 01

АННОТАЦИЯ

Настоящий документ руководство оператора содержит необходимые сведениядля применения и эксплуатации операционной системы «ОСНова» ДВНБ.10001-01(далее по тексту — ОС).

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

Page 3: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

3ДВНБ.10001-01 34 01

СОДЕРЖАНИЕ

1. Назначение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.1. Состав операционной системы . . . . . . . . . . . . . . . . . . . . . . . 81.1.1. Средства установки ОС . . . . . . . . . . . . . . . . . . . . . . . . . . 91.1.2. Базовые средства ОС . . . . . . . . . . . . . . . . . . . . . . . . . . 91.1.3. Средства установки и удаления приложений . . . . . . . . . . . . . . . 101.1.4. Средства разработки . . . . . . . . . . . . . . . . . . . . . . . . . . . 101.1.5. Средства защиты информации . . . . . . . . . . . . . . . . . . . . . . 101.1.6. Средства работы с мультимедиа . . . . . . . . . . . . . . . . . . . . . 111.1.7. Средства работы с офисными документами . . . . . . . . . . . . . . . . 111.1.8. Средства работы с интернетом . . . . . . . . . . . . . . . . . . . . . . 111.1.9. Средства вывода информации на печать . . . . . . . . . . . . . . . . . 121.1.10. Средства резервного копирования и восстановления данных . . . . . . 122. Условия выполнения программы . . . . . . . . . . . . . . . . . . . . . . . 132.1. Технические средства . . . . . . . . . . . . . . . . . . . . . . . . . . . 133. Установка операционной системы . . . . . . . . . . . . . . . . . . . . . . 144. Справочное руководство — man . . . . . . . . . . . . . . . . . . . . . . . 254.1. Использование . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254.2. Разделы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275. Администрирование . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285.1. Получение полномочий администрирования – sudo . . . . . . . . . . . . . 285.2. Механизмы разделения полномочий . . . . . . . . . . . . . . . . . . . . 296. Управление учетными записями пользователей . . . . . . . . . . . . . . . . 306.1. Создание пользователей — adduser/deluser . . . . . . . . . . . . . . 306.2. Изменение атрибутов учетной записи пользователя — usermod . . . . . . 306.3. Управление учетными записями групп — addgroup/delgroup . . . . . . 316.4. Изменение атрибутов и состава пользователей в группе — gpasswd . . . . 316.5. Графическая утилита управления учетными записями — lxqt-admin . . . 32

Page 4: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

4ДВНБ.10001-01 34 01

7. Управление функционированием . . . . . . . . . . . . . . . . . . . . . . . 367.1. Получение информации и просмотр списка процессов . . . . . . . . . . . 377.2. Сигналы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377.3. Системный менеджер — systemd . . . . . . . . . . . . . . . . . . . . . 387.4. Изменение состояния системы — shutdown, init . . . . . . . . . . . . 418. Управление файловой системой . . . . . . . . . . . . . . . . . . . . . . . 438.1. Структура файловой системы . . . . . . . . . . . . . . . . . . . . . . . . 438.2. Инициализация — mkfs . . . . . . . . . . . . . . . . . . . . . . . . . . 448.3. Монтирование и размонтирование — mount/umount . . . . . . . . . . . 458.4. Конфигурация файловой системы — fstab . . . . . . . . . . . . . . . . 488.5. Проверка и исправление — fsck . . . . . . . . . . . . . . . . . . . . . 499. Управление программными пакетами . . . . . . . . . . . . . . . . . . . . . 529.1. Установка и удаление пакетов . . . . . . . . . . . . . . . . . . . . . . . 529.2. Порядок получения обновлений . . . . . . . . . . . . . . . . . . . . . . 539.3. Установка обновлений безопасности . . . . . . . . . . . . . . . . . . . . 5410. Управление устройствами . . . . . . . . . . . . . . . . . . . . . . . . . . 5510.1. Типы устройств . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5510.2. Управление разделами . . . . . . . . . . . . . . . . . . . . . . . . . . 5510.3. Программная организация разделов в RAID . . . . . . . . . . . . . . . . 5611. Управление функциями безопасности . . . . . . . . . . . . . . . . . . . . 5711.1. Механизмы реализации средств защиты информации . . . . . . . . . . . 5711.2. Идентификация и аутентификация . . . . . . . . . . . . . . . . . . . . 5811.2.1. Установка пароля пользователя — passwd . . . . . . . . . . . . . . . 5911.2.2. Настройка срока действия пароля пользователя — chage . . . . . . . . 6011.2.3. Настройка блокировки учетной записи пользователя — usermod, passwd 6111.2.4. Регистрация неуспешных попыток входа в систему — faillog . . . . . 6211.3. Дискреционное управление доступом . . . . . . . . . . . . . . . . . . . 6211.3.1. Изменение владельца — chown . . . . . . . . . . . . . . . . . . . . . 6411.3.2. Изменение прав доступа — chmod . . . . . . . . . . . . . . . . . . . 65

Page 5: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

5ДВНБ.10001-01 34 01

11.3.3. Изменение ACL — setfacl . . . . . . . . . . . . . . . . . . . . . . 6711.4. Защита памяти . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6811.5. Регистрация событий . . . . . . . . . . . . . . . . . . . . . . . . . . . 6911.5.1. Служба ведения событий аудита — auditd . . . . . . . . . . . . . . . 7011.5.2. Управление правилами аудита — auditctl . . . . . . . . . . . . . . 7111.5.3. Просмотр отчетов о событиях аудита — aureport . . . . . . . . . . . 7311.5.4. Поиск событий безопасности — ausearch . . . . . . . . . . . . . . . 7411.6. Изоляция модулей . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7511.7. Очистка памяти . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7611.8. Контроль целостности . . . . . . . . . . . . . . . . . . . . . . . . . . . 7811.8.1. Средства регламентного контроля целостности — afick . . . . . . . . 7911.8.2. Средство подсчета контрольных сумм файлов и носителей — gostsum . 8011.8.3. Средства создания замкнутой программной среды . . . . . . . . . . . 8111.9. Настройка работы корневойфайловой системыОСврежиме «только чтение» 8712. Управление сетевыми настройками и фильтрацией . . . . . . . . . . . . . 8912.1. Сетевое взаимодействие (TCP/IP) . . . . . . . . . . . . . . . . . . . . . 8912.2. Фильтр сетевых пакетов . . . . . . . . . . . . . . . . . . . . . . . . . . 8912.2.1. Порядок фильтрации и правила обработки пакетов . . . . . . . . . . . 8912.2.2. Таблица mangle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9212.2.3. Таблица nat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9212.2.4. Таблица filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9312.3. Управление фильтром сетевых пакетов (iptables) . . . . . . . . . . . . . 9312.4. Расширение функциональности iptables подключаемыми модулями . . . . 9612.4.1. Примеры фильтрации сетевого уровня . . . . . . . . . . . . . . . . . 9612.4.2. Примеры фильтрации транспортного уровня . . . . . . . . . . . . . . . 9712.4.3. Пример базового набора правил . . . . . . . . . . . . . . . . . . . . . 9912.5. Пример защиты от разных видов забивания полосы пропускания . . . . . 9912.5.1. ICMP-флуд . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9912.5.2. SYN-флуд . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99

Page 6: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

6ДВНБ.10001-01 34 01

12.5.3. UDP-флуд . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10012.5.4. HTTP-флуд . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10012.6. Управление фильтром сетевых пакетов (ufw) . . . . . . . . . . . . . . . 10113. Управление сервером печати CUPS . . . . . . . . . . . . . . . . . . . . . 10513.1. Архитектура и принципы функционирования . . . . . . . . . . . . . . . 10513.1.1. Диспетчер печати . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10513.1.2. Система фильтрации . . . . . . . . . . . . . . . . . . . . . . . . . . 10613.1.3. Рабочие файлы и каталоги . . . . . . . . . . . . . . . . . . . . . . . 10713.1.4. Система взаимодействия с оборудованием . . . . . . . . . . . . . . . 10813.1.5. Политики контроля операций . . . . . . . . . . . . . . . . . . . . . . 10813.1.6. Очереди печати . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10813.2. Управление подсистемой печати CUPS . . . . . . . . . . . . . . . . . . 10813.2.1. Команды управления печатью . . . . . . . . . . . . . . . . . . . . . . 10913.3. Графический интерфейс управления подсистемой печати . . . . . . . . . 11014. Резервное копирование и восстановление данных . . . . . . . . . . . . . 11514.1. Утилита rsync . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11514.2. Утилита tar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11614.3. Система резервного копирования Bacula . . . . . . . . . . . . . . . . . 11715. Поддержка средств двухфакторной аутентификации . . . . . . . . . . . . 13215.1. Электронный идентификатор Guardant ID . . . . . . . . . . . . . . . . . 13215.2. Применение Guardant ID . . . . . . . . . . . . . . . . . . . . . . . . . 13315.3. Управление электронными идентификаторами – grdid-tool . . . . . . . . . 13515.4. Использование Guardant ID для доступа к системе – pam_grdid . . . . . . 13615.5. Настройка SSH для доступа с использованием Guardant ID . . . . . . . . 13816. Средства организации домена . . . . . . . . . . . . . . . . . . . . . . . 13916.1. Состав . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14016.2. Установка . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14016.3. Настройка . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14016.4. Администрирование домена . . . . . . . . . . . . . . . . . . . . . . . . 141

Page 7: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

7ДВНБ.10001-01 34 01

16.4.1. Создание домена (инициализация контролера домена) . . . . . . . . . 14116.4.2. Управление составом компьютеров домена . . . . . . . . . . . . . . . 14416.4.3. Создание файла ключей сервиса . . . . . . . . . . . . . . . . . . . . 14616.4.4. Управление учетными записями пользователей домена . . . . . . . . . 14616.4.5. Управление учетными записями групп пользователей домена . . . . . . 15116.4.6. Управление учетными записями рабочих станций . . . . . . . . . . . . 15216.4.7. Управление учетными записями служб (сетевых сервисов) домена . . . . 15416.4.8. Управление политиками учетных записей . . . . . . . . . . . . . . . . 15616.4.9. Управление доверительными отношениями . . . . . . . . . . . . . . . 15917. Система управления базами данных . . . . . . . . . . . . . . . . . . . . 16217.1. Управление функционированием и работа с СУБД . . . . . . . . . . . . 16217.2. Настройка СУБД для работы в домене . . . . . . . . . . . . . . . . . . 16317.3. Пример настройки отказоустойчивого кластера СУБД . . . . . . . . . . . 16317.3.1. Настройка удаленного соединения между серверами кластера . . . . . 16417.3.2. Настройка потоковой репликации . . . . . . . . . . . . . . . . . . . . 16417.3.3. Общая настройка узла масштабирования . . . . . . . . . . . . . . . . 16617.3.4. Настройка автоматического failover . . . . . . . . . . . . . . . . . . . 16717.3.5. Online recovery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16918. Средства работы с интернетом . . . . . . . . . . . . . . . . . . . . . . . 17518.1. Настройка web-сервера Apache2 . . . . . . . . . . . . . . . . . . . . . 17518.2. Настройка web-сервера Apache2 для работы в домене . . . . . . . . . . 17618.3. Настройка web-браузеров для работы в домене . . . . . . . . . . . . . . 17718.4. Настройка почтовых серверов для работы в домене . . . . . . . . . . . . 17819. Завершение работы и перезагрузка . . . . . . . . . . . . . . . . . . . . . 18120. Сообщения администратору безопасности . . . . . . . . . . . . . . . . . 182Перечень сокращений . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183Приложение А. Системные команды . . . . . . . . . . . . . . . . . . . . . . 185

Page 8: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

8ДВНБ.10001-01 34 01

1. НАЗНАЧЕНИЕ

ОС предназначена для построения защищенных автоматизированных систем(АС), обрабатывающих информацию ограниченного доступа и функционирует нааппаратных платформах с процессорной архитектурой x86-64.

ОС предоставляет следующие возможности:– поддержка многопользовательского режима работы;– функционирование в многозадачном режиме на аппаратной платформе спроцессорной архитектурой x86-64;– организация сетевого домена с централизованным хранением учетных запи-сей;– интеграция с доменом Windows;– организация замкнутой программной среды;– поддержка новейшего периферийного оборудования;– поддержка основных сетевых протоколов;– поддержку отказоустойчивого режима работы;– обеспечение автоматизации повседневнойдеятельности (офисные средства,работа с электронной почтой, гипертекстовыми данными, словари, работа сграфикой, мультимедиа и т.д.);– обеспечение функциональных возможностей безопасности операционныхсистем типа «А» четвертого класса защиты по профилю ИТ.ОС.А4.ПЗ.

1.1. Состав операционной системы

В состав ОС входят:– загрузчик ОС;– набор ядер Linux с механизмами защиты информации;– базовые системные компоненты и библиотеки;– системные компоненты и библиотеки средств защиты информации;– средства установки и настройки;– средства управления программными пакетами;– системный менеджер;– базовые сетевые службы;

Page 9: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

9ДВНБ.10001-01 34 01

– подсистема печати;– графическая подсистема (графический сервер, система управления сеан-сами пользователей и графический менеджер окон);– средства организации домена;– программное обеспечение (ПО) работы с мультимедиа;– средства работы с офисными документами;– средства работы с интернетом (браузеры, почтовые клиенты, мессенджеры);– средства резервного копирования и восстановления.

1.1.1. Средства установки ОССредства установки ОС:– поддерживают установку как в режиме BIOS, так и в режиме UEFI;– поддерживают установку на диски с разбиением MBR и GPT;– позволяют проводить первоначальные настройки компьютера, необходимыедля инсталляции, разбиение жесткого диска (ЖД);– позволяют проводить установку даты и времени, конфигурирование сетевыхинтерфейсов, создание пользовательского аккаунта.

1.1.2. Базовые средства ОСБазовые средства ОС:– обеспечивают загрузку ОС в текстовом или графическом режиме по выборупользователя;– включают стандартные для Linux компоненты графического окружения,такие как: xorg, lxqt, xfce, предоставляющие пользователю графический рабо-чий стол и содержащие файловый менеджер, эмулятор терминала, редактортекста, панель задач, средство просмотра изображений, индикаторы расклад-ки клавиатуры, монитор системных ресурсов (памяти, процессора, ЖД, про-цессов) и программные средства (ПС) с открытым исходным кодом для записи,создания и копирования CD/DVD дисков с данными, CDDA, работы с образамидисков;– включают средства интеграции сдоменомWindows (SMB/CIFS), сервер служ-бы каталогов и средства доступа к серверу по протоколу LDAP;– включают средства, осуществляющие контроль и фильтрацию сетевого тра-

Page 10: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

10ДВНБ.10001-01 34 01

фика в соответствии с заданными правилами (iptables);– обеспечивают базовые сетевые сервисы –DNS,DHCP, SSH, FTP,NTP,NFS,SNMP.

1.1.3. Средства установки и удаления приложенийСредства установки и удаления приложений обеспечивают:– установку и удаление программ, поставляемых на оптическом носителе;– обновление программ, поставляемых на диске с обновлениями;– установку и удаление дополнительных программ из онлайн-репозиториевDebian stretch.В ОС используются программные пакеты (далее по тексту— пакеты) в форма-

те «.deb». Для управления пакетами предназначены команды dpkg и apt-get.

1.1.4. Средства разработкиСредства разработки включают в себя комплекс программных средств (ПС),

необходимых для создания прикладного и системного программного обеспечения:– компиляторыиинтерпретаторыдля наиболее популярных языков (С++, Java,PHP, Python);– интегрированные среды разработки (Qt Creator), отладчики (gdb);– средства сборки deb-пакетов (debhelper).

1.1.5. Средства защиты информацииСредства защиты информации (СЗИ) обеспечивают:– поддержку двухфакторной идентификации и аутентификации пользовате-лей;– предотвращение эксплуатации уязвимостей;– очистку оперативной и внешней памяти;– создание замкнутой программной среды;– контроль целостности и восстановления;– разграничение доступа к внешним устройствам;– регистрацию событий;– регулярный выпуск обновлений безопасности.

Page 11: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

11ДВНБ.10001-01 34 01

1.1.6. Средства работы с мультимедиаСредства работы с мультимедиа включает:– средства воспроизведения видеофайлов в форматах AVI, MPEG-4, и т.д.;– средства создания и воспроизведения аудиофайлов вформатах FLAC,MP3,WAV и т.п.

1.1.7. Средства работы с офисными документамиСредства работы с офисными документами реализованы на основе офисного

пакета LibreOffice с открытым исходным кодом, содержащего следующие компоненты:– текстовый редактор Writer;– табличный процессор Calc;– программа для подготовки и просмотра презентаций Impress;– векторный графический редактор Draw;– система управления базами данных Base;– редактор формул Math.Основным поддерживаемым форматом файлов является открытый междуна-

родныйформатOpenDocument (ODF) с поддержкойформатовOfficeOpenXML, DOC,XLS, PPT, CDR.

Средства работы с устройствами сканирования изображений обеспечиваютподдержку режима пакетного сканирования и графический интерфейс пользовате-ля (SANE, XSane, SimpleScan).

Средства для работы с растровой и векторной графикой реализованы наоснове программного обеспечения с открытым исходным кодом GIMP.

1.1.8. Средства работы с интернетомСредства работы с интернетом содержат:– веб-сервер, обеспечивающий поддержку работы веб-протоколов (Apache);– прокси-сервер (nginx), обеспечивающий кэширование и сжатие данных;– почтовый сервер (Exim), почтовый клиент (Mozilla Thunderbird);– веб-браузеры Mozilla Firefox и Chromium.

Page 12: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

12ДВНБ.10001-01 34 01

1.1.9. Средства вывода информации на печатьСредства обеспечивающие вывод информации на печать, реализованы на

основеПОсоткрытымисходным кодомCUPSиподдерживают сетевуюпечать и управ-ление заданиями печати.

1.1.10. Средства резервного копирования и восстановления данныхСредства резервного копирования и восстановленияданных обеспечивают воз-

можность создания и хранения резервных копий (в т. ч., сетевых).К таким средствам относятся:– утилита удаленного копирования (резервного копирования) или синхрониза-ции файлов и каталогов rsync;– утилита архивирования файлов и каталогов tar;– система централизованного резервирования информационных ресурсовBacula.

Page 13: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

13ДВНБ.10001-01 34 01

2. УСЛОВИЯ ВЫПОЛНЕНИЯ ПРОГРАММЫ

2.1. Технические средства

Для функционирования ОС необходима следующая минимальная конфигура-ция оборудования:

– процессор: AMD, Intel (х86-64);– оперативная память: от 1 ГБ и более;– жесткий диск: от 16 ГБ;– сетевая плата 100 Мбит/с;– источник бесперебойного питания;– устройство чтения/записи СD/DVD-дисков;– стандартный монитор SVGA 15”.

Page 14: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

14ДВНБ.10001-01 34 01

3. УСТАНОВКА ОПЕРАЦИОННОЙ СИСТЕМЫ

Для установки ОС необходимо поместить в DVD-привод компакт-дискДВНБ.10001–01 12 01-1. В появившемся окне выберете пункт меню [Графический ре-жим установки] и нажмите клавишу Enter (рис. 1).

Рис. 1

Page 15: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

15ДВНБ.10001-01 34 01

Осуществится загрузка компонентов программы установки ОС (рис. 2).

Рис. 2

В появившемся диалоговом окне «Настройка сети» необходимо ввести Имякомпьютера и Имя домена. После ввода данных, нажмите кнопку [Продолжить](рис. 3, 4).

Page 16: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

16ДВНБ.10001-01 34 01

Рис. 3

Рис. 4

В диалоговом окне «Настройка учетных записей пользователей и паролей»необходимо ввести Полное имя нового пользователя, Имя вашей учетной записи иПароль для нового пользователя. (рис. 5, 6, 7).

Page 17: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

17ДВНБ.10001-01 34 01

Рис. 5

Page 18: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

18ДВНБ.10001-01 34 01

Рис. 6

Рис. 7

После ввода данных, нажмите кнопку [Продолжить].

Page 19: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

19ДВНБ.10001-01 34 01

В диалоговом окне «Настройка времени» выберите Часовой пояс и нажмитекнопку [Продолжить] (рис. 8).

Рис. 8

В диалоговом окне «Разметка дисков» выберите способ разметки диска и на-жмите кнопку [Продолжить] (рис. 9).

Page 20: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

20ДВНБ.10001-01 34 01

Рис. 9

П р и м е ч а н и е. При необходимости укажите список разделов и их точекмонтирования (рис. 10). Следуйте указаниям программы разметки диска.

Рис. 10

Убедитесь в правильности разбиения диска и нажмите клавишу [Enter]

(рис. 11).

Page 21: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

21ДВНБ.10001-01 34 01

Рис. 11

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

набор программного обеспечения и нажмите кнопку [Продолжить] (рис. 12).

Рис. 12

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

Page 22: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

22ДВНБ.10001-01 34 01

По окончании установки программного обеспечения укажите место установкисистемного загрузчика GRUB и пароль к нему (рис. 13, 14).

Рис. 13

Page 23: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

23ДВНБ.10001-01 34 01

Рис. 14

Нажмите кнопку [Продолжить].Дождитесь диалогового окна «Завершение установки» и нажмите кнопку

[Продолжить] (рис. 15).

Рис. 15

Для начала эксплуатации ОС требуется перезагрузить компьютер и извлечькомпакт-диск ДВНБ.10001–01 12 01-1 из DVD-привода.

Page 24: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

24ДВНБ.10001-01 34 01

Вход в систему начинается с системного приглашения:

Рис. 16

В ответ на приглашение следует ввести логин и пароль пользователя, кото-рый был зарегистрирован при установке ОС. После ввода данных, нажмите кнопку[Войти] или клавишу [ENTER] для входа в систему.

Page 25: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

25ДВНБ.10001-01 34 01

4. СПРАВОЧНОЕ РУКОВОДСТВО — MAN

В ОС существует возможность получить информацию о доступных командах спомощьюman. Командаman (от англ. manual— руководство) предназначена дляфор-матирования и вывода справочных страниц. Каждая страница справки является само-стоятельным документом и пишется разработчиками соответствующего программногообеспечения.

4.1. Использование

Доступ к терминалу можно получить прямо из главного меню. Для открытиятерминала нужно нажать [Меню]–>[Системные]–>[QTerminal] (рис. 17).

Рис. 17

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

man <command_name>, где <command_name> название команды.Например, чтобы посмотреть детальную инструкцию по использованию коман-

ды man, нужно ввести в терминале:

Page 26: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

26ДВНБ.10001-01 34 01

man man

После ввода команды, появится справочное руководство (рис. 18):

Рис. 18

Для навигации в справочной системе man можно использовать клавиши вверхи вниз для построчного перехода, page up и page down для постраничного переходавверх и вниз соответственно.

При просмотре больших страниц удобно воспользоваться поиском, для это-го следует нажать / (слэш и строка поиска отобразятся в нижней части экрана),затем набрать строку поиска и нажать enter. Для перехода к следующему совпа-дению нужно нажать n (Next — следующий). Для показа предыдущего совпадениянужно нажать N (заглавную, то есть Shift+N).

Для получения краткой справки по командам и горячим клавишам справочнойсистемы нужно нажать H (Help — помощь).

Для выхода из справочной системы нужно нажать Q (Quit — выход).

Page 27: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

27ДВНБ.10001-01 34 01

4.2. Разделы

Справочные страницы поделены на 9 разделов. Каждый из разделов соответ-ствует той или иной тематике в рамках установленной ОС (см. таблицу 1).

Т а б л и ц а 1Раздел Описание

1 Исполняемые программы и команды оболочки (shell)2 Системные вызовы ядра (функции, предоставляемые ядром)3 Библиотечные вызовы (функции, предоставляемые программными библиотеками4 Специальные файлы (находящиеся обычно в каталоге /dev)5 Форматы файлов и соглашения, например о /etc/passwd6 Игры7 Разное (включает пакеты макросов и соглашения), например man(7), groff(7)8 Команды администрирования системы (обычно запускаются только суперпользователем)9 Процедуры ядра (нестандартный раздел)

Номер раздела в команде man указывается вторым аргументом, перед назва-нием справочной страницы. Если номер раздела опущен, то поиск справочной стра-ницы ведется по всем разделам по порядку.

man passwd #раздел 1

man 1 passwd #раздел 1

man 5 passwd #раздел 5

Page 28: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

28ДВНБ.10001-01 34 01

5. АДМИНИСТРИРОВАНИЕ

Административное управление в ОС отделено от общего доступа пользовате-лей. Большинство операций по настройке и администрированию ОС требуют приви-легий суперпользователя root, например:

– управление процессами и сервисами;– управление устройствами;– монтирование и размонтирование файловой системы (ФС);– задание имени системы и настройка сетевых интерфейсов;– изменение программно-аппаратных системных настроек (например, уста-новка системных часов);– изменение корневого каталога процесса командой chroot;– управление доступом (конфигурирование сценариев входа, изменение при-надлежности файлов).В ОС применяется принцип минимальных полномочий, при котором пользова-

телям делегируется ограниченный набор привилегий и ресурсов для выполнения кон-кретных действий по администрированию.

Настройка запрета интерактивного входа в систему суперпользователя (root)осуществляется посредством настройки механизма sudo.

Список основных системных команд приведен в приложении А, таблица 36.ВНИМАНИЕ! К паролю пользователей, обладающих административным досту-

пом, предъявляются повышенные требования к качеству и надежности.

5.1. Получение полномочий администрирования – sudo

Для получение полномочий администрирования применяется системная ко-манда sudo, позволяющая делегировать те или иные привилегированные ресурсыпользователям с ведением протокола работы. Целью является предоставление поль-зователям ограниченное число прав, при этом достаточных для решения поставленныхзадач.

Команда sudo предоставляет возможность пользователям выполнять коман-ды от имени суперпользователя либо других пользователей. Правила, используе-мые sudo для принятия решения о предоставлении доступа, находятся в файле

Page 29: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

29ДВНБ.10001-01 34 01

/etc/sudoers.ВНИМАНИЕ! Для редактирования файла использовать специальный редак-

тор visudo, запускаемый из командной строки без параметров, в том числе без ука-зания пути к файлу.

В качестве аргументов sudo принимает командную строку, которую следуетвыполнить с правами другого пользователя. В случае допустимости запуска команды,указанной в командной строке, текущему пользователю, ему предлагается ввести свойпароль. Таким образом, для каждого пользователя установлен набор команд, кото-рые он может исполнять от имени суперпользователя. При этом ведется регистрациясообщений о происходящих в системе событиях с помощью журнала syslog.

Описание команд sudo, visudo и формата файла /etc/sudoers приведе-но в соответствующих страницах man.

5.2. Механизмы разделения полномочий

В ОС применяется несколько механизмов разделения полномочий междусистемными администраторами и пользователями:

– механизм привилегий;– механизм повышения полномочий на время выполнения (setuid, setgid).Механизм системный привилегий используются для регламентирования вы-

полнения привилегированных операций ядра ОС процессами. При этом привилегиинаследуются процессами от своих «родителей» и не могут быть переданы стороннимпроцессам. Для использования унаследованных привилегий процесс явным образомдолжен их задействовать.

Механизм повышения полномочий на время выполнения (атрибуты setuid

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

Page 30: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

30ДВНБ.10001-01 34 01

6. УПРАВЛЕНИЕ УЧЕТНЫМИ ЗАПИСЯМИ ПОЛЬЗОВАТЕЛЕЙ

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

– создание пользователей (adduser/deluser) п. 6.1;– изменение атрибутов учетной записи пользователя (usermod/chfn/chfs)п. 6.2;– управление учетными записями групп (addgroup/delgroup) п. 6.3;– изменение атрибутов и состава пользователей группы (gpasswd) п. 6.4.ВНИМАНИЕ! Выполнение указанных действий требует прав администратора.

6.1. Создание пользователей — adduser/deluser

Создание пользователей ОС выполняется с помощью команды adduser.Данная команда представляет собой скрипт командной оболочки, позволя-

ющий создать учетную запись пользователя, сформировать домашний каталог изшаблона в /etc/skel, задать параметры учетной записи пользователя и назначитьпароль в интерактивном режиме.

Для создания пользователя ввести команду:sudo adduser <пользователь>

Опции --system и --group позволяют задать создание системного пользо-ватели и указать группу пользователя.

Для удаления учетной записи пользователя используется команда deluser.По умолчанию данная команда не удаляет домашний каталог и почтовый ящикпользователя. Если необходимо удалить домашний каталог, используется опция--remove-home. При указании опции --remove-all-files удаляются все при-надлежащие пользователю файлы, включая почтовый ящик и домашний каталог.

Формат вызова команды:sudo deluser <пользователь> [опции]

6.2. Изменение атрибутов учетной записи пользователя — usermod

Атрибуты учетной записи пользователя (расположение домашнего каталога,комментарий к учетной записи, группа пользователя, командная оболочка и др.) из-меняются с помощью команды usermod.

Page 31: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

31ДВНБ.10001-01 34 01

Формат вызова команды:sudo usermod [опции] <имя_пользователя>

Наиболее часто используемые опции данной команды приведены в таблице 2.

Т а б л и ц а 2 – Опции команды usermodОпция Описание

-c <комментарий> Изменить комментарий к учетной записи-d <путь> Создать домашний каталог по указанному пути

-mПереместить домашний каталог (новое расположение указыва-ется с помощью опции -d)

-s <оболочка> Установить командную оболочку-g <идентификатор_группы> Изменить первичную группу

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

– cnfn— изменение описательной части учетной записи;– chsh — изменение командной оболочки пользователя, предоставляемойему при консольном входе.

6.3. Управление учетными записями групп — addgroup/delgroup

Создание учетных записей групп ОС выполняется с помощью командыaddgroup.

Формат вызова команды:sudo addgroup [опции] <группа>

Опция --system позволяет задать создание системной группы.Для удаления учетной записи группы пользователей используется команда

delgroup.Формат вызова команды:sudo delgroup <группа>

ВНИМАНИЕ! Первичная группа существующего пользователя не может бытьудалена.

6.4. Изменение атрибутов и состава пользователей в группе — gpasswd

Утилита gpasswd используется для изменения атрибутов группы и ее составапользователей. Наряду с членством пользователей позволяет установить пароль на

Page 32: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

32ДВНБ.10001-01 34 01

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

зователей. Первичная группа пользователей является атрибутом его учетной записии изменяется с помощью утилит изменения учетной записи пользователя.

Для добавления пользователя в группу используется команда:sudo gpasswd --add <пользователь> <группа>

Для удаления пользователя из группы используется команда:sudo gpasswd --remove <пользователь> <группа>

6.5. Графическая утилита управления учетными записями — lxqt-

admin

Для управления группами пользователей, пользователями, уровнями конфи-денциальности и категориями в составОС входит графическая утилитаlxqt-admin.Запуск утилиты выполняется с помощью пункта «Пользователи и группы» из менюОС,либо с помощью команды:

lxqt-admin

На главной экранной форме представлены основные свойства пользователейи групп (см. рис. 19).

Рис. 19

Page 33: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

33ДВНБ.10001-01 34 01

В верхней части представлены меню и панель инструментов для быстрого до-ступа к функциям управления учетными записями. Для выполнения операций по до-бавлению, модификации, удалению учетной записи пользователя и изменению паро-ля необходимо выбрать вкладку «Пользователи» главной экранной формы. Кнопка[Добавить] на панели инструментов запускает диалог создания нового пользова-теля 20).

На первой вкладке диалога заполняются основные свойства учетной записи:логин, идентификатор пользователя, командная оболочка, домашний каталог и опи-сание GECOS.

На вкладке «Группы» могут быть указаны группы, в которые будет входитьпользователь после добавления в ОС.

Рис. 20

Смена пароля уже созданного пользователя выполняется с помощью кнопки[Сменить пароль] на панели инструментов. При этом используется системный сце-нарий смены пароля, в ходе которого будут запрошены необходимые данные.

Для изменения свойств учетной записи пользователя, срока ее действия иливыполнения ее блокировки требуется выбрать пользователя и нажать [Свойства].

Для удаления пользователя из ОС требуется выбрать пользователя и нажатькнопку [Удалить] на панели инструментов, при этом будет запрошено подтвержде-ние выполнения операции.

Page 34: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

34ДВНБ.10001-01 34 01

Для выполнения операций по добавлению, модификации, удалению учетнойзаписи групп пользователей выбрать вкладку «Группы» главной экранной формы(рис. 21).

Рис. 21

При нажатии[Добавить], запуститься диалог создания новой группы (рис. 22).

Рис. 22

Page 35: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

35ДВНБ.10001-01 34 01

В диалоге указывается имя группы и по желанию администратора иденти-фикатор группы (GID). Также в создаваемую группу могут быть добавлены выбран-ные пользователи. Редактирование состава группы выполняется с помощью кнопки[Свойства].

Для удаления группы из ОС требуется выделить группу и нажать кнопку[Удалить] на панели инструментов, при этом будет запрошено подтверждение вы-полнения операции.

Page 36: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

36ДВНБ.10001-01 34 01

7. УПРАВЛЕНИЕ ФУНКЦИОНИРОВАНИЕМ

Цикл функционирования ОС включает в себя:– процесс инициализации при включении оборудования;– штатный режим фоновой работы системных сервисов и служб;– режим интерактивной работы пользователя;– процесс сохранения данных и подготовка к выключению оборудования.Единицей функционирования системы является процесс ОС, характеризую-

щийся следующими свойствами:– исполняемым модулем, содержащим инструкции к исполнению;– собственным изолированным адресным пространством, предоставленнымядром ОС;– набором открытых объектов ОС (файлов, сокетов и других объектовмежпроцессного взаимодействия);– набором привилегий ОС;– информацией об учетной записи пользователя, от имени которого функцио-нирует процесс.ОС является многозадачной и представляет собой систему параллельных

взаимодействующих процессов с древовидной структурой. При этом каждый процессможет порождать дочерние, становясь для них родительским.

В процессе старты системы существует один системный процесс «init»,запускающий другие системные процессы, в т.ч. системные сервисы и сеансы работыпользователей, являясь, таким образом, общим прародителем всех процессов.

П р и м е ч а н и я:1.  Ядро ОС с помощью механизмов защиты страниц памяти и трансляции вир-туального адреса вфизический, гарантирует изоляцию собственных адресныхпространств процессов. При этом процесс не может несанкционированным об-разом получить доступ к адресному пространству других процессов, в том чис-ле и ядра ОС.2.  Управление функционированием процессов, распределением временимежду ними и организацией межпроцессного взаимодействия осуществляет-ся ядром ОС.

Page 37: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

37ДВНБ.10001-01 34 01

7.1. Получение информации и просмотр списка процессов

Для просмотра списка процессов ОС применяются следующие системныекоманды:

– ps— отображение снимка текущих процессов с информацией о них (в слу-чае запуска пользователем — выводятся только процессы текущей сессии);– pstree— отображение снимка дерева текущих процессов с информациейо них;– top — отображение процессов ОС в реальном времени с сортировкой потому или иному параметру, в том числе использованию процессора и другихресурсов ОС.Перечисленные команды обладают широким набором опций и параметров для

управления составом и видом отображаемой информации.Подробное описание команд приводиться в соответствующих страницах помо-

щи man ps, man tstree и man top.

7.2. Сигналы

За обработку сигналов отвечает непосредственно программная реализацияпроцесса за исключением сигналов SIGKILL и SIGSTOP, которые не могут быть пой-маны, блокированы или проигнорированы.

ВНИМАНИЕ! По умолчанию не обработанные процессом сигналы приводят кего принудительному завершению.

Для завершения процессов им посылается набор сигналов SIGHUP, SIGQUITи SIGTERM. Отправка процессу сигнала SIGKILL вызывает его принудительноезавершение. Сигналы процессам отправляются непосредственно ядром ОС в процес-се ее жизненного цикла функционирования, например при завершении работы.

Для отправки сигналов процессам (например, для их завершения) по инициа-тиве пользователя применяются системные команды kill и killall.

Команда kill отправляет заданный сигнал указанному процессу, а killallлибо всем процессам с таким именем, либо при указании пути — всем процессам,выполняющим указанный файл. Сигналы могут задаваться именем или значением сдефисом перед ними:

kill -KILL 6348

Page 38: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

38ДВНБ.10001-01 34 01

kill -9 6348

sudo killall -u test

По умолчанию отправляется сигнал SIGTERM.П р и м е ч а н и е. Без привилегий суперпользователя сигналы могут быть

отправлены пользователем только процессам, владельцем которых он является.Запуск процессов, продолжающих работать без связи с управляющим терми-

налом, возможен с помощью команды nohup. В этом случае вывод результатов рабо-ты программы может быть перенаправлен в указанный файл. При этом порожденныйпроцесс игнорирует посылаемый ему сигнал SIGHUP.

Управление процессами выполняется с помощью отправки им сигналов, основ-ные из которых приведены в таблице 3.

Т а б л и ц а 3Наименование Значение Описание

SIGHUP 1 Потеря соединения с управляющим терминаломSIGINT 2 Прерывание с клавиатурыSIGQUIT 3 Прекратить работу с клавиатуройSIGILL 4 Некорректная инструкция от процессораSIGABRT 6 Сигнал о прекращении работы, выданный процессомSIGFPE 8 Неправильная операция с плавающей запятойSIGKILL 9 Принудительное завершение работы процессаSIGSEGV 11 Некорректное обращение к памятиSIGPIPE 13 Запись в канале, не имеющем считывающих процессовSIGALRM 14 Сигнал таймераSIGTERM 15 Сигнал завершения работы процессаSIGCHLD 20, 17, 18 Дочерний процесс остановлен или прерванSIGCONT 19, 18, 25 Продолжить в случае остановкиSIGSTOP 17, 19, 23 Процесс остановлен

7.3. Системный менеджер — systemd

ВОС для управления сервисами применяется системный менеджер systemd,пришедший на замену используемого ранее механизма System V init. При этом приме-няется механизм ограничения привилегий и возможностей сервисов, что повышает за-

Page 39: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

39ДВНБ.10001-01 34 01

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

Системный менеджер systemd оперирует специально оформленными фай-лами конфигурации – юнитами (unit). Каждый юнит отвечает за отдельно взятуюслужбу, точку монтирования, подключаемое устройство, файл подкачки, виртуальнуюмашину и т.п. Существуют специальные типы юнитов, которые не несут функциональ-ной нагрузки, но позволяют задействовать дополнительные возможности systemd. Кним относятся юниты типа target, slice, automount и др. Поддерживается сле-дующие типы юнитов:

– .target — позволяет группировать юниты, воплощая концепцию уровнейзапуска (runlevel);– .service — отвечает за запуск сервисов (служб), также поддерживаетвызов интерпретаторов для исполнения пользовательских скриптов;– .mount— отвечает за монтирование файловых систем;– .automount — позволяет отложить монтирование файловых систем дофактического обращения к точке монтирования;– .swap— отвечает за подключение файла или устройства подкачки;– .timer— позволяет запускать юниты по расписанию;– .socket — предоставляет службам поддержку механизма сокет-активации;– .slice— отвечает за создание контейнера cgroups;– .device— позволяет реагировать на подключение устройств;– .path— управляет иерархией ФС.По сравнению с System V init systemd имеет следующие преимущества:– контроль состояния службы, реакция на изменения состояния;– сокет-активные и шина-активные службы, которые иногда приводят к лучше-му распараллеливанию взаимозависимых служб;– cgroups используется для отслеживания служебных процессов, вместоPID. Это означает, что демоны не будут потеряны даже после разветвленияв другие процессы.

Page 40: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

40ДВНБ.10001-01 34 01

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

– сокет-активация служб (заменяет inetd);– запуск сервисов по расписанию (заменяет cron);– работа с аппаратным сторожевым таймером (заменяет WatchDog);– смена корня ФС (заменяет chroot);– автомонтирование разделов дисков и сетевых ресурсов (заменяет mount иfstab).Юниты представляют собой специально созданные файлы конфигурации за-

пуска той или иной службы.Для управления службами в systemd применяется системная команда

systemctl. Просмотр журнала systemd выполняется с помощью системной коман-дой journalctl. Используемые для управления команды приведены в таблице 4.

Т а б л и ц а 4 – Основные команды управления сервисами менеджером systemdКоманда Описание

systemctl start <unit> Запуск юнитаsystemctl stop <unit> Остановка юнитаsystemctl restart <unit> Перезапуск юнитаsystemctl kill <unit> Принудительная остановка юнитаsystemctl status Отображение состояния службsystemctl show-environment Вывод окруженияsystemctl set-environment <param>=<value> Установка переменной окруженияsystemctl unset-environment <param> Удаление переменной окруженияsystemctl list-units Вывод списка известных юнитов

systemctl list-dependencies --allОтображение зависимостей междуюнитами

systemctl enable <unit> Включение юнита в автозагрузкуsystemctl disable <unit> Выключение юнита из автозагрузкиsystemctl mask <unit> Запретить запуск юнитаsystemctl unmask <unit> Разрешить запуск юнита

Page 41: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

41ДВНБ.10001-01 34 01

Окончание таблицы 4Команда Описание

journalctl -u <unit> Просмотр журнала запуска юнита

Используемые ранее в механизме System V init утилиты (service) и конфигу-рационные файлы (например в /etc/init.d/) поддерживаются ретроспективно.

7.4. Изменение состояния системы — shutdown, init

В каждый момент времени система находится на одном из восьми возможныхуровней выполнения. Каждое состояние определят особенности функционирования(см. таблицу 5).

Т а б л и ц а 5 – Уровни выполненияУровень Описание

0Остановка системы для безопасного отключения питание. Если возможно, требуетавтоматически выключить питание

1

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

2Многопользовательский режим. Запускаются все необходимые для работы многополь-зовательской среды процессы и службы

3Расширенный многопользовательский режим. Предоставляется доступ по сети клокальным ресурсам

4Альтернативная конфигурация многопользовательской среды. Не обязателен дляработы системы и обычно не используется

5Расширенный многопользовательский режим. Предоставляется доступ по сети клокальным ресурсам. Используется для графического входа

6Остановить операционную систему и перезагрузить ее в состояние, задаваемоезаписью initdefault в файле /etc/inittab

S, s

Однопользовательский режим. Единственный уровень выполнения, не требующий нали-чия файла /etc/inittab соответствующего формата. Все пользовательские процессыостанавливаются, а файловые системы, необходимые для многопользовательской рабо-ты, демонтируются. После этого доступ к системе возможен только с консоли

Останов, выключение и перезагрузка ОС выполняется с помощью измене-ния ее уровня выполнения. Для этой операции предназначены системные командыshutdown, init, halt, poweroff и reboot.

Page 42: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

42ДВНБ.10001-01 34 01

Команда shutdown используется как универсальный способ инициированияостанова, перезагрузки или возврата в однопользовательский режим. При указаниипаузы перед отработкой команды утилита посылает зарегистрированным пользова-телям через постепенно укорачивающиеся промежутки времени сообщения, преду-преждая их о приближающемся останове (по умолчанию в сообщениях указываетсявремя, оставшееся до останова).

Формат вызова команды:sudo shutdown [flags] time [warning-message]

где [warning-message] — посылаемое всем пользователям сообщение,time представляет собой время выполнения отключения системы.

Значение может быть также задано в формате +m, где m — количество миножидания до остановки системы. Значение +0 может быть заменено словом now.

В таблице 6 перечислены основные опции команды shutdown.

Т а б л и ц а 6 – Уровни выполненияОпция Описание

-H,--halt

Останов системы

-P,--poweroff

Выключение системы (по умолчанию)

-r,--reboot

Перезагрузка системы

-h Эквивалентно — poweroff, если не задано — halt

-k Послать предупреждение без реального завершения работы системы--no-wall Не посылать предупреждения

-сОтказаться от уже запущенного процесса завершения работы. Опция time приэтом не может быть использована

Системная командаinit применяется инициации перехода к заданному уров-ню выполнения. Системные команды halt, poweroff и reboot инициируют пе-реход к соответствующему уровню выполнения и являются альтернативой вызоваshutdown с соответствующей опцией, но могут содержать свои расширенные опции.

Page 43: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

43ДВНБ.10001-01 34 01

8. УПРАВЛЕНИЕ ФАЙЛОВОЙ СИСТЕМОЙ

Файловая система (ФС) определяет формат содержимого и способ физиче-ского хранения информации, сгруппированной в виде файлов и каталогов. Некото-рые ФС предоставляют сервисные возможности, например, разграничение доступаили шифрование файлов.

ФС не обязательно напрямую связана с физическим носителем информации.Существуют виртуальные ФС, а также сетевые ФС, которые являются лишь способомдоступа к файлам, находящимся на удаленном компьютере.

ОС поддерживает следующие типы ФС (состав может быть расширен с помо-щью дополнительного программного обеспечения):

– носители с произвольным доступом — ext2, ext3, ext4;– оптические носители — ISO9660, UDF;– виртуальные ФС— tmpfs, ramfs;Конкретная ФС перед использованием должна быть инициализирована и под-

ключена как часть общей ФС ОС.

8.1. Структура файловой системы

ФС имеет древовидную структуру, корень которой обозначается как «/».Относительно корня задаются абсолютные пути к файлам и каталогам.

Типовая структура ФС после установке ОС приведена в таблице 7. Отдель-ные элементы структуры ФС ОС могут размещаться на разных физических разделах,иметь разный тип, в том числе размещаться на удаленных сетевых ресурсах.

Т а б л и ц а 7 – Основные пути ФСПуть Описание

/ Корень ФС, размещается на основном системном разделе/bin Каталог исполняемых программ, доступных пользователю

/bootСодержит необходимые для загрузки системы файлы: ядра, загрузочный образinitrd, файлы загрузчика

/cdrom Временная точка монтирования оптических носителей/dev Каталог файлов устройств

/etcКаталог системных конфигурационныхфайлов, необходимых для работыОСи ее ком-понентов

Page 44: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

44ДВНБ.10001-01 34 01

Окончание таблицы 7Путь Описание

/home

Каталог домашних каталогов пользователей, в зависимости от назначения системы иколичества пользователей может размещаться на отдельном разделе или подключать-ся удаленно

/lib,/lib64

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

/mediaКаталог точек автоматического монтирования ФС, как правило носителей информа-ции и сетевых дисков

/mntКаталог точек временного ручного монтирования ФС, как правило носителей инфор-мации и сетевых дисков

/opt Каталог дополнительного ПО, повторяет структуру /usr

/procТочка монтирования виртуальной ФС, предоставляющей информацию о процессахОС

/root Домашний каталог суперпользователя/run Каталог файлов состояния приложений/sbin Каталог системных привилегированных программ/srv Каталог данных сервисных служб

/sysТочка монтирования виртуальной ФС sysfs, предоставляющей информацию оприсутствующих в системе устройствах и драйверах

/tmp

Каталог временных файлов, в зависимости от назначения системы может распола-гаться на отдельном носителе или размещаться в оперативном запоминающем устрой-стве (ОЗУ)

/usr Каталог пользовательских программ и данных, используемых только для чтения/var Каталог изменяемых данных, БД, файлы журналов и т.п.

8.2. Инициализация — mkfs

Инициализация ФС заключается в создании служебной структуры информа-ции об иерархии ее объектов в физической среде хранения. Структура зависит оттипа ФС и требует часть доступного физического пространства устройства хранения.

Для создания ФС предназначена утилита mkfs, имеющая формат вызова:sudo mkfs [-t fstype] [fs-options] device [size]

Данная команда является оболочкой для вызова утилиты инициализации,соответствующей указанному с помощью опции -t fstype типу ФС, напримерmkfs.ext4 (при mkfs -t ext4).

В качестве места создания ФС может быть указана любая точка ФС, как файл

Page 45: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

45ДВНБ.10001-01 34 01

блочного устройства ЖД (например, /dev/hda1), точка монтирования или дажесуществующий файл.

При этом с помощью дополнительных опций fs-options можно задать пара-метры, специфичные для выбранного типа ФС.

8.3. Монтирование и размонтирование — mount/umount

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

Доступ к подключенным ФС осуществляется с помощью обращений к катало-гу общей структуры каталогов ОС. Такой каталог называется точкой монтирования идолжен существовать на момент монтирования.

Просмотр информации по принадлежности каталога ФС может быть выполненс помощью команды df, например:

df -h

При этом будет выведен состав каталогов первого уровня с указанием типовФС, их размеров и используемого места в удобочитаемом виде.

При монтировании ФС в каталог, уже содержащий файлы, доступ к ним будетневозможен до размонтирования.

Для монтирования ФС предназначена команда mount, имеющая обобщенныйформат вызова:

sudo mount [options] [-t fstype] [-o fs-options] device

dir↪→

где: fstype— тип ФС;device— устройство;dir— точка монтирования (существующий каталог).Тип ФС указывается с помощью опции fstype.Для неподдерживаемых самой командой типовФС, она вызывает соответству-

ющую указанному с помощью опции -t fstype типу ФС утилиту монтирования,например mount.ext4 (при mount -t ext4).

Page 46: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

46ДВНБ.10001-01 34 01

Команда mount предоставляет широкий функционал по операциям, связан-ным с монтированием ФС:

– монтирование ФС;– перемонтирование ФС с другими опциями и режимами доступа;– перемонтирование каталога ФС в другое место (создание синонима длякаталога);– изменение режима работы точки монтирования.Список часто используемых опций команды приведен в таблице 8.

Т а б л и ц а 8 – Часто используемые опции команды mountОпция Описание

-a, --all Подключить все ФС, перечисленные в /etc/fstab

-f, --fake Имитация подключение ФС. Выполняются все действия, кроменепосредственно монтирования

--bind Создание синонима для каталога-i,--internal-only

Использовать только поддерживаемые командой типы ФС безвызова внешних обработчиков

-n, --no-mtab Не фиксировать факт подключения в файле /etc/mtab-o <опции>,--options <опции>

Специфичные для конкретного типа ФС параметры, разделенныезапятой

-O,--test-opts <опции>

Используется с -a для ограничения списка ФС

-r, --read-only Подключение в режиме только для чтения, аналог -o-t <тип>, --types <тип> Список типов подключаемых ФС--source <источник> Явное указание источника--target <цель> Явное указание точки монтирования-v, --verbose Подробный отчет о выполняемых действиях-w, --rw, --read-write Подключение в режиме чтения/записи (по умолчанию)-h, --help Справка по способу вызова и опциям команды

Информация по монтируемым ФС отображается в специальном системномфайле динамической конфигурации ФС /etc/mtab. При выполнении командыmount информация о монтировании ФС отражается в этом файле, если это неотключено специально.

ВНИМАНИЕ! Монтирование произвольных ФС доступно только суперполь-

Page 47: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

47ДВНБ.10001-01 34 01

зователю. пользователь имеет возможность выполнить с помощью этой командытолько операции, свойства которых заданы в файле статической конфигурации ФС/etc/fstab с опцией user.

Подключенные ФС могут быть отключены или могут отключаться автоматиче-ски. Ручное отключение требуется перед физическим изъятием носителя, напримерUSB-флешка, или при необходимости выполнить профилактическое обслуживание,например проверки и восстановления с помощью команды fsck.

СетевыеФСмогут отключаться в случае потери связи с удаленным источником.Перед отключениемФСзавершить все работающие с ней процессы (например,

выйти из каталога точки монтирования).ВНИМАНИЕ! ФС не может быть отключена, если существуют процессы, об-

ращающиеся к принадлежащим ей файлам (держат открытыми дескрипторы). В этомслучае ФС считается занятой («busy»), и может быть отключена либо принудительно,либо с опцией отложенного отключения.

Для определения занимающих ФС процессов может быть использована слу-жебная команда fuser, например:

fuser -v <каталог>

При этом будет выведен список файлов и идентификаторов процессов, кото-рые их открыли.

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

Для отключения (размонтирования) подключенный ФС предназначена коман-да umount, имеющая следующий обобщенный формат вызова:

sudo umount [options] {<directory>|<device>}

где в качестве аргумента может указываться устройство или точка монтирова-ния.

Для размонтирования и освобождения ФС подключенных сменных носителейинформации предназначена команда eject.

Список часто используемых опций команды приведен в таблице 9.

Page 48: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

48ДВНБ.10001-01 34 01

Т а б л и ц а 9 – Часто используемые опции команды umountОпция Описание

-a, --all Отключить все ФС, перечисленные в /etc/mtab, за исключениемвиртуальной ФС /proc

--fakeИмитация отключения ФС. Выполняются все действия, кроме непо-средственно размонтирования

-f, --force Принудительное отключение ФС

-i, --internal-only Использовать только поддерживаемые командой типы ФС без вызо-ва внешних обработчиков

-l, --lazy Отложенное отключение занятых ФС после их освобождения-n, --no-mtab Не фиксировать факт отключения в файле /etc/mtab-O,--test-opts <опции>

Используется с -a для ограничения списка ФС

-R, --recursive Рекурсивное отключение ФС

-r, --read-only В случае неудачи отключения ФС, переподключение в режиме толь-ко для чтения

-t <тип>, --types <тип> Список типов отключаемых ФС-v, --verbose Подробный отчет о выполняемых действиях-h, --help Справка по способу вызова и опциям команды

8.4. Конфигурация файловой системы — fstab

Для описания автоматически подключаемых ФС предназначен системныйконфигурационный файл /etc/fstab.

Статическая конфигурация ФС содержит информацию о подключении необ-ходимых для функционирования ОС ФС и ФС для автоматического монтирования.При этом указывается их назначение, точки и опции монтирования.

Каждая строка файла имеет следующий формат (поля разделяются пробеломили табуляцией и описаны в таблице 10):

<file system><dir><type><options><dump><pass>

Т а б л и ц а 10 – Описание конфигурационного файла /etc/fstabПоле Описание

file system Имя ФС или файла устройства, может содержать UUID раздела жесткого диска

dirТочка монтирования в ФС, может указываться none для системных ФС илифайлов подкачки

Page 49: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

49ДВНБ.10001-01 34 01

Окончание таблицы 10Поле Описание

type Тип ФС

options

Опциимонтирования через запятую без пробелов, значениеdefaults определяетопции по умолчанию. Состав опций зависит от типа ФС и может включать следую-щие:– auto— автоматическое монтирование (или по mount -a);– noauto— только ручное монтирование;– exec— исполнять файлы с ФС (по умолчанию);– ro (rw) — режим только для чтения (чтения/записи);– sync (async) — синхронное (асинхронное) выполнение операций;– user — разрешение монтировать пользователем (включает noexec, nosuid,nodev— если они не переопределены);– nouser— монтирование только суперпользователем (по умолчанию);– defaults—опции по умолчанию (rw, suid, dev, exec, auto, nouser, async);– suid (nosuid) — использование (запрет) операций с suid и sgid битами;– nodev— запрет использования файлов устройств;– atime (noatime) — включает (выключает) запись времени доступа;– size – задание размера файловой системы (только для tmpfs).

dumpФлаг резервного копирования утилитой dump, если 1 — выполняется резервноекопирование, по умолчанию — 0

pass

Порядок проверки целостности ФС при загрузке командой fsck:– 0— не проверять;– 1— корневая ФС;– 2— остальные ФС.

В тексте могут использоваться комментарии стандартного вида с начальнымсимволом «#».

8.5. Проверка и исправление — fsck

Для проверки целостности и исправления ошибок на ФС предназначенасистемная команда fsck, имеющая следующий обобщенный формат вызова:

sudo fsck [options] [-t fstype] [filesys … ] [--]

[fs-specific-options]↪→

где:– fstype— тип ФС;– filesys— точка монтирование или файл устройства;– fs-specific-options— специфичные для типа ФС опции.

Page 50: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

50ДВНБ.10001-01 34 01

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

ВНИМАНИЕ! Для возможности исправления требуется монопольный доступ кФС. Перед выполнением команды fsckФС должна быть размонтирована.

В таблице 11 приведены основные опции команды fsck.

Т а б л и ц а 11 – Основные опции команды fsckОпция Описание

-A Проверить все ФС, перечисленные в /etc/fstab-M Не проверять примонтированные ФС-N Эмуляция без реального применения на ФС-P Используется с -A для указания проверки корневой ФС-R Используется с -A для исключения проверки корневой ФС-s Сериализация операций-t <тип> Список типов проверяемых ФС-V Подробный отчет о выполняемых действиях-h, --help Справка по способу вызова и опциям команды

В качестве специфичных типу ФС опций зачастую используются следующие:– -a — автоматическое исправление выявленных проблем без запроса под-тверждения у пользователя;– -n — отключение исправления выявленных проблем, вывод только инфор-мации о них;– -r — интерактивный режим исправления выявленных проблем с запросомподтверждения у пользователя;– -y—вомногих случая указывает автоматически исправлять все выявленныеошибки.Код, возвращаемый командой fsck, является суммой следующих условий:– 0— нет ошибок;– 1— ошибки ФС исправлены;– 2— необходима перезагрузка системы;– 4— ошибки ФС не исправлены;– 8— в процессе проверки произошли ошибки;

Page 51: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

51ДВНБ.10001-01 34 01

– 16— неверное использование команды либо синтаксическая ошибка;– 32— fsck была прервана пользователем;– 128— ошибка разделяемых объектов.При загрузке системы выполняется проверкаФСсогласно опциям статической

конфигурации ФС в /etc/fstab.

Page 52: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

52ДВНБ.10001-01 34 01

9. УПРАВЛЕНИЕ ПРОГРАММНЫМИ ПАКЕТАМИ

9.1. Установка и удаление пакетов

ВНИМАНИЕ!Операции по установке и удалению пакетов разрешено произво-дить только администратору.

Для выполнения операций по управлению пакетами с автоматическим разре-шением зависимостей при наличии доступа к сетевым или источникам пакетов, исполь-зуется группа команд apt.

Информация о сетевых и локальных архивах пакетов для комплекса программapt содержится в файле /etc/apt/sources.list. В этом файле находится спи-сок источников пакетов, который используется программами для определения место-положения архивов. Список источников разрабатывается для поддержки любого ко-личества активных источников и различных их видов. В данном файле перечисляетсяпо одному источнику на строку, где источники следуют в порядке убывания их прио-ритета.

Описание файла /etc/apt/sources.list приведено вman sources.list.

Пример файла sources.list:deb cdrom:[delta-1.0-main]/ delta contrib main non-free

deb ftp://192.168.32.1/delta/mounted-iso-main delta main

contrib non-free↪→

При установке ОС с дистрибутива строка deb cdrom... автоматически за-писывается в этот список.

Включить эту строку в данный список можно также при помощи команды:apt-cdrom add

DVD-диск с дистрибутивом ОС при этом должен находиться в устройстве чте-ния DVD-дисков (монтировать его не обязательно).

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

Установка и удаление пакетов с автоматическим разрешением зависимостейпроизводится командой apt-get.

Для установки пакета требуется ввести следующую команду:

Page 53: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

53ДВНБ.10001-01 34 01

sudo apt-get install <имя_пакета>

Для удаления пакета используется следующая команда:sudo apt-get remove <имя_пакета>

Описание наиболее часто используемых команд приведено в таблице 12.

Т а б л и ц а 12Команда Описание

apt-cdrom add Добавить источник пакетов с подключенного носителя DVDapt-get update Обновить информацию о доступных для установки пакетовapt-get upgrade Выполнить обновление установленных пакетовapt-get dist-upgrade Обновление старой версии ОС до новойapt-get install <пакет> Выполнить установку указанного пакетаapt-get remove <пакет> Удалить пакет (с сохранением файлов его настройки)apt-get purge <пакет> Удалить пакет (без сохранения файлов его настройки)

Для управления пакетами локально, без разрешения зависимостей, можетбыть использована команда dpkg. Детальное описание данной команды доступно встранице помощи man dpkg.

Подробное описание команд apt-cache и apt-get приведено в соответ-ствующих страницах man.

9.2. Порядок получения обновлений

Источником оповещения о наличие обновлений или обновлениях безопасно-сти является официальный сайт разработчика ОС https://нппкт.рф/. На сайте в со-ответствующем разделе https://нппкт.рф/produkty/bazovaia-operatsionnaia-sistema-os-osnova размещается информация об обновлениях в одном из следующих видов:

– руководство (инструкция) по проведению при эксплуатации ОС обязатель-ных организационно-технических мероприятиях;– файлы программ с руководством (инструкцией) по их установке и настройке,сопровождаемые сведениями о контрольных суммах для всехфайлов обновле-ния безопасности;– пакетов программ (набора пакетов программ) с руководством (инструкцией)по их установке и настройке, сопровождаемые сведениями о контрольных сум-

Page 54: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

54ДВНБ.10001-01 34 01

мах для всех файлов обновления безопасности;– руководство (инструкция) по настройке и эксплуатации ОС с установленны-ми обновлениями безопасности.Потребители оповещаются о наличии обновления безопасности и порядке его

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

9.3. Установка обновлений безопасности

Для установки обновлений безопасности, поставляемого в виде репо-зитория пакетов, требуется зарегистрировать его в файле списка источников/etc/apt/sources.list согласно указаниям раздела 9.1, после чего выполнитькоманду:

sudo apt-get dist-update

Для установки обновлений безопасности ввести команду:sudo apt-get upgrade

В некоторых случаях для обновления безопасности может потребоваться вы-полнить команду:

sudo apt-get dist-upgrade

Page 55: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

55ДВНБ.10001-01 34 01

10. УПРАВЛЕНИЕ УСТРОЙСТВАМИ

10.1. Типы устройств

В ОС существует два типа устройств: блочные с прямым доступом (например,ЖД) и символьные (например, последовательные порты), некоторые из них могут бытьпоследовательными, а некоторые – с прямым доступом. Каждое поддерживаемоеустройство представляется в ФС файлом устройства. При выполнении операцийчтения или записи с подобным файлом происходит обмен данными с устройством, накоторое указывает этот файл. Такой способ доступа к устройствам позволяет не ис-пользовать специальные программы (а также специальные методы программирова-ния, такие как работа с прерываниями).

Так как устройства отображаются какфайлы вФС (в каталоге\dev), их можнообнаружить с помощью команды ls. После выполнения команды:

ls -l

На экран монитора выводится список файлов, причем в первой колонке содер-жится тип файла и права доступа к нему. Например, для просмотра файла, соответ-ствующего звуковому устройству, используется следующая команда:

ls -l /dev/dsp

crw-rw---T+ 1 root audio 14, 3 Июл 1 13:05 /dev/dsp

Первый символ в первой колонке (c) показывает тип файла, в данном случае –символьное устройство. Для обычных файлов используется символ «-» (дефис), длякаталогов - d, для блочных устройств - b (описание команды приведено в man ls).

Наличие большого количества файлов устройств не означает, что эти устрой-ства на самом деле установлены. Наличие файла /dev/sda ни о чем не говорит исовсем не означает, что на компьютере установлен ЖД SCSI. Это предусмотрено дляоблегчения установки программ и нового оборудования (нет необходимости искатьнужные параметры и создавать файлы для новых устройств).

10.2. Управление разделами

Для управления разделами дисков в состав ОС включены ПС gparted,parted, fdisk, cfdisk, sfdisk.

Утилитыparted,fdisk,cfdisk,sfdisk не имеют графического интерфей-са, утилита gparted является графической оболочкой к программе parted. Для со-

Page 56: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

56ДВНБ.10001-01 34 01

здания файловой системы используется графическая утилита gparted или консоль-ная утилита mkfs.

10.3. Программная организация разделов в RAID

Для управления программными RAID-массивами используется утилита mdadm,реализующая программный RAID-массив различных типов.

Page 57: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

57ДВНБ.10001-01 34 01

11. УПРАВЛЕНИЕ ФУНКЦИЯМИ БЕЗОПАСНОСТИ

Средства защиты информации реализуют следующие функции ОС по защитеот НСД:

– идентификацию и аутентификацию (п. 11.2);– дискреционное управление доступом (п. 11.3);– защиту памяти (п. 11.4);– регистрацию событий (п. 11.5);– изоляцию модулей (п. 11.6);– очистку памяти (п. 11.7);– контроль целостности (п. 11.8).Реализация функций основана на следующих положениях:– каждому пользователю соответствует идентификатор пользователя (UID).Уникальный числовой ключ к соответствующей записи в БД пользователей. БДпользователей управляется системным администратором и содержит инфор-мацию о пользователях;– каждый пользователь входит, по меньшей мере, в одну группу. Группа – этосписок пользователей системы, имеющий собственный идентификатор (GID).Одному UID может соответствовать несколько GID;– каждому процессу в системе соответствует UID запустившего его пользо-вателя. Процесс, порожденный другим процессом, наследует его UID. Послеидентификации и аутентификации пользователя в системе порождается пер-вый процесс пользователя. Таким образом, все процессы пользователя будуиметь его UID. При обращении процесса к защищаемым объектам доступ осу-ществляется на основании дискреционных правил разграничения доступа иуровней конфиденциальности и категорий.

11.1. Механизмы реализации средств защиты информации

Linux Security Modules (LSM) это встроенный механизм ядра Linux предназна-ченный для интеграции в ядро различных моделей безопасности, расширяющих ба-зовую дискреционную модель доступа. Для реализации функций СЗИ используетсяфреймворк LSM.

Page 58: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

58ДВНБ.10001-01 34 01

Архитектура LSM технически заключается в установленных в ядре ОС хуках.Хуки расположены во всех местах, где может понадобиться принятие решений о до-ступе к тем или иным объектам, и предоставляют интерфейс для внедрения собствен-ных обработчиков. Количество хуков составляет порядка двух сотен, что позволяетсоздавать гибкие реализации СЗИ.

К ядру ОС применен набор патчей, который модифицирует механизмыработы с памятью и затрудняет или делает невозможной реализацию программ,основанных на ошибках ПО, которые позволяют получить доступ на произвольное чте-ние/запись в адресном пространстве процесса.

Механизмы, обеспечивающие выполнение правил разграничения доступа, ре-ализованы в ядре ОС. Вследствие этого механизмы корректно функционируют прииспользовании любых компонентов ОС.

Для описания механизмов защиты используются следующие понятия:– субъекты доступа: пользователи;– объекты доступа: файлы, механизмы межпроцессного взаимодействия,устройства, сокеты, сетевые пакеты;– типы доступа: чтение, запись, исполнение.

11.2. Идентификация и аутентификация

Функция идентификации и аутентификации пользователей в ОС основывает-ся на использовании механизма подключаемых модулей аутентификации PluggableAuthentication Modules (PAM).

PAM представляют собой набор разделяемых библиотек (т.н. «модулей»), спомощью которых системный администратор может организовать процедуру аутен-тификации (подтверждение подлинности) пользователей прикладными программами.Каждый модуль реализует собственный механизм аутентификации. Изменяя набор ипорядок следования модулей, можно построить сценарий аутентификации.

Подобный подход позволяет изменять процедуру аутентификации без измене-ния исходного кода и повторного компилирования PAM.

Сценарии аутентификации (т. е. работа этихфункций) описываются в конфигу-рационном файле /etc/pam.conf и в конфигурационных файлах, расположенныхв каталоге /etc/pam.d/. Сама аутентификация выполняется с помощью PAM.

Page 59: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

59ДВНБ.10001-01 34 01

Модули располагаются в каталогах /lib/x86_64-linux-gnu/security и/lib/security в виде динамически загружаемых объектных файлов.

В ОС существуют следующие системные файлы учетных записей:– /etc/passwd— учетные записи пользователей;– /etc/group — учетные записи групп с указанием членства в них пользо-вателей;– /etc/shadow, /etc/gshadow — недоступные для чтения непривилеги-рованным пользователям скрытые части учетных записей (пароли).В процессе управления учетными записями наряду с созданием каталогов

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

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

– управление учетными записями пользователей (adduser/deluser);– изменение атрибутов учетной записи пользователя (usermod/chfn/chfs);– управление учетными записями групп (addgroup/delgroup);– изменение атрибутов и состава пользователей группы (gpasswd).Выполнение указанных действий см. п. 6.Управление параметрами аутентификации включает административные дей-

ствия:– установка пароля пользователя (passwd) п. 11.2.1;– настройка срока действия пароля пользователя (chage) п. 11.2.2;– настройка блокировки учетной записи пользователя (usermod, passwd)п. 11.2.3;– учет неуспешных попыток входа в систему (faillog) п. 11.2.4.ВНИМАНИЕ! Выполнение указанных действий требует прав администратора.

11.2.1. Установка пароля пользователя — passwd

Изменение пароля пользователя выполняется с помощью утилиты passwd.Смена пароля может выполняться по инициативе пользователя после истече-

ния его времени действия или прямой установкой или сбросом администратором.Вызов команды passwd запускает сценарий смены пароля для текущего поль-

Page 60: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

60ДВНБ.10001-01 34 01

зователя. Для изменения пароля конкретного пользователя требуются права админи-стратора.

Формат вызова команды:sudo passwd <пользователь>

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

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

Данная команда модифицирует файл /etc/shadow, сохраняя в нем зашиф-рованное представление нового пароля.

ВНИМАНИЕ!Пароль рекомендуется создавать способоммаксимально затруд-няющим его подбор.

ВНИМАНИЕ! Пароль хранится в зашифрованном виде, что исключает его вос-становление путем напоминания. Единственным способом восстановления являетсяустановка нового пароля.

11.2.2. Настройка срока действия пароля пользователя — chage

Команда chage используется для изменения информации об истечении срокадействия пароля пользователя. Он позволяет просматривать информацию о стартеучетной записи пользователя, изменять количество дней между изменениями пароляи датой последнего смены пароля. После того, как установлен срок действия пароляи устаревания, эта информация используется системой для определения того, когдапользователь должен изменить свой пароль.

Формат вызова команды:sudo chage [опции] <пользователь>

Список наиболее часто используемых опций приведен в таблице 13.

Page 61: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

61ДВНБ.10001-01 34 01

Т а б л и ц а 13 – Опции команды chageОпция Описание

-E, --expiredate ДАТАУстановить дату окончания действия пароля (в формате ГГГГ-

ММ-ДД)

-I, --inactive КОЛ_ДНЕЙУстановить неактивность пароля после устаревания в значениеКОЛ_ДНЕЙ

-m, --mindays МИН_ДНЕЙ Установить минимальное число дней перед сменой пароля-M, --maxdays МАКС_ДНЕЙ Установить максимальное число дней перед сменой пароля

-W, --warndays ДНЕЙУстановить количество дней с выдачей предупреждения о необ-ходимости смены пароля

11.2.3. Настройка блокировки учетной записи пользователя — usermod,passwd

Блокировка учетной записи может быть произведена следующими способами:– ограничением срока жизни учетной записи;– сбросом пароля пользователя;– блокировкой пароля пользователя.Ограничение срока жизни учетной записи производится командой usermod.Формат вызова команды:sudo usermod --expiredate <дата> <пользователь>

В указанной команде дата указывается в формате ГГГГ-ММ-ДД.Если необходимо выполнить блокировку учетной записи немедленно, то в

качестве даты указывается 0.Если требуется сделать учетную запись бессрочной — -1.Операции сброса пароля пользователя и его блокировка осуществляется с

помощью команды passwd.Для сброса пароля ввести:sudo passwd --delete <пользователь>

Для блокировки пароля ввести:sudo passwd --lock <пользователь>

Для разблокировки пароля используется следующая команда:sudo passwd --unlock <пользователь>

Page 62: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

62ДВНБ.10001-01 34 01

11.2.4. Регистрация неуспешных попыток входа в систему — faillog

В случае ввода неверного пароля производится запись о факте неуспешноговхода в систему в журнал неудачных попыток /var/log/faillog.

Команда faillog показывает содержимое журнала неудачных попыток(файл /var/log/faillog) входа в систему. Также она может быть использова-на для управления счетчиком неудачных попыток и их ограничением. При запускеfaillog без параметров выводятся записи faillog только тех пользователей, укоторых имеется хотя бы одна неудачная попытка входа. Предельное число попытоквхода для каждой учетной записи равно 10. Для сброса неудачных попыток входаприменяется опция -r.

11.3. Дискреционное управление доступом

Для организации дискреционного доступа используются базовые механизмыLinux. Они представляют из себя комбинациюматрицыдоступов и списков управлениядоступов ACL.

Дискреционный контроль осуществляется для всех объектов файловойсистемы. Каждому именованному объекту при создании сопоставляется UID и GIDсубъекта системы, который имеет права распоряжаться объектом. Разделяются тривида доступа: чтение (read,r), запись (write,w), исполнение (execute,e). Субъек-ты производящие доступ относят к одному из трех классов: пользователя-владельца,группы-владельца и всех остальных. Объекту сопоставляется битовая маска из 9 эле-ментов, по три для каждого класса. Если соответствующий бит выставлен в 1 то этотвид доступа для этого класса разрешен, в противном случае доступ запрещен.

При обращении процесса к объекту система проверяет соотношение UID и GIDпроцесса сUID иGID объекта и выносит решение о доступе на основании того к какомуклассу относится процесс.

Дискреционные права доступа к объекту могут быть изменены владельцем это-го объекта.

Дополнительно к битовой маске существует специальные биты: SUID, SGID,Sticky.

SUID— Set User ID бит смены идентификатора пользователя. Когда пользо-ватель или процесс запускает исполняемый файл с выставленным битом SUID, то по-

Page 63: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

63ДВНБ.10001-01 34 01

рожденный процесс получает UID владельца файла. Таким образом осуществляетсявозможность запуска файла с правами другого пользователя.

SGID—Set Group ID бит смены идентификатора группы аналогично SUID.Sticky bit— используется для каталогов, чтобы защитить в них файлы от

удаления. Если пользователь не является владельцем каталога, то он может удалитьтолько те файлы, владельцем которых он является. Примером может служить каталог/tmp, в который запись открыта для всех пользователей, но нежелательно удалениечужих файлов.

В дополнение к битовой маске, на основании расширенных атрибутов файло-вых систем, используются списки контроля доступа ACL. С их использование можнодополнительно задавать права доступа субъектов к объекту.

ACL состоит из набора записей. Минимальный ACL включает в себя три запи-си для пользователя-владельца, группы-владельца и всех остальных. Дополнительномогут указываться права доступа для других именованных субъектов. В общем случаев ACL могут присутствовать записи следующих типов:

– пользователь-владелец (user::rwx);– именованный пользователь (user:user_name:rwx);– группа-владельца (group::rwx);– именованная группа (user:group_name:rwx);– все остальные (other::rwx);– маска доступа (mask::rwx).Маска доступа используется для ограничения прав доступа именованных поль-

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

Субъект может выполнять проверкуфайла или каталога в следующем порядке:1) Используются права владельца, если субъект им является.2) Используются права, указанные конкретно для этого субъекта.3) Используются права для группы владельца.4) Проверяется разрешение действия хотя бы для одной из группы, в которуювходит пользователь.5) Если пользователь не входит ни в одну группу описанную в ACL, то исполь-

Page 64: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

64ДВНБ.10001-01 34 01

зуются права для other.Решение о доступе принимается на основании первой подошедшей записи

ACL.Управление ПРД обеспечивается следующими командами:– chown— изменение владельца (п. 11.3.1);– chmod— изменение прав доступа (п. 11.3.2);– setfacl— изменение ACL (п. 11.3.3).

11.3.1. Изменение владельца — chown

Команда chown изменяет владельца и/или группу для каждого заданногофайла.

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

Формат вызова:chown [OPTION]... OWNER[:[GROUP]] FILE...

chown [OPTION]... :GROUP FILE...

chown [OPTION]... --reference=RFILE FILE...

Описание опций команды chown приведены в таблице 14.

Т а б л и ц а 14 – Опции команды chownОпция Описание

-c, --changes Подробно описывать действия для каждого файла,чьи права действительно изменяются

--dereference

Изменить владельца файла, на который указыва-ет символьная ссылка, вместо самой символьнойссылки

-h, --no-dereference Работать с самими символьными ссылками, а не сфайлами, на которые они указывают

Page 65: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

65ДВНБ.10001-01 34 01

Окончание таблицы 14Опция Описание

--from= CURRENT_OWNER:CURRENT_GROUP

Изменить владельца и/или группу каждого файла,только если текущий владелец и/или группа сов-падает с CURRENT_OWNER:CURRENT_GROUP. Какгруппа, так и владелец могут быть опущены, в этомслучае совпадение для данного атрибута не обяза-тельно

-f, --silent, --quiet Не выводить сообщения об ошибках на файлы, чейвладелец не может быть изменен

--reference=RFILE

Вместо заданных значений OWNER:GROUP исполь-зовать владельца и группу файла, которые имеютRFILE

-R, --recursive Рекурсивно изменять владельца каталогов и всегоих содержимого

--help Вывести справку и выйти--version Вывести информацию о версии и выйти

11.3.2. Изменение прав доступа — chmod

Команда chmod изменяет права доступа каждого указанногофайла в соответ-ствии с правами доступа, указанными в параметре режим, который может быть пред-ставлен как в символьном виде, так и в виде восьмеричного числа, представляющегобитовую маску новых прав доступа.

Формат вызова:chmod [опции] режим файл...

Формат символьного режима:chmod [ugoa...][[+-=][rwxXstugo...]...][,...]

Каждый аргумент — это список символьных команд изменения прав досту-па, разделенных запятыми. Каждая такая команда начинается с нуля или более буквugoa, комбинация которых указывает, чьи права доступа к файлу будут изменены:

– пользователя, владеющего файлом (u);– других пользователей в данной группе (g);– других пользователей, не входящих в данную группу (o) или же всех пользо-вателей (a). Буква a эквивалентна ugo. Если не задана ни одна буква, то авто-матически будет использоваться буква a, но биты, установленные в umask, небудут затронуты.

Page 66: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

66ДВНБ.10001-01 34 01

Оператор + добавляет выбранные права доступа к уже имеющимся у каждогофайла; - удаляет эти права; а = присваивает только эти права каждому указанномуфайлу.

Буквы rwxXstugo выбирают новые права доступа для пользователя, задан-ного одной из букв ugoa:

– чтение (r);– запись (w);– выполнение или доступ к каталогу (x);– выполнение, если файл является каталогом или уже имеет право на выпол-нение для какого-нибудь пользователя (X);– setuid- или setgid-биты (s);– sticky-бит (t);– установка для остальных таких же прав доступа, которые имеет пользова-тель, владеющий этим файлом (u);– установка для остальных таких же прав доступа, которые имеет группа фай-ла (g);– установка для остальных таких же прав доступа, которые имеют остальныепользователи, не входящие в группу файла (o).Установка sticky-бита для каталога, приводит к тому, что только владелец

файла и владелец этого каталога могут удалять этот файл из каталога.Числовой режим состоит из не более четырех восьмеричных цифр (от нуля до

семи), которые складываются из битовых масок4,2 и1. Любые пропущенные разрядыдополняются лидирующими нулями.

Первая цифра выбирает установку идентификатора пользователя (setuid)(4) или идентификатора группы (setgid) (2) или sticky-бита (1).

Вторая цифра выбирает права доступа для пользователя, владеющего даннымфайлом: чтение (4), запись (2) и выполнение (1).

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

Четвертый разряд выбирает права доступа для остальных пользователей (невходящих в данную группу), опять с тем же смыслом.

Page 67: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

67ДВНБ.10001-01 34 01

ВНИМАНИЕ! chmod не изменяет права на символьные ссылки.Подробное описание команды chown приведено в странице помощи

man chmod.

11.3.3. Изменение ACL — setfacl

Изменение ACL файлов производится командой setfacl.Формат вызова команды:setfacl [-bkndRLP] { -m|-M|-x|-X ... } файл ...

Опции команды setfacl приведены в таблице 15.

Т а б л и ц а 15 – Опции команды setfaclОпция Описание

-m, --modify=acl Изменить текущий ACL для файла-M, --modify-file=file Прочитать записи ACL для модификации из файла-x, --remove=acl Удалить записи из ACL файла-X, --remove-file=file Прочитать записи ACL для удаления из файла-b, --remove-all Удалить все расширенные записи ACL-k, --remove-default Удалить ACL по умолчанию--set=acl Установить ACL для файла, заменив текущий ACL--set-file=datei Прочитать записи ACL для установления из файла--mask Пересчитать маску эффективных прав

-n, --no-mask

Не пересчитывать маску эффективных прав, обычно setfacl пере-считывает маску (кроме случая явного задания маски) для того, чтобывключить ее в максимальный набор прав доступа элементов, на кото-рые воздействует маска (для всех групп и отдельных пользователей)

-d, --default Применить ACL-по умолчанию-R, --recursive Для подкаталогов рекурсивно

-L, --logical Следовать по символическим ссылкам, по умолчанию ссылки, не ука-занные в командной строке, игнорируются

-P, --physical Не следовать по символическим ссылкам, даже если они указаны вкомандной строке

Page 68: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

68ДВНБ.10001-01 34 01

Окончание таблицы 15Опция Описание

--restore=file

Восстановить резервную копию прав доступа, созданную командойgetfacl -R или ей подобной. Все права доступа дерева каталоговвосстанавливаются, используя этот механизм. Если вводимые дан-ные содержат элементы для владельца или группы-владельца и ко-манда setfacl выполняется пользователем с именем root, то вла-делец и группа-владелец всехфайлов также восстанавливаются. Этаопция не может использоваться совместно с другими опциями, за ис-ключением опции --test

--test Режим тестирования (ACL не изменяются)--help Вывести справку и выйти--version Вывести информацию о версии и выйти

Команда getfacl используется для получения владельца, группы-владельцаи ACL для каждого файла, указанного в аргументах команды. Если каталог имеет ACLпо умолчанию, то getfacl выводит также ACL по умолчанию. Файлы не могут иметьACL по умолчанию.

Формат вызова команды:

getfacl [-dRLP] файл ...

Подробное описание команды getfacl описано в man getfacl.

11.4. Защита памяти

В состав ОС входит ядро, к которому применен набор изменений, который яв-ляется средством ограничения прав доступа к страницам памяти и предотвращает вы-полнение произвольного кода, посредством контроля доступа (чтение, запись, испол-нение и их комбинации) к сегментам памяти в адресном пространстве процесса на ос-нове использования аппаратной реализации в процессоре неисполняемого бита. Приэтом комбинация типов доступа, запись и исполнение запрещена.Таким образом, ОСобеспечивает защиту исполняемого кода в адресном пространстве процесса, предо-ставляя наименьшие привилегии процессам при доступе к сегментам памяти в соб-ственном адресном пространстве:

– запрет создания сегментов памяти, доступных одновременно для исполне-ния и записи;– запрет перемещения сегмента кода;

Page 69: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

69ДВНБ.10001-01 34 01

– запрет создания исполняемого стека;– рандомизацию адресного пространства процесса;– запрет создания исполняемых областей памяти в СПО и ПО.Набор изменений устанавливает для сегментов данных процессов атрибуты,

обеспечивающие невозможность их исполнения, а для сегментов кода программ –атрибуты, обеспечивающие невозможность записи в них. При этом применяется ме-ханизм PAGEEXEC, который использует эмуляцию или аппаратную реализацию NX-бита. При наличии аппаратной реализации NX-бита, механизм PAGEEXEC использу-ет ее вместо эмуляции, обеспечивая отсутствие снижения производительности. Наборизменений гарантирует, что адреса с произвольным доступом не будут одновременнодоступны на запись и выполнение. Гарантия реализуется использованием в функцииmprotect() безопасного механизма защиты памяти MPROTECT.

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

Синтаксис:paxctl <опции><файлы>

11.5. Регистрация событий

Подсистема регистрации событий представляет собой службу (auditd), фик-сирующую события системных вызовов ядра ОС и классифицирующих их в зависимо-сти от контекста появления:

– task— события, связанные с созданием новых процессов;– entry— события, которые имеют место при входе в системный вызов;– exit— события, которые имеют место при выходе из системного вызова;– user — события, использующие параметры пользовательского простран-ства.

Page 70: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

70ДВНБ.10001-01 34 01

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

– надежная метка времени;– тип события;– результат события (успех или отказ).Состав полей события может отличаться в зависимости от его типа, напри-

мер, при регистрации события входа пользователя (USER_LOGIN) присутствуют поляидентификатора процесса (pid), номер терминала (tty) и др.

Подсистема регистрации событий содержится в пакете auditd и устанавли-вается автоматически при установке ОС.

В состав пакета auditd входят следующие утилиты:– служба ведения событий аудита — auditd (п. 11.5.1);– управление правилами аудита — auditctl (п. 11.5.2);– просмотр отчетов о событиях аудита — aureport (п. 11.5.3);– поиск событий безопасности — ausearch (п. 11.5.4).

11.5.1. Служба ведения событий аудита — auditd

Служба ведения событий аудита auditd представляет собой службу, осу-ществляющую запись событий безопасности в лог файл согласно правилам аудита.

Данная служба запускается автоматически при старте ОС.Для запуска службы используется следующая команда:sudo systemctl start auditd

Для остановки и перезапуска необходимо выполнить:sudo systemctl stop auditd

sudo systemctl restart auditd

Служба auditd использует следующие файлы:– /etc/audit/auditd.conf— конфигурационный файл службы аудита;– /etc/audit/audit.rules — файл правил, применяемых при запускеслужбы;– /etc/audit/rules.d—каталог, содержащий файлы с правилом или на-боров правил;– /var/log/audit/audit.log—журнал службы auditd.

Page 71: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

71ДВНБ.10001-01 34 01

11.5.2. Управление правилами аудита — auditctl

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

auditctl [опции]

Утилита имеет большое число опций, основные из которых:– l— вывести список основных правил;– a— добавить новое правило;– d— удалить правило;– D— удалить все имеющиеся правила.Для просмотра списка применяемых правил используется команда:sudo auditctl -l

Для добавления нового правила используется команда вида:sudo auditctl -a <список>, <действие> -S <имя системного

вызова> -F <фильтры>↪→

Опции выбора списка при управлении правилами приведены в таблице 16.

Т а б л и ц а 16Список Описание

taskСписок правил процесса. Этот список правил используется только во время созданияпроцесса - когда родительский процесс вызывает fork() или clone()

entryСписок правил точек входа системных вызовов. Этот список применяется когда необ-ходимо создать событие для аудита, привязанное к точкам входа системных вызовов.

exit

Список правил точек выхода из системных вызовов. Этот список применяется когданеобходимо создать событие для аудита, привязанное к точкам выхода из системныхвызовов.

user

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

exclude

Список фильтрации событий определенного типа. Этот список используется, чтобыотфильтровывать ненужные события. Например, если вы не хотите видеть avc сооб-щения, вы должны использовать этот список. Тип сообщения задается в полеmsgtype.

Список доступных действий приведен в таблице 17.

Page 72: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

72ДВНБ.10001-01 34 01

Т а б л и ц а 17Действие Описание

neverНе генерировать никаких записей. Это может быть использовано для подавления ге-нерации событий.

alwaysУстановить контекст аудита. Всегда заполнять его во время входа в системный вызов,и всегда генерировать запись во время выхода из системного вызова.

В качестве имени системного вызова может использовано как его имя, так иего номер.

Указание фильтров позволяет определить случаи фиксации событий аудита.Общий синтаксис для указания фильтров:

<поле><операция><значение>

где <операция> является логическим оператором: =, !=, <, >, <=, >=, &, &=Например, для задания фильтра для директории /home используется следу-

ющая строка:dir=/home

Список доступных атрибутов для задания фильтров указан в man auditctl.Для удаления существующего правила используется следующая команда:sudo auditctl -d <список>, <действие>

Например, правило на отслеживание системных вызовов open создается сле-дующим образом:

sudo auditctl -a exit,always -S open

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

sudo auditctl -a always,exit -F dir=/home/ -F uid=0 -C

auid!=obj_uid↪→

Для удаления предыдущего правила используется команда:sudo auditctl -d always,exit -F dir=/home/ -F uid=0 -C

auid!=obj_uid↪→

Подробное описание утилиты auditctl приведено на странице помощиman auditctl.

Page 73: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

73ДВНБ.10001-01 34 01

11.5.3. Просмотр отчетов о событиях аудита — aureport

Утилита aureport используется для просмотра отчетов безопасности,зарегистрированных службой auditd. При запуске без аргументов, выводит общуюстатистику по событиям безопасности.

Для сортировки событий по типу результата (успех, отказ) используютсяключи командной строки --success, --failure.

Для задания интервала времени для отчета используются ключи --start,--end (задаются в формате ДД.ММ.ГГГГ).

Например, просмотр событий использования механизма аутентификации:sudo aureport -au

Просмотр событий изменения учетных записей пользователей за декабрь 2017года:

sudo aureport -m --start 01.12.2017 --end 31.12.2017

Подробное описание утилиты приведено в man aureport.Опции выбора типа отчета утилиты aureport представлены в таблице 18.

Т а б л и ц а 18 – Опции выбора типа отчета утилиты aureportОпция Название отчета

-a, --avc Отчет AVC-au, --auth События использования механизма аутентификации--comm События запуска команд-c, --config События изменения конфигурации службы auditd

-cr, --crypto События криптографии-e, --event Все сообщения-f, --file События файлов-h, --host События удаленного хоста--integrity События целостности-k, --key События по ключам созданных правил-l, --login События авторизации пользователей-m, --mods События изменения аккаунтов-n, --anomaly Аномальные события--node <имя_узла> События указанного узла-p, --pid События по процессам

Page 74: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

74ДВНБ.10001-01 34 01

Окончание таблицы 18Опция Название отчета

-r, --response События ответов на аномальные события-s, --syscall События использования системных вызовов-t, --log События ротирования журнала--tty События по использованию терминалов-u, --user События пользователей--virt События виртуализации-x, --executable События запуска программ

11.5.4. Поиск событий безопасности — ausearch

Для просмотра детальной информации о событии используется утилитаausearch.

Формат вызова команды:sudo ausearch -a <номер события> [опции]

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

Т а б л и ц а 19 – Опции утилиты поиска событий ausearchОпция Описание

-a, --event <номер события аудита> Поиск по номеру события--arch <архитектура> Поиск по архитектуре процессора-c, --comm <команда> Поиск по исполняемой команде--checkpoint <файл_журнала> Поиск событий в указанном файле журнала-e, --exit <код ошибки> Поиск по коду возврата или номера ошибки-f, --file <файл> Поиск по имени файла-ga, --gid-all <идентификаторы> Поиск по всем идентификаторам групп-ge,--gid-effective <эффективный_gid>

Поиск по эффективному идентификатору группы

-gi, --gid <идентификатор> Поиск по идентификатору группы-hn, --host <хост> Поиск по имени хоста-k, --key <ключ> Поиск по ключу правила-m, --message <тип_сообщения> Поиск по типу сообщения-n, --node <узел> Поиск по имени узла

Page 75: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

75ДВНБ.10001-01 34 01

Окончание таблицы 19Опция Описание

-p, --pid <идентификатор> Поиск по идентификатору процесса

-pp, --ppid <идентификтатор>Поиск по идентификатору родительского про-цесса

-sc, --syscall <вызов> Поиск по названию системного вызова--session <идентификатор> Поиск по идентификатору сессии-sv, --success <результат> Поиск по результату события-tm, --terminal <идентфикатор> Поиск по идентификатору терминала-ua, ---uid-all <идентификаторы> Поиск по всем идентификаторам пользователей

-ue,--uid-effective <эффективный_uid>Поиск по эффективному идентификатору поль-зователя

-ui, --uid <идентификатор> Поиск по идентификатору пользователя-ul, --loginuid <идентификатор логина> Поиск по идентификатору логина пользователя

-uu, --uuid <UUID>Поиск по виртуальному идентификатору госте-вой машины

-vm, --vm-name <имя_машины> Поиск по имени виртуальной машины-x, --executable <файл> Поиск по исполняемому файлу

Аналогично команде aureport для поиска по заданному интервалу временииспользуются опции --start и --end.

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

П р и м е р ы:1) Поиск событий использования механизма повышения привилегий sudo:sudo ausearch -x /usr/bin/sudo

2) Поиск событий входа пользователя (LOGIN) за декабрь 2017:sudo ausearch -m LOGIN --start 01.12.2017 --end

31.12.2017↪→

11.6. Изоляция модулей

Ядро ОС обеспечивает для каждого процесса в системе собственное изолиро-ванное адресное пространство. Данный механизм изоляции основан на страничном

Page 76: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

76ДВНБ.10001-01 34 01

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

Механизм разделяемой памяти является санкционированным способом полу-чить нескольким процессам доступ к одному и тому же участку памяти и находится подконтролем дискреционных ПРД.

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

11.7. Очистка памяти

Ядро ОС гарантирует, что обычный непривилегированный процесс не получитданные чужого процесса, если это явно не разрешено ПРД. Это означает, что сред-ства IPC контролируются с помощью ПРД, и процесс не может получить неочищеннуюпамять (как оперативную, так и дисковую).

В ОС реализован механизм, который очищает неиспользуемые блокиФС непо-средственно при их освобождении. Работа данного механизма снижает скорость вы-полнения операций удаления и усечения размера файла. Данные любых удаляемыхфайлов в пределах заданной ФС предварительно очищаются предопределенной илипсевдослучайной маскирующей последовательностью. Механизм является настраи-ваемым и позволяет обеспечить работу ФС ОС (Ext2/Ext3/Ext4) в одном из следующихрежимов:

1) очистка осуществляется посредством перезаписи каждого байта в осво-бождаемой области посредством четырех сигнатур вида:

11111111, 01010101, 10101010, 00000000

Page 77: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

77ДВНБ.10001-01 34 01

Использование режима включается параметром secdel в конфигурационномфайле /etc/fstab для раздела ФС, на котором требуется очищать блоки памятипри их освобождении (например, /dev/sda1). В список параметров монтированиядобавляется параметр secdel.

П р и м е р/dev/sda1 /home ext4 acl,defaults,secdel 0 2

2)  очистка осуществляется посредством перезаписи каждого байта в осво-бождаемой области посредством четырех сигнатур вида:

11111111, 01010101, 10101010, 00000000

Количество перезаписей определяется администратором. Использование ре-жима включается установкой значения параметра secdel в конфигурационномфай-ле /etc/fstab для раздела ФС, на котором требуется очищать блоки памяти приих освобождении (например, /dev/sda1). При установке числа перезаписей большечетырех сигнатуры используются повторно.

Например, при установке числа перезаписей, равному 6, последовательностьсигнатур, используемых для перезаписи, имеет вид:

11111111, 01010101, 10101010, 00000000, 11111111,

01010101

В список параметров монтирования добавляется параметр secdel=6.

П р и м е р/dev/sda1 /home ext4 acl,defaults,secdel=6 0 2

3)  очистка осуществляется посредством перезаписи каждого байта в осво-бождаемой области посредством четырех псевдослучайных сигнатур. Использо-вание режима включается параметром secdelrnd в конфигурационном файле/etc/fstab для раздела ФС, на котором требуется очищать блоки памяти при ихосвобождении (например, /dev/sda1). В список параметров монтирования добав-ляется параметр secdelrnd.

П р и м е р/dev/sda1 /home ext4 acl,defaults,secdelrnd 0 2

4)  очистка осуществляется посредством перезаписи каждого байта в осво-бождаемой области посредством псевдослучайных сигнатур. Количество перезапи-сей определяется администратором. Использование режима включается установкой

Page 78: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

78ДВНБ.10001-01 34 01

значения параметра secdelrnd в конфигурационном файле /etc/fstab для раз-дела ФС, на котором требуется очищать блоки памяти при их освобождении (напри-мер, /dev/sda1).

Например, при установке числа перезаписей, равному 6, в список параметровмонтирования добавляется параметр secdelrnd=6.

П р и м е р/dev/sda1 /home ext4 acl,defaults,secdelrnd=6 0 2

5)  очистка осуществляется посредством перезаписи каждого байта в осво-бождаемой области посредством заданной администратором. Количество перезапи-сей определяется администратором. Использование режима включается установкойзначения параметра secdel в конфигурационном файле /etc/fstab для разде-ла ФС, на котором требуется очищать блоки памяти при их освобождении (например,/dev/sda1).

Например, при установке числа перезаписей, равному 5, в список парамет-ров монтирования добавляется параметр secdel=5. Маска определяется парамет-ром secdelmask.

П р и м е р/dev/sda1 /home ext4

acl,defaults,secdel=5,secdelmask=0xABCDEF55 0 2↪→

Для включения очистки активных разделов страничного обмена установитьв конфигурационном файле /etc/security/swapshred.conf для параметраENABLE значение Y.

Для задания списка разделов страничного обмена, для которых не выполняет-ся очистка, может быть использован параметр IGNORE, значение которого являетсясписком перечисленных через пробел игнорируемых разделов страничного обмена.

П р и м е рIGNORE=”/dev/sdz10 /dev/sdz11”

11.8. Контроль целостности

Целостность среды исполнения ОС обеспечивается следующими механизмами:– средства регламентного контроля целостности — afick (п. 11.8.1);– средство подсчета контрольных сумм файлов и носителей — gostsum (п.

Page 79: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

79ДВНБ.10001-01 34 01

11.8.2);– средства создания замкнутой программной среды (п. 11.8.3).Каждый из механизмов нацелен на решения конкретных задач обеспечения

контроля целостности.

11.8.1. Средства регламентного контроля целостности — afick

В качестве регламентного контроля целостности файлов ОС применяетсянабором программных средств на основе программного пакета afick («Another FileIntegrity Checker»).

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

Основные параметры функционирования средства регламентного кон-троля целостности указываются в конфигурационном файле по умолчанию(/etc/afick.conf), например, путь к файлу БД.

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

DIR = p+i+n+u+g

Перечисленные ключи задают контроль прав доступа, метаданных, количествассылок и стандартных атрибутов. Список основных ключей контролируемых атрибутовприведен в таблице 20.

Т а б л и ц а 20 – Список атрибутов контроля целостности afickКлюч Описание

a Метка времени последнего доступа файла (atime)b Размер в блоках (blocks)c Метка времени изменения inode (ctime)d Составной номер устройства или ФС (device number)g идентификатор группы (gid)i Номер inode

Page 80: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

80ДВНБ.10001-01 34 01

Окончание таблицы 20Ключ Описание

m Метка времени последнего изменения файла (mtime)md5 Контрольная сумма MD5 (по умолчанию)n Число жестких ссылокp Права доступа (владелец, группа, другое) (permissions)u Идентификатор владельца (uid)s Размер файла (size)t Маска ACLsha1

sha256

sha512

Один из вариантов контрольной суммыSHA.Может быть задан только один из вариантов

z2

z5

Контрольная сумма по алгоритму ГОСТ Р 34.11-2012 (256 бит или 512).Может быть задан только один из вариантов

all b+c+d+g+i+m+md5+n+p+u+s

R p+d+i+n+u+g+s+m+c+md5

L p+d+i+n+u+g

E Пустой набор

Создание базы данных эталонных значений контрольных сумм и атрибутов вы-полняется при помощи следующей команды:

sudo afick -i

При этом будет создан файл /var/lib/afick/afick в формате ndbm.Пакет содержит конфигурацию по умолчанию для системного планировщика заданийcron.

ВНИМАНИЕ! Конфигурация системного планировщика заданий cron длязапуска регламентного контроля целостности должна быть разработана с учетом сов-местного применения с подсистемой регистрации событий.

Подробное описание утилиты afick и формата конфигурационного файлаприведено в страницах помощи man afick, man afick.conf.

11.8.2. Средство подсчета контрольных сумм файлов и носителей —gostsum

Для подсчета контрольный сумм файлов и носителей в состав ОС включеныутилиты командной строки gost12sum и gost94sum. Утилита gost12sum исполь-

Page 81: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

81ДВНБ.10001-01 34 01

зует алгоритм вычисления хеш-суммы ГОСТ Р 34.11-2012. Утилита gost94sum ис-пользует устаревший алгоритм вычисления хеш-суммы ГОСТ Р 34.11-94.

Подробное описание утилит приведено в соответствующих страницах помощиman.

11.8.3. Средства создания замкнутой программной средыДля реализации замкнутой программной среды используется механизм яд-

ра Integrity Measurement Architecture (IMA). Его реализация дополнена поддержкойфункций хеширования в соответствии с ГОСТ Р 34.11-2012 и формирования и про-верки цифровой подписи в соответствии с ГОСТ Р 34.10-2012.

Механизм IMA предоставляет возможность внедрения контрольной суммы илицифровой подписи в расширенные атрибуты файлов. При обращении к файлу про-водится проверка корректности подписи и в случае несоответствия доступ к такомуфайлу запрещается.

На этапе компиляции, в ядро ОС добавляется корневой сертификат разработ-чика ОС (длина ключа 512 бит) и, подписанный на нем, сертификат для проверки под-писей модулей ядра (длина ключа 512 бит). Подпись модулей ядра формируется входе компиляции и хранится в конце файлов модулей в формате PKCS7.

В тестовых целях, возможно отключение проверки подписей модулей ядра.Для этого надо указать в параметрах загрузки ядра module.sig_enforce=0. Сде-лать это можно в интерфейсе загрузчика GRUB или внести эти изменения в файле/etc/default/grub и выполнить команду:

sudo upgrade-grub

Содержимое бинарных пакетов подписывается во время сборки и подписи до-бавляются в расширенные атрибутыфайлов пакета. Сертификат на котором проверя-ются подписи файлов содержится в файле /etc/ima/x509_ima.der (длина клю-ча 256 бит).

Есть возможность выпуска дополнительных сертификатов для разработчиковПО, которые подписываются на корневом сертификате производителя и также могутиспользоваться для подписи и последующей проверки подписей объектов файловойсистемы. Использование для проверки подписей сертификатов не подписанных накорневом сертификате разработчика ОС невозможно.

Page 82: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

82ДВНБ.10001-01 34 01

Для проверки подписей используются сертификаты разработчиков нахо-дящиеся в кейринге ima. При загрузке системы, в кейринг ima подпадают всеключи (подписанные на корневом сертификате разработчика ОС) из директории/etc/ima/certs, включая вложенные директории.

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

sudo evmctl -iv import <certificate.file> 0x<nnnnnn>

где nnnnnn это идентификатор кейринга (изменяется динамически при загрузкесистемы).

Получить его можно используя команду:sudo grep .ima /proc/keys

0bb0e31e I------ 1 perm 1f0f0000 0 0 keyring

.ima_blacklist: empty↪→

2c264a9e I------ 1 perm 1f0f0000 0 0 keyring

.ima: 5↪→

В данном примере идентификатор кейринга ima— 2c264a9e.Для выполнения операций по управлению ключами и ручной проверки подпи-

сей файлов в состав ОС входит утилита evmctl. Далее приведен пример основныхопераций утилиты, а подробное описание доступно в руководстве man evmctl.

П р и м е р ы:1) Установка подписи IMA:sudo evmctl -ivk <private.key> ima_sign <filename>

2) Проверка подписи IMA:sudo evmctl -ivk <certificate.file> ima_verify <filename>

3) Просмотр информации о подписи IMA:sudo evmctl show <filename>

4) Просмотр информации о подписи IMA в формате XML:sudo evmctl show_xml <filename>

Для осуществления подписи своих пакетов в ОС разработчикам предоставля-ются несколько скриптов:

– /usr/share/doc/ima-evm-utils/sign-deb.sh — осуществляетподпись deb пакета, внедряя информацию о подписи в расширенные атрибутыфайлов внутри пакета, контрольная сумма пакета изменяется.

Использование:

Page 83: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

83ДВНБ.10001-01 34 01

/usr/share/doc/ima-evm-utils/sign-deb.sh <secretkey>

<source deb> <destination deb>

где <secretkey>—закрытая часть ключа разработчика, <source deb>—исход-ный deb пакет, <destination deb>— целевой deb пакет;

– /usr/share/doc/ima-evm-utils/sign-deb-ko.sh — осуществля-ет подпись deb пакета, внедряя информацию о подписи в расширенные атрибутыфайлов внутри пакета, контрольная сумма пакета изменяется. Помимо этого подпи-сываются все .koфайлы модулей ядра находящиеся в пакете.

Использование:/usr/share/doc/ima-evm-utils/sign-deb-ko.sh <secretkey>

<source deb> <destination deb>

где <secretkey>—закрытая часть ключа разработчика, <source deb>—исход-ный deb пакет, <destination deb>— целевой deb пакет;

– /usr/share/doc/ima-evm-utils/sign-foreign-deb.sh — со-здает файл содержащий информацию о подписях всех файлов пакета. Сам пакетпри этом не изменяется.

Использование:/usr/share/doc/ima-evm-utils/sign-foreign-deb.sh

<secretkey> <source deb> <package-name>.dump

где:<secretkey>—закрытая часть ключа разработчика, <source deb>—исход-ный deb пакет, <package-name>.dump — файл содержащий информацию о под-писях пакета.

Для установки пакетов подготовленных таким образом, предвари-тельно необходимо поместить файл <package-name>.dump в директорию/etc/dpkg/ima.d/. После установки каждого пакета dpkg проверяет наличиефайла /etc/dpkg/ima.d/<package-name>.dump и, при его существовании,переносит информацию о подписях файлов пакета в расширенные атрибуты файловпакета.

Предустановленные политики проверки подписей находятся в директории/etc/ima/policy.d:

– empty— не осуществлять проверку подписей файлов;– appraise — осуществлять проверку подписей у исполняемых файлов искриптов;

Page 84: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

84ДВНБ.10001-01 34 01

– appraise_audit—осуществлять проверку подписей у исполняемыхфай-лов и скриптов, а также производить логирование всех проверок подписей.Выбор политики осуществляется через установку символической ссылки

/etc/ima/policy на нужную политику.

П р и м е р ы:1) Для выключения проверки подписей необходимо выполнить команды:sudo rm /etc/ima/policy

sudo ln -s /etc/ima/policy.d/empty /etc/ima/policy

sudo update-initramfs -u -k all

2) Для включения проверки подписи выполнить:sudo rm /etc/ima/policy

sudo ln -s /etc/ima/policy.d/appraise /etc/ima/policy

sudo update-initramfs -u -k all

Администратор системы может создавать свои собственные политики провер-ки подписей. Для ее включения необходимо поменять ссылку на активную политикукак указано ранее.

Политика представляет из себя текстовый файл, каждая строка которого со-держит одно правило. При применении политики правила проверяются по порядку.В случае, если подходит правило dont_measure или dont_appraise, проверкапрекращается и операция разрешается.

Нет возможности привязывания правил к путям файловой системы, например«проверять подписи у всех файлов /sbin». Это связано с тем, что не для всех контек-стов выполнения возможно получение исходного пути файла, например при систем-ном вызове mmap().

Правило должно начинаться с одного из действий:– measure— подписать файл в случае отсутствия IMA подписи;– dont_measure— не подписывать файл;– appraise— проверять IMA подпись файла;– dont_appraise— не проверять IMA подпись;– audit— добавить сообщение в файл аудита.После действия приводится список условий, при выполнении которых это

действие должно применяться. Список типовых условий приведен к таблице 21.

Page 85: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

85ДВНБ.10001-01 34 01

Т а б л и ц а 21 – Список основных условий IMA/EVMУсловие Описание

fsmagic=<magic>Файл должен располагаться на заданной файловой системе. Возмож-ные значения magic доступны в странице помощи man 2 statfs

fsuuid=<id> Файл должен располагаться на файловой системе с заданным UUID

fowner=0, fowner<100 Файл должен принадлежать пользователю с заданным UID либо с UIDбольше или меньше заданного

uid=0, euid=0 Процесс выполняется с заданным (эффективным) UIDmask=MAY_READ Ограничение по возможному режиму доступа процесса к файлу

appraise_type=imasigУказывает, что для операций appraise обязательно наличие подписи,а не просто хэша

func=<context>

Ограничение по типу операции проводящейся с файлом, возможныезначения:– BPRM_CHECK—Файл запускается на выполнение;– MMAP_CHECK—Файл отображается в память процесса;– BPRM_CHECK—Файл запускается на выполнение;– MMAP_CHECK—Файл отображается в память процесса;– FILE_CHECK—Открытие файла;– MODULE_CHECK—Файл загружается в качестве модуля ядра;– FIRMWARE_CHECK—Файл загружается в ядро в качестве бинарнойпрошивки

Управление модулем IMA осуществляется с помощью опций загрузки ядра:1) ima_apprise—Режим работы модуля IMA. Может принимать следующиезначения:

– off— не проводить проверку никаких файлов;– enforce — отклонять доступ к файлам не имеющим подписей илихэшей соответствующих действующей политике;– fix— выставлять значения хэшей файлов в соответствии с полити-кой, (только для файлов не имеющих подписи в расширенных атрибу-тах);– log— разрешать доступ к файлам с некорректными подписями, нопроводить аудит таких обращений.

2) ima_hash — Хэш по умолчанию для правил measure. Может приниматьследующие значения:

Page 86: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

86ДВНБ.10001-01 34 01

– md5;– sha1;– rmd160;– sha256;– sha384;– md_gost94.

3) ima_audit: если выставлено в 1, в аудит добавляется расширенная ин-формация.Пример файла политики:# PROC_SUPER_MAGIC

dont_measure fsmagic=0x9fa0

dont_appraise fsmagic=0x9fa0

# SYSFS_MAGIC

dont_measure fsmagic=0x62656572

dont_appraise fsmagic=0x62656572

# DEBUGFS_MAGIC

dont_measure fsmagic=0x64626720

dont_appraise fsmagic=0x64626720

# TMPFS_MAGIC

dont_measure fsmagic=0x01021994

dont_appraise fsmagic=0x01021994

# RAMFS_MAGIC

dont_appraise fsmagic=0x858458f6

# DEVPTS_SUPER_MAGIC

dont_measure fsmagic=0x1cd1

dont_appraise fsmagic=0x1cd1

# BINFMTFS_MAGIC

dont_measure fsmagic=0x42494e4d

dont_appraise fsmagic=0x42494e4d

# SECURITYFS_MAGIC

dont_measure fsmagic=0x73636673

dont_appraise fsmagic=0x73636673

# SELINUX_MAGIC

dont_measure fsmagic=0xf97cff8c

dont_appraise fsmagic=0xf97cff8c

# CGROUP_SUPER_MAGIC

Page 87: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

87ДВНБ.10001-01 34 01

dont_measure fsmagic=0x27e0eb

dont_appraise fsmagic=0x27e0eb

# CGROUP2_SUPER_MAGIC

dont_measure fsmagic=0x63677270

dont_appraise fsmagic=0x63677270

# NSFS_MAGIC

dont_measure fsmagic=0x6e736673

dont_appraise fsmagic=0x6e736673

appraise func=BPRM_CHECK fowner=0 appraise_type=imasig

appraise func=BPRM_CHECK uid=0 appraise_type=imasig

appraise func=FILE_MMAP fowner=0 mask=MAY_EXEC

appraise_type=imasig↪→

appraise func=FILE_MMAP uid=0 mask=MAY_EXEC

appraise_type=imasig↪→

appraise func=MODULE_CHECK appraise_type=imasig

appraise func=FIRMWARE_CHECK appraise_type=imasig

В данном наборе правил сначала исключаются из проверки содержимое/proc,/sys удаленныефайловые системы и прочие подобные. После этого указано,что должны проверяться:

– все принадлежащие пользователю с uid=0 файлы, которые запускаютсяили отображаются в память процессов;– все файлы которые запускают или отображают в память процессы, выпол-няющиеся в контексте пользователя с uid=0;– все файлы загружаемые в ядро в качестве модуля или бинарной прошивки.

11.9. Настройка работы корневой файловой системы ОС в режиме«только чтение»

Для настройки работы корневой файловой системы ОС в режиме «только чте-ние» необходимо:

1) Открыть файл /etc/overlayroot.conf с правами администратора изаменить строку overlayroot=”” на overlayroot=tmpfs;

2) Выполнить обновление модулей ядра командой:sudo update-initramfs -k all -ut

3) Выполнить перезагрузку ЭВМ.Для возвращения корневой файловой системы ОС в режим «чтение-запись»

Page 88: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

88ДВНБ.10001-01 34 01

необходимо:1) Перемонтировать файловую систему в режим «чтение-запись» командой:sudo mount -o rw,remount /media/root-ro

2) Открыть файл /media/root-ro/etc/overlayroot.conf с правамиадминистратора и заменить строку overlayroot=tmpfs на overlayroot=””;

3) Выполнить обновление модулей ядра командой:sudo update-initramfs -k all -ut

4) Выполнить перезагрузку ЭВМ.

Page 89: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

89ДВНБ.10001-01 34 01

12. УПРАВЛЕНИЕ СЕТЕВЫМИ НАСТРОЙКАМИ И ФИЛЬТРАЦИЕЙ

12.1. Сетевое взаимодействие (TCP/IP)

В начале каждого пакета есть заголовок, в котором содержится служебнаяинформация – IP-адреса отправителя и получателя, для которого предназначен дан-ный пакет, к какому сетевому протоколу относится (TCP, UDP и т.п.), в некоторых слу-чаях (для протоколов UDP и TCP) – номера портов отправителя и получателя, а такжедругая специфическая информация.

12.2. Фильтр сетевых пакетов

Задачей фильтра сетевых пакетов является фильтрация и обработка пакетов,проходящих через компьютер. При анализе входного пакета фильтр принимает ре-шение о том, какое действие следует произвести для этого пакета: выбросить пакет,принять или выполнить другое действие.

Функциифильтра реализуются модулем ядра netfilter. Интерфейсомдля управ-ления правилами, по которым этот модуль обрабатывает пакеты, служит утилитаiptables для IPv4 и утилита ip6tables для IPv6.

К основным возможностям iptables относится:– фильтрация трафика на основе адресов отправителя и получателя пакетовс учетом портов;– перенаправление пакетов по определенным параметрам;– организация доступа в сеть (SNAT);– проброс портов из глобальной сети в локальную (DNAT);– ограничение числа подключений;– установление квот трафика;– выполнение правил по расписанию.В настоящее время для удобства управления применяются различные сред-

ства более высокого уровня, например ufw, описанный в разделе 12.6.

12.2.1. Порядок фильтрации и правила обработки пакетовСетевые пакеты, поступившие на сетевой интерфейс, проходят последователь-

ность цепочек фильтра сетевых пакетов. Пакет обязательно проходит первоначаль-ную цепочку PREROUTING. После цепочки PREROUTING, в соответствии с таблицей

Page 90: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

90ДВНБ.10001-01 34 01

маршрутизации, проверяется отправитель пакета и, в зависимости от назначения па-кета, определяется, в какую цепочку он попадет дальше. Если пакет адресован нелокальной системе (в TCP пакете поле «адрес получателя» указана не локальная си-стема), то он направляется в цепочку FORWARD, если пакет адресован локальнойсистеме – он отправляется в цепочку INPUT и после ее прохождения отдается локаль-ным службам/процессам. После обработки локальной программой при необходимостиформируется ответ. Ответный пакет направляется на соответствующий маршрут (хостиз локальной сети или адрес маршрутизатора) и направляется в цепочку OUTPUT.После цепочки OUTPUT (или FORWARD, если пакет был проходящий) пакет сновасверяется с правилами маршрутизации и отправляется в цепочку POSTROUTING.

Каждая цепочка, которую проходит пакет, состоит из набора таблиц. Табли-цы в разных цепочках имеют одинаковое наименование, но между собой не связаны.Например, таблица nat в цепочке PREROUTING не связана с таблицей nat в цепочкеPOSTROUTING. Каждая таблица состоит из упорядоченного набора правил. Каждоеправило содержит условие, которому должен соответствовать проходящий пакет, инабор действий с пакетом, подходящим данному условию.

Проходя через серию цепочек, пакет последовательно проходит каждую таб-лицу и в каждой таблице последовательно сверяется с каждым набором условий вправиле, и если пакет соответствует какому-либо условию, то выполняется заданноедействие над пакетом. В каждой таблице (кроме пользовательской) существует за-данная по умолчанию политика. Данная политика определяет действие над пакетом,если пакет не соответствует ни одному из правил в таблице. Чаще всего – это действиеACCEPT, чтобы принять пакет и передать в следующую таблицу или DROP – чтобы от-бросить пакет. Если пакет не был отброшен, он завершает свое путешествие по ядрусистемы и отправляется в сетевой интерфейс, который подходит по правилам марш-рутизации.

Подсистема netfilter использует следующие цепочки таблиц:– PREROUTING – для изначальной обработки входящих пакетов;– INPUT – для входящих пакетов, адресованных непосредственно локальномукомпьютеру;– FORWARD – для проходящих (маршрутизируемых) пакетов;

Page 91: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

91ДВНБ.10001-01 34 01

– OUTPUT – для пакетов, создаваемых локальным компьютером (исходящих);– POSTROUTING – для окончательной обработки исходящих пакетов.Существует возможность создавать и уничтожать собственные цепочки при по-

мощи утилиты iptables. Цепочки прохождения пакетов используют следующие таб-лицы:

– raw – пакет проходит данную таблицу до передачи системе определения со-стояний. Используется редко, например, для маркировки пакетов, которые НЕдолжны обрабатываться системой определения состояний. Для этого в прави-ле указывается действие NOTRACK. Содержится в цепочках PREROUTING иOUTPUT;– mangle – содержит правила модификации (обычно полей заголовка)IP-пакетов. Среди прочего поддерживает действия TTL, TOS, и MARK (дляизменения полей TTL и TOS и для изменения маркеров пакета). Содержитсяво всех пяти стандартных цепочках;– nat – предназначена для подмены адреса отправителя или получателя. Дан-ную таблицу проходит только первый пакет из потока, трансляция адресовили маскировка (подмена адреса отправителя или получателя) применяют-ся ко всем последующим пакетам в потоке автоматически. Поддерживаетдействия DNAT, SNAT, MASQUERADE, REDIRECT. Содержится в цепочкахPREROUTING, OUTPUT и POSTROUTING;– filter – основная таблица, используется по умолчанию, если название табли-цы не указано. Используется дляфильтрации пакетов. Содержится в цепочкахINPUT, FORWARD и OUTPUT.Непосредственно для фильтрации пакетов используются таблицы filter. Для

пакетов, предназначенных данному узлу, необходимо модифицировать таблицу filterцепочки INPUT, для проходящих пакетов – цепочки FORWARD, для пакетов, создан-ных данным узлом – OUTPUT.

Цепочки и таблицы обработки пакетов приведены в таблице 22.

Page 92: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

92ДВНБ.10001-01 34 01

Т а б л и ц а 22

ЦепочкаТаблица

raw filter nat mangle

INPUT + +FORWARD + +OUTPUT + + + +PREROUTING + + +POSTROUTING + +

12.2.2. Таблица mangleОсновное назначение таблицы mangle – внесение изменений в заголовок па-

кета. В этой таблице могут производиться следующие действия:– установка бита Type Of Service;– установка поля Time To Live;– установка метки на пакет, которая может быть проверена в других правилах.Цепочки в таблице mangle:– PREROUTING – используется для внесения изменений в пакеты на входе вiptables, перед принятием решения о маршрутизации;– POSTROUTING – используется для внесения изменений в пакеты на выходеиз iptables, после принятия решения о маршрутизации;– INPUT – используется для внесения изменений в пакеты, перед тем как онибудут переданы локальному приложению;– OUTPUT – используется для внесения изменений в пакеты, поступающие отприложения внутри iptables;– FORWARD – используется для внесения изменений в транзитные пакеты.

12.2.3. Таблица natТаблица используется для преобразования сетевых адресов (Network Address

Translation) и когда встречается пакет, устанавливающий новое соединение. В этойтаблице могут производиться следующие действия:

– DNAT (DestinationNetwork Address Translation) – преобразование адреса на-значения в заголовке пакета;

Page 93: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

93ДВНБ.10001-01 34 01

– SNAT (Source Network Address Translation) –изменение исходного адресапакета;– MASQUERADE – используется в тех же целях, что и SNAT, но позволяет ра-ботать с динамическими IP-адресами.Цепочки в этой таблице:– PREROUTING – используется для внесения изменений в пакеты на входе вiptables;– OUTPUT – используется для преобразования адресов в пакетах, переддальнейшей маршрутизацией;– POSTROUTING – используется для преобразования пакетов, перед отправ-кой их в сеть.

12.2.4. Таблица filterТаблица используется для фильтрации пакетов. В этой таблице есть три це-

почки:– INPUT – цепочка для входящих пакетов;– FORWARD – цепочка для пересылаемых (транзитных) пакетов;– OUTPUT – цепочка для исходящих пакетов.Пакет, проходящий через эти цепочки, может подвергаться действиям:

ACCEPT, DROP, REJECT, LOG.

12.3. Управление фильтром сетевых пакетов (iptables)

Управление фильтром сетевых пакетов осуществляется путем загрузки в негоправил фильтрации. Далее описываются операции по сохранению и загрузке правилiptables.

ВНИМАНИЕ! Администратор должен обеспечить загрузку соответствующихправил при загрузке операционной системы с помощью доступных средств запускаслужебных скриптов во время загрузки.

П р и м е ч а н и е. Средство управления фильтром ufw (см. п. 12.6) самостоя-тельно обеспечивает автоматическую загрузку правил iptables, построенных с помо-щью упрощенного синтаксиса.

Сохранение правил:sudo sh -c ”iptables-save > /etc/iptables/iptables.rules”

Page 94: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

94ДВНБ.10001-01 34 01

Восстановление правил из файла:iptables-restore < firewall-config

Каждое правило в iptables – это отдельная строка, сформированная поопределенным правилам и содержащая критерии и действия. В общем виде правилоимеет такой формат:

iptables [-t table] command [match] [target/jump]

t table – задает имя таблицы, для которой будет создано правило;command – команда, которая определяет действие iptables – добавить пра-

вило, удалить правило и т. д.;match – задает критерии проверки, по которым определяется, попадает ли

пакет под действие правила или нет;target/jump – какое действие должно быть выполнено при выполнении кри-

терия.Команды iptables:-A – добавление правила в цепочку, правило будет добавлено в конец цепочки;-D – удаление правила из цепочки;-R – заменить одно правило другим;-I – вставить новое правило в цепочку;-L – вывод списка правил в заданной цепочке;-F – сброс всех правил в заданной цепочке;-Z – обнуление всех счетчиков в заданной цепочке;-N – создание новой цепочки с заданным именем;-X – удаление цепочки;-P – задает политику по умолчанию для цепочки;-E – переименование пользовательской цепочки.Для указания действия (цели) с пакетом служит опция -j. Основные действия:ACCEPT – разрешить пакет;DROP – уничтожить пакет;REJECT – будет отправлено ICMP сообщение, что порт недоступен;LOG – информация об этом пакете будет добавлена в системный журнал. Не

прерывает цепочку;

Page 95: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

95ДВНБ.10001-01 34 01

RETURN – возвращает пакет в ту цепочку, из которой он прибыл;SNAT – применить source NAT ко всем удовлетворяющим условию пакетам. Мо-

жет использоваться только в цепочках POSTROUTING и OUTPUT таблицы NAT;DNAT – применить destination NAT ко всем удовлетворяющим условию пакетам.

Может использоваться только в цепочке POSTROUTING таблицы NAT*;MASQUERADE – может применяться только в цепочке POSTROUTING табли-

цы NAT. Используется при наличии соединения с динамическим IP. Похож на SNAT,однако имеет свойство забывать про все активные соединения при потере интерфей-са. Это полезно при наличии соединения, на котором время от времени меняется IP-адрес, но при наличии постоянного IP это только доставит неудобства. В том числепоэтому рекомендуется для статических IP использовать SNAT.

В качестве действия можно указать и имя пользовательской цепочки. Напри-мер, «перекинуть» все пакеты с локальной сети в цепочку, где будет производитьсядополнительная проверка:

iptables -A INPUT -s 192.168.1.0/24 -j ACCEPT

Список текущих правил:iptables -nvL —line-numbers

где L – показать список правил;v – отображать дополнительную информацию;*n – отображать ip адрес и порт числами (не используя DNS сервера для опре-

деления имен. Это ускорит отображение);line-numbers – вывод номеров строк.Очистка всех правил:iptables -F

Очистка правил в цепочке:iptables -F INPUT

Удаления пятого правила в цепочке INPUT:iptables -D INPUT 5

Удалить правило, в котором адрес источника (192.168.1.15)iptables -D INPUT -s 192.168.1.15 -j DROP

Page 96: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

96ДВНБ.10001-01 34 01

12.4. Расширение функциональности iptables подключаемымимодулями

В iptables имеется возможность подключать модули, для этого использует-ся опция -m.

Модуль limit предназначен для ограничения нагрузки, например:iptables -A INPUT -p icmp -m limit --limit 4/second -j

ACCEPT↪→

Разрешить поддерживать открытыми уже установленные соединения:iptables -A OUTPUT -o eth0 -m state --state

ESTABLISHED,RELATED -j ACCEPT↪→

12.4.1. Примеры фильтрации сетевого уровняДляфильтрации по источнику используется опция-s. Например, запретим все

входящие пакеты с узла 192.168.1.95:iptables -A INPUT -s 192.168.1.95 -j DROP

Можно использовать доменное имя для указания адреса хоста:iptables -A INPUT -s test.host.net -j DROP

Также можно указать целую подсеть:iptables -A INPUT -s 192.168.1.0/24 -j DROP

Также можно использовать отрицание (знак !). Например, все пакеты с хостовотличных от 192.168.1.96 будут уничтожаться:

iptables -A INPUT ! -s 192.168.1.96 -j DROP

Разрешить хождение трафика по localhost:iptables -A INPUT -i lo -j ACCEPT

Сохраняем попытки подмены адреса с префиксом «IP_SPOOF A:» и сбрасы-ваем соединение.

iptables -A INPUT -i eth1 -s 10.0.0.0/8 -j LOG

--log-prefix ”IP_SPOOF A: ”↪→

iptables -A INPUT -i eth1 -s 10.0.0.0/8 -j DROP

Для использования в качестве фильтрации адреса получателя используетсяопция -d. Например, запретить все исходящие пакеты на хост 192.168.1.95:

iptables -A OUTPUT -d 192.168.156.156 -j DROP

Запретить доступ к ресурсу:iptables -A OUTPUT -d vk.com -j REJECT

Как и в случае с источником пакета можно использовать адреса подсети и до-менные имена. Отрицание также работает.

Page 97: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

97ДВНБ.10001-01 34 01

12.4.2. Примеры фильтрации транспортного уровняОпция -p указывает на протокол. Можно использовать all, icmp, tcp, udp или

номер протокола (из /etc/protocols).Разрешить входящие эхо-запросы:iptables -A INPUT -p icmp --icmp-type echo-request -j

ACCEPT↪→

Разрешить все исходящие пакеты с порта 80:iptables -A INPUT -p tcp --sport 80 -j ACCEPT

Заблокировать все входящие запросы порта 80:iptables -A INPUT -p tcp --dport 80 -j DROP

При указании порта необходимо указать транспортный протокол (tcp или udp).Можно использовать отрицание. Открыть диапазон портов:

iptables -A INPUT -m state --state NEW -m tcp -p tcp

--dport 7000:7010 -j ACCEPT↪→

Разрешить подключения по HTTP:iptables -A INPUT -p tcp --dport 80 -j ACCEPT

Разрешить подключения по SSH:iptables -A INPUT -p tcp -i eth0 --dport 22 -j ACCEPT

Разрешить получать данные от DHCP-сервера:iptables -A INPUT -p UDP --dport 68 --sport 67 -j ACCEPT

Разрешить rsync с определенной сети:iptables -A INPUT -i eth0 -p tcp -s 192.168.1.0/24

--dport 873 -m state --stateNEW,ESTABLISHED -j ACCEPT↪→

iptables -A OUTPUT -o eth0 -p tcp --sport 873 -m state

--state ESTABLISHED -j ACCEPT↪→

Разрешить IMAP/IMAP2 трафик:iptables -A INPUT -i eth0 -p tcp --dport 143 -m state

--state NEW,ESTABLISHED -j ACCEPT↪→

iptables -A OUTPUT -o eth0 -p tcp --sport 143 -m state

--state ESTABLISHED -jACCEPT↪→

Разрешить исходящие HTTP, FTP, DNS, SSH, SMTP:

Page 98: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

98ДВНБ.10001-01 34 01

iptables -A OUTPUT -p TCP -o eth0 --dport 443 -j ACCEPT

iptables -A OUTPUT -p TCP -o eth0 --dport 80 -j ACCEPT

iptables -A OUTPUT -p TCP -o eth0 --dport 53 -j ACCEPT

iptables -A OUTPUT -p UDP -o eth0 --dport 53 -j ACCEPT

iptables -A OUTPUT -p TCP -o eth0 --dport 25 -j ACCEPT

iptables -A OUTPUT -p TCP -o eth0 --dport 22 -j ACCEPT

iptables -A OUTPUT -p TCP -o eth0 --dport 21 -j ACCEPT

Разрешить mysql для локальных пользователей:iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

Разрешить CUPS (сервер печати, порт 631) для пользователей внутри локаль-ной сети:

iptables -A INPUT -s 192.168.1.0/24 -p udp -m udp --dport

631 -j ACCEPT↪→

iptables -A INPUT -s 192.168.1.0/24 -p tcp -m tcp --dport

631 -j ACCEPT↪→

Разрешить синхронизацию времени NTP для пользователей внутри локальнойсети:

iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW

-p udp --dport 123 -j ACCEPT

Разрешить торренты:iptables -A INPUT -p TCP -i eth0 --dport 51413 -j ACCEPT

iptables -A INPUT -p UDP -i eth0 --dport 51413 -j ACCEPT

iptables -A INPUT -p TCP -i eth0 --dport 6881 -j ACCEPT

iptables -A INPUT -p UDP -i eth0 --dport 6881 -j ACCEPT

Разрешить исходящий Google Talk:iptables -A OUTPUT -p TCP -o eth0 --dport 5222 -j ACCEPT

Разрешить TeamViewer:iptables -A OUTPUT -p UDP -o eth0 --dport 5938 -j ACCEPT

Проброс портов Для примера направим трафик с порта 442 на 22, это значит,что входящие ssh-соединения могут быть приняты с порта 422 и 22.

iptables -t nat -A PREROUTING -p tcp -d 192.168.1.15

--dport 422 -j DNAT --to 192.168.1.15:22

Также надо разрешить входящие соединения с порта 422:iptables -A INPUT -i eth0 -p tcp --dport 422 -m state

--state NEW,ESTABLISHED -j ACCEPT↪→

iptables -A OUTPUT -o eth0 -p tcp --sport 422 -m state

--state ESTABLISHED -j ACCEPT↪→

Page 99: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

99ДВНБ.10001-01 34 01

12.4.3. Пример базового набора правилВ большинстве случаев конечному пользователю (рабочая станция) достаточно

выполнить такую последовательность команд:iptables -P FORWARD DROP

iptables -P OUTPUT ACCEPT

iptables -A INPUT -i lo -j ACCEPT

iptables -A INPUT -m state --state RELATED,ESTABLISHED -j

ACCEPT↪→

iptables -P INPUT DROP

12.5. Пример защиты от разных видов забивания полосы пропускания

12.5.1. ICMP-флудОчень примитивный метод забивания полосы пропускания и создания нагру-

зок на сетевой стек через монотонную посылку запросов ICMP ECHO (пинг). Легко об-наруживается с помощью анализа потока трафика в обе стороны: во время атаки типаICMP-флуд они практически идентичны. Почти безболезненный способ абсолютнойзащиты основан на отключении ответов на запросы ICMP ECHO:

iptables -A INPUT -p icmp -j DROP --icmp-type 8

12.5.2. SYN-флудОдин из распространенных способов не только забить канал связи, но и ввести

сетевой стек ОС в такое состояние, когда он уже не сможет принимать новые запро-сы на подключение. Основан на попытке инициализации большого числа одновремен-ных TCP-соединений через посылку SYN-пакета с несуществующим обратным адре-сом. После нескольких попыток отослать ответный ACK-пакет на недоступный адресбольшинство ОС ставят неустановленное соединение в очередь. И только после n-ойпопытки закрывают соединение. Так как поток ACK-пакетов очень велик, вскоре оче-редь оказывается заполненной, и ядро дает отказ на попытки открыть новое соеди-нение. Наиболее умные DoS-боты еще и анализируют систему перед началом атаки,чтобы слать запросы только на открытыежизненно важныепорты.Идентифицироватьтакую атаку просто: достаточно попробовать подключиться к одному из сервисов.

Оборонительные мероприятия обычно включают в себя:Увеличение очереди «полуоткрытых» TCP-соединений:sysctl -w net.ipv4.tcp_max_syn_backlog=1024

Page 100: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

100ДВНБ.10001-01 34 01

Уменьшение времени удержания «полуоткрытых» соединений:sysctl -w net.ipv4.tcp_synack_retries=1

Включение механизма противодействия SYN-флуд атаке (TCP syncookies):sysctl -w net.ipv4.tcp_syncookies=1

Ограничение максимального числа «полуоткрытых» соединений с одного IP кконкретному порту:

iptables -I INPUT -p tcp --syn --dport 80 -m connlimit

--connlimit-above 10 -j DROP↪→

12.5.3. UDP-флудТипичный метод забивания полосы пропускания. Основан на бесконечной по-

сылке UDP-пакетов на порты различных UDP-сервисов. Легко устраняется за счет от-резания таких сервисов от внешнего мира и установки лимита на количество соедине-ний в единицу времени к DNS-серверу на стороне шлюза:

iptables -I INPUT -p udp --dport 53 -j DROP -m connlimit

--connlimit-above 1↪→

12.5.4. HTTP-флудОдин из самых распространенных на сегодняшний день способов флуда. Ос-

нован на бесконечной посылкеHTTP-сообщенийGETна 80-ый порт с целью загрузитьweb-сервер настолько, чтобы он оказался не в состоянии обрабатывать все остальныезапросы. Часто целью флуда становится не корень web-сервера, а один из скриптов,выполняющих ресурсоемкие задачи или работающий с БД. В любом случае, индика-тором начавшейся атаки будет служить аномально быстрый рост логов web-сервера.Определив с какого IP ведется атака, начинаем удалять по IP-адресам:

iptables -A INPUT -s xxx.xxx.xxx.xxx -p tcp

--destination-port http -j DROP↪→

Или сразу по подсетям:iptables -A INPUT -s xxx.xxx.0.0/16 -p tcp

--destination-port http -j DROP↪→

Для ограничения количества одновременных подключений к серверу дляклиента по IP используется модуль connlimit. Ограничим количество параллельныхподключений по SSH до трех для одного клиента:

iptables -A INPUT -p tcp --syn --dport 22 -m connlimit

--connlimit-above 3 -j REJECT↪→

Page 101: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

101ДВНБ.10001-01 34 01

Ограничить количество параллельных подключений по HTTP до трех дляодного клиента:

iptables -p tcp --syn --dport 80 -m connlimit

--connlimit-above 20 --connlimit-mask 24 -j DROP↪→

где: connlimit-above 10 – условие для проверки одновременных подклю-чений не более 10;

connlimit-mask 24 – группировка хостов по длине префикса, иначе говоря«маска» (для IPv4 это число должно быть в диапазоне от 0 до 32 включительно).

Также ограничить количество подключений в единицу времени можно с помо-щью модуля limit.

iptables -A INPUT -p tcp --dport 80 -m limit --limit

25/minute --limit-burst 100 -j ACCEPT↪→

где: m limit – подключаем модуль limit; limit 25/minute – порог в 25подключений в мин.; limit-burst 100 – условие включения порога: после дости-жения 100 подключений.

12.6. Управление фильтром сетевых пакетов (ufw)

По умолчанию для управления правилами фильтрации в системе используетсяпростой командный интерфейс ufw. Он разработан для легкой настройки iptablesи предоставляет дружественный способ создания сетевой защиты для IPv4 и IPv6.Упрощенные правила ufw транслируются в расширенные правила iptables и при-меняются при загрузке системы автоматически (в случае включенного по умолчаниюufw).

Изначально сервис ufw выключен.Простота использования ufm может быть показана на следующих примерах:Включение сетевого фильтра:sudo ufw enable

Открытие порта (в данном примере SSH):sudo ufw allow 22

Правила могут быть добавлены с использованием нумерованного формата:sudo ufw insert 1 allow 80

Подобным образом можно закрыть открытый порт:

Page 102: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

102ДВНБ.10001-01 34 01

sudo ufw deny 22

Для удаления правила используется команда delete:sudo ufw delete deny 22

Также можно разрешить доступ к порту с определенных компьютеров или се-тей. Следующий пример разрешает на этом компьютере доступ по SSH с адреса192.168.0.2 на любой IP адрес:

sudo ufw allow proto tcp from 192.168.0.2 to any port 22

Добавление опции –dry-run команде ufw выведет список правил, но не приме-нит их. Например, далее показано, что было бы применено, если открыть HTTP порт:

sudo ufw --dry-run allow http

*filter

:ufw-user-input - [0:0]

:ufw-user-output - [0:0]

:ufw-user-forward - [0:0]

:ufw-user-limit - [0:0]

:ufw-user-limit-accept - [0:0]

### RULES ###

### tuple ### allow tcp 80 0.0.0.0/0 any 0.0.0.0/0

-A ufw-user-input -p tcp --dport 80 -j ACCEPT

### END RULES ###

-A ufw-user-input -j RETURN

-A ufw-user-output -j RETURN

-A ufw-user-forward -j RETURN

-A ufw-user-limit -m limit --limit 3/minute -j LOG

--log-prefix ”[UFW LIMIT]: ”↪→

-A ufw-user-limit -j REJECT

-A ufw-user-limit-accept -j ACCEPT

COMMIT

Rules updated

ufw можно выключить командой:

sudo ufw disable

Чтобы посмотреть статус сетевой защиты:

Page 103: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

103ДВНБ.10001-01 34 01

sudo ufw status

Для более полного отображения информации введите:sudo ufw status verbose

Для отображения в виде формата numbered:sudo ufw status numbered

Для управления правилами и состоянием ufw в системе используется графи-ческая утилита ufw-gtk (пункт основного меню «Параметры/Управление межсете-вым экраном»).

На рис. 23 приведено основное окно программы, позволяющее выполнятьзапуск/останов межсетевого экрана и управление составом правил фильтрации с ис-пользованием графического интерфейса задания правил, приведенном на рис.  24.

Рис. 23

Page 104: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

104ДВНБ.10001-01 34 01

Рис. 24

Page 105: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

105ДВНБ.10001-01 34 01

13. УПРАВЛЕНИЕ СЕРВЕРОМ ПЕЧАТИ CUPS

CUPS (Common UNIX Printing System) – модульная система печати для UNIX-подобных операционных систем. Компьютер с запущенным сервером CUPS представ-ляет собой сетевой узел, который принимает задания на печать от клиентов, обраба-тывает их и отправляет на соответствующий принтер. В ОС подсистема печати CUPSобеспечивает выполнение следующих задач:

– регистрация и управление устройствами печати (очередями, принтерами ит.п.);– предоставление информации о состоянии устройств печати локальным иудаленным программам;– управление заданиями, выдаваемыми на печать;– выполнение команд администратора печати.Операции по установке и первоначальной настройке подсистемы печати вы-

полняются с привилегиями суперпользователя. Штатный режим администрированияподразумевает выполнение операций по добавлению и удалению принтеров, а такжеизменению их политики, от имени пользователя, входящего в группу администрато-ров печати, указанную в значении параметра SystemGroup (по умолчанию lpadmin)в файле /etc/cups/cups-files.conf.

13.1. Архитектура и принципы функционирования

Состав CUPS:– диспетчер печати (scheduler);– система фильтрации, преобразующая данные печати в формат, поддержи-ваемый конкретным принтером (mime-filters);– система взаимодействия с оборудованием, отправляющаяданные на устрой-ства печати (backends).

13.1.1. Диспетчер печатиДиспетчер печати CUPS предоставляет веб-интерфейс для управления зада-

ниями печати, конфигурирования сервера и предоставления справочной документа-ции с помощью протокол IPP (Internet Printing Protocol), в основе которого использованпротокол HTTP 1.1.

Page 106: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

106ДВНБ.10001-01 34 01

По умолчанию используется TCP-порт 631.Модуль авторизации контролирует, какие запросы могут обрабатываться в

системе. После прохождения авторизации запрос пересылается клиентскому модулюдля обработки.

Клиентский модуль также отвечает за исполнение внешнихCGI-программ, нуж-ных для поддержки сетевых принтеров, классов и мониторинга состояний заданий пе-чати.

Модуль конфигурации считывает конфигурационные файлы, инициализиру-ет структуры данных CUPS, управляет запуском и остановкой вспомогательных про-грамм CUPS. Модуль конфигурации также приостанавливает службы CUPS в тече-ние обработки файлов конфигурации и возобновляет их работу после обновления па-раметров. Модуль ведения журналов осуществляет запись событий, возникающих впроцессе работы. Доступны следующие виды журналов:

– журнал заданий (access);– журнал информации о функционировании и возможных ошибках (error);– журнал распечатанных страниц (page).MIME-модуль обрабатывает протокол MIME (Multipurpose Internet Mail

Extensions), используется в системе фильтрации для преобразования различныхтипов данных в формат, поддерживаемый устройством печати. PPD-модуль обра-батывает список файлов описания принтеров PPD (Postscript Printer Description).Модуль устройств обрабатывает список устройств печати, доступных в системе.Модуль принтеров, который работает с принтерами и PPD-файлами внутри CUPS.

13.1.2. Система фильтрацииСистема печати CUPS позволяет отправлять различные данные на сервер

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

фильтров. Для идентификации форматов данных и правил работы с ними использу-ются следующие файлы конфигурации: mime.types, в котором определены извест-ные типы данныхMIME, поддерживаемые системой CUPS, и mime.convs, в которомопределены правила преобразования этих типов.

Фильтры предоставлены для многих форматов файлов и включают, в частнос-

Page 107: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

107ДВНБ.10001-01 34 01

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

13.1.3. Рабочие файлы и каталогиВ системе CUPS используются следующие файлы и рабочие каталоги

(таблица 23).

Т а б л и ц а 23Путь Описание

/etc/cups/ Файлы параметров конфигурации сервера печати../cupsd.conf Основные параметры сервера печати и политики../cups-files.conf Дополнительные параметры сервера печати../printers.conf Описания используемых в системе печати принтеров и их параметры../subscriptions.conf Список подписок../client.conf Общие параметры подключения клиента по сети к серверу печати/etc/cups/ppd Описания принтеров PPD/etc/cups/ssl Сертификаты и ключи для доступа по протоколу SSL/var/spool/cups/ Файлы заданий печати../aXXXXX Данные аутентификации пользователя для задания XXXXX../cXXXXX Атрибуты задания XXXXX../dXXXXXX-NNN Файл задания XXXX файла NNN/var/spool/cups/tmp/ Временный каталог для фильтров/var/cache/cups/ Каталог, содержащий оперативную информацию о заданиях печати/var/log/cups/ Журналы работы сервера печати../error_log Основной журнал работы, содержит информацию о событиях, проис-

ходящих на сервере печати../access_log Журнал заданий, содержит информацию о состояниях операций с

сервером печати../page_log Журнал страниц, который содержит информацию о распечатанных

страницах

Page 108: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

108ДВНБ.10001-01 34 01

13.1.4. Система взаимодействия с оборудованиемСистема взаимодействия с оборудованием определяет способ, с помощью ко-

торого данные отправляются на конкретный принтер. Этот интерфейс взаимодей-ствия включает в себя параллельные, последовательные и USB порты, виртуальныйпринтер cups-pdf для печати в файл формата PDF, сетевые принтеры, которые рабо-тают через протоколы IPP, JetDirect (AppSocket), Line Printer Daemon (LPD) и SMB.

13.1.5. Политики контроля операцийВ системе CUPS для проверки доступа при выполнении различных операций

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

Описания этих политик содержатся в основном конфигурационном файле/etc/cups/cupsd.conf.

Изначально доступны политики по умолчанию с именами default и authenticated.

13.1.6. Очереди печатиРабота с отправляемыми на печать заданиями реализуется с помощью оче-

редей печати – механизм организации (определения порядка) и буферизации зада-ний, выводимых на печать. Данный механизм необходим из-за медленности устройствпечати и конкурентного доступа пользователей. Для хранения очередей заданий ис-пользуется каталог /var/spool/cups/.

В качестве очередей печати могут выступать поименованные устройства печа-ти (принтеры) или группы принтеров. При печати данные сначала формируются насервере печати, после чего посылаются на подключенный к нему или зарегистриро-ванный на нем сетевой принтер.

Состояние очереди печати может предоставляться пользователю для отобра-жения хода процесса печати.

13.2. Управление подсистемой печати CUPS

Управление подсистемой печати CUPS включает следующие административ-ные действия:

– изменение параметров конфигурации подсистемы печати cupsd.conf;– просмотр списка очередей печати (группы принтеров, принтеры) и управле-

Page 109: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

109ДВНБ.10001-01 34 01

ние ими;– просмотр списка текущих заданий и управления ими.Для изменения параметров конфигурации подсистемы печати требуется

открыть файл /etc/cups/cupsd.conf с правами администратора текстовым ре-дактором, выполнить редактирование настроек, сохранитьфайл и перезапустить под-систему печати:

sudo systemctl restart cups

13.2.1. Команды управления печатьюДля управления подсистемой печати используются следующие системные ко-

манды:– lpadmin – управление принтерами и классами принтеров;– lp, lpr – постановка заданий в очередь;– lpc, lpstat – проверка текущего состояния очередей печати и планиров-щика;– lpinfo – просмотр доступных устройств и драйверов;– lpmove – перемещение заданий между очередями печати;– lprm – отмена заданий, поставленных в очередь на печать;– lpq – просмотр очередей печати.Управление принтерами (добавление и настройка) может быть выполнена с по-

мощью команды lpadmin:sudo lpadmin -p printer [опции]

Для отправки файлов на печать и управления заданиями печати предназначе-ны команды lp и lpr. Предоставляют схожий набор опций и позволяют отправлять напечать файлы с указанием необходимых параметров задания печати: пользователя,имени, количества копий и т. п.

Для просмотра текущего состояния очередей печати и планировщика предназ-начены команды lpc, lpstat и lpq. Наиболее простой командой является коман-да просмотра заданий печати lpq, другие команды предоставляют большой наборопций для просмотра статуса принтеров и очередей печати с возможностью отборапо заданным критериям.

Page 110: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

110ДВНБ.10001-01 34 01

Отмена задания из очереди печати выполняется командой lprm с указаниемидентификатора задания, который может быть определен, например, с помощью ко-манды lpq. Без указания аргумента отменяется текущее задание.

С помощью команды lpmove задание может быть перенесено в очередьпечати другого принтера. Команда lpinfo позволяет получить список доступныхустройств печати и драйверов для них.

Основные опции команды lpadmin приведены в таблице 24.

Т а б л и ц а 24Опция Описание

-c class Добавляет названный принтер к классу принтеров class. Если класс не суще-ствует, то он создается

-m model Задает стандартный драйвер принтера, обычнофайл PPD.ФайлыPPD обычнохранятся в каталоге /usr/share/cups/model/. Список доступных моделейможно вывести командой lpinf

-o param=value Задание опций и параметров принтера-r class Удаляет указанный принтер из класса class. Если в результате класс стано-

вится пустым, он удаляется-u rule Управление доступом пользователей к принтеру-v device-uri Указывает адрес устройства (URI) для связи с принтером. Список

доступных адресов (URI) можно вывести командой lpinfo-D info Выдает текстовое описание принтера-E Разрешает использование принтера и включает прием заданий-L location Выводит расположение принтера-P ppd-file Указывает локальный файл PPD для драйвера принтера

13.3. Графический интерфейс управления подсистемой печати

Управление списком текущих заданий и очередями печати осуществля-ется с помощью встроенного веб-сервера. Для его функционирования требует-ся установить следующие параметры конфигурации в конфигурационном файле/etc/cups/cupsd.conf:

Listen localhost:<порт>

WebInterface: Yes

По умолчанию веб-сервер функционирует на порту 631.

Page 111: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

111ДВНБ.10001-01 34 01

Для запуска графического средства управления подсистемой печати требует-ся подключиться веб-браузером по адресу: http://localhost:<порт>/admin.

Пример графического окна приложения приведен на рис. 25.

Рис. 25

Для управления очередями печати выполнить «Администрирование – Принте-ры»:

– «Добавить принтер» – запускает диалог добавления принтера, позволяетуказать расположение, драйвер и прочие параметры;– «Найти новый принтер» – запускает поиск принтеров в сети и запускает диа-лог добавления принтера среди найденных;– «Управление принтерами» – отображение уже добавленных в подсистемупечати принтеров с возможностью изменения их параметров.Операция добавления принтера реализована с помощью диалога, в котором

администратор указывает следующие сведения (рис. 26):– протокол работы принтера и его IP-адрес или выбранный принтер среди най-денных автоматически;– дополнительную информацию о принтере (название принтера для пользова-теля, описание, расположение);– производителя и драйвер PPD принтера;

Page 112: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

112ДВНБ.10001-01 34 01

– настройки параметров печати.

Рис. 26

Операция поиска нового принтера реализована схожим образом (рис. 27).

Рис. 27

При этом предлагается выбрать принтер среди найденных по сети подсисте-мой печати без возможности указания произвольного адреса расположения принте-ра.

Page 113: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

113ДВНБ.10001-01 34 01

Нажатие кнопки [Управление принтерами] открывает окно со спискомвсех добавленных в подсистему печати принтеров. Выбор принтера в списке доступ-ных принтеров запускает диалог управления состоянием принтера и изменением егопараметров (рис. 28).

Рис. 28

В выпадающих списках «Обслуживание» и «Администрирование» выбратьнеобходимые действия, например, печать пробной страницы, удаление принтера,установка его по умолчанию.

В секции «Обслуживание» приведены операции по изменению состояния, всекции «Администрирование» – операции по изменению атрибутов принтера.

Для изменения политики безопасности принтера выбрать «Администрирова-ние – Установить параметры по умолчанию». В открывшемся окне в секции «Политики»указать желаемую политику (рис. 29).

Page 114: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

114ДВНБ.10001-01 34 01

Рис. 29

Для просмотра и управления текущими заданиями нажать кнопку[Управление заданиями] (рис. 30).

Рис. 30

В открывшемся окне отобразится список активных задач и элементы управле-ния для сортировки по параметрам.

Page 115: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

115ДВНБ.10001-01 34 01

14. РЕЗЕРВНОЕ КОПИРОВАНИЕ И ВОССТАНОВЛЕНИЕ ДАННЫХ

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

П р и м е ч а н и е. Резервное копирование влияет на работоспособностьсистемы. Резервное копирование и восстановление увеличивает текущую нагрузку насистему, что может вызывать замедление работы системы или недовольство пользо-вателей. Кроме того, в зависимости от вида резервного копирования и восстановле-ния, может требоваться монопольный доступ к системе или даже полная остановка ееработы.

Для обеспечения надежного резервного копирования и восстановления вреальных системах применяется четкое планирование указанных процессов, учиты-вающее все аспекты построения и функционирования системы.

14.1. Утилита rsync

Утилитаrsync предназначена для удаленного копирования (резервного копи-рования) или синхронизациифайлов и каталогов с минимальными затратами трафика.

Все действия выполняются от имени учетной записи администратора с исполь-зованием механизма sudo.

В таблице 25 приведены некоторые наиболее часто используемые опциикоманды rsync.

Т а б л и ц а 25Опция Назначение

-v, --verbose Подробный вывод-z, --compress Сжимать трафик-r, --recursive Выполнять копирование рекурсивно-p, --perms Сохранять дискретные права доступа-t, --times Сохранять время доступа к файлам-g, --group Сохранять группу-o, --owner Сохранять владельца-A, --acls Сохранять списки контроля доступа ACL (включает -p)

Page 116: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

116ДВНБ.10001-01 34 01

Окончание таблицы 25Опция Назначение

-X, --xattrs Сохранять расширенные атрибуты (в том числе уровни конфиденциальности икатегории)

Следующая команда сделает копию домашней директории на 192.168.0.1sudo rsync -vzrptgoAX /home/ [email protected]:/home_bak

ВНИМАНИЕ!Не рекомендуется использовать опцию -L для копирования сим-волических ссылок при создании резервной копии домашних каталогов пользовате-лей.

14.2. Утилита tar

Утилита tar предназначена для архивирования файлов и каталогов.Все действия выполняются от имени учетной записи администратора с исполь-

зованием механизма sudo. Подробное описание команды приведено в man tar.Далее приведены примеры создания и восстановления резервных копий с

использованием утилиты tar.ВНИМАНИЕ! Предполагается, что уже создан пользователь user1 и пользова-

тель уже выполнял вход в систему.Создание администратором архива домашнего каталога пользователя может

быть выполнено с помощью команды:sudo tar --xattrs --acls -cvzf /opt/home.tgz /home/user1

Опция --xattrs означает включение поддержки расширенных атрибутов.Опция --acls означает включение поддержки POSIX ACL. Опции --cvzf необхо-димы для создания архива (create), включения режима отображения обрабатывае-мых файлов (verboze), применения метода сжатия (gzip), указания файла (file),соответственно.

Путь /opt/home.tgz задает место расположения созданного архива и егоимя, путь /home/user1 определяет, что именно будет вложено в архив.

Восстановление выполняется с помощью команды:sudo tar --xattrs

--acls -xvf /opt/home.tgz -C /opt/home2/

Page 117: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

117ДВНБ.10001-01 34 01

Опции --xvf необходимы для извлечения из архива (extract), включе-ния режима отображения обрабатываемых файлов (verboze), указания файла(file), соответственно.

14.3. Система резервного копирования Bacula

Bacula – это система централизованного резервирования информационныхресурсов, основными преимуществами которой являются:

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

вания, архивирования и восстановления. Предлагая широкие возможности для управ-ления хранилищами данных, облегчает поиск и восстановление потерянных или повре-жденных файлов. Благодаря модульной структуре, Bacula масштабируется и можетработать как на малых, так и на крупных системах, состоящих из сотен компьютеров,расположенных в большой сети.

Система резервирования данных Bacula состоит из четырех основных элемен-тов: Director Daemon, StorageDaemon, File Daemon иBacula Console. Все эти элементыреализованы в виде самостоятельных приложений.

Director Daemon (DD) – это центральный элемент системы, осуществляющийуправление ее остальными компонентами. В его задачи входит управление процес-сом резервирования/восстановления данных, обеспечение интерфейса управлениядля администраторов и многое другое.

Storage Daemon (SD) – приложение, отвечающее за чтение/запись данныхнепосредственно на устройства хранения информации. Принимает управляющие ко-манды от DD, а также резервируемые данные от/к File Daemon.

File Daemon (FD) – сервис, выполняющий непосредственное копирование, вос-становление и проверку данных по запросуDirector. File Daemonдолжен быть установ-лен на каждой клиентской машине. File Daemon обменивается информацией с Directorи Storage Daemon.

Page 118: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

118ДВНБ.10001-01 34 01

Bacula Console (BC) – интерфейс администратора сиcтемы. Bacula Consoleможет быть расширена с помощью графических систем управления, которые, какправило, являются всего лишь надстройкой над BC. К таким системам можно отнестиTray Monitor и Bat. Первая устанавливается на компьютере администратора системыи осуществляет наблюдение за работой системы резервирования, а вторая обеспечи-вает возможность управления посредством графического интерфейса.

Bacula Catalog – база данных SQL: MySQL, PostgreSQL, или SQLite для хране-ния метаданных.

Такое структурное деление позволяет организовать очень гибкую системурезервирования, когда Storage Daemon разворачивается на выделенном сервере снесколькими устройствами хранения данных. Также Bacula Director может управлятьнесколькими экземплярами SD, обеспечивая резервирование части данных на одноустройство хранения, а части – на другое.

Все указанные компоненты могут находиться как на одном компьютере, так ина нескольких, объединенных в сеть.

Далее описан пример настройки комплекса программ Bacula.Все действия выполняются от имени учетной записи администратора с исполь-

зованием механизма sudo.В примере использована следующая инфраструктура:– выделенный сервер dd.ex.net с IP-адресом 10.0.0.10 (на нем будет функци-онировать Director Daemon – это главный сервер, осуществляющий резервноекопирование);– выделенный сервер sd.ex.net с IP-адресом 10.0.0.20 (на нем будет функцио-нировать Storage Daemon – это машина, на которой будут размещаться резерв-ные копии данных);– персональный компьютер fd.ex.net с IP-адресом 10.0.0.30 (на нем будетфункционировать File Daemon – это машина, с которой будут копироваться дан-ные и на которую будут восстанавливаться резервные копии данных).Подготовка инфраструктуры для управления системой резервного копирова-

ния выполняется следующим образом:1) установить Postgresql на сервер, где будет работать Director Daemon:

Page 119: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

119ДВНБ.10001-01 34 01

sudo aptitude install postgresql-10

2) предполагается, что на всех машинах изначально установлены все пакеты,касающиеся Bacula, из состава ОС. C помощью менеджера пакетов Synaptic по клю-чевому слову «bacula» установить все пакеты, кроме тех, где в названии фигурирует«-sqlite3»:

– bacula-bscan;– bacula-common;– bacula-common-pgsql;– bacula-console;– bacula-director;– bacula-director-pgsql;– bacula-fd;– bacula-sd;– bacula-server.Также должен быть установлен пакет attr:sudo aptitude install attr

При настройкеBacula появится интерфейс для настройки совместимости с БД,в качестве имени базы указать bacula и пароль bacula.

При настройке базы Bacula может произойти ошибка, на данном этапе необхо-димо ее игнорировать, база будет настроена позже.

П р и м е ч а н и е. Далее в любом случае созданная БД будет перенастроена.3) подготовить БД для Bacula, для чего:– в файле /etc/postgresql/10/main/postgresql.conf параметруlisten_addresses= присвоить значение ’*’;– в файле /etc/postgresql/10/main/pg_hba.conf внести необходи-мые изменения, для простоты можно указать метод trust для всех соедине-ний, удалить любую дополнительную конфигурацию после метода типа mod=;– обязательно добавить host с IP-адресом, где будет работать DirectorDaemon. В случае если все демоны Bacula будут установлены на одну маши-ну, указывать IP-адрес не обязательно, т.к. работа будет идти через localhost.Пример файла pg_hba.conf:local all postgres trust

Page 120: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

120ДВНБ.10001-01 34 01

local all all trust

host all all 127.0.0.1/32 trust

host all all 10.0.0.1/24 trust

– присвоить пароль postgres:sudo passwd postgres

– присвоить для Bacula пароль bacula:sudo passwd bacula

– выполнить перезапуск БД:sudo pg_ctlcluster 10 main restart

– cоздать пользователя БД для работы с Bacula и настроить ему привилегии(выполнять не от привилегированной учетной записи):# psql template1 -U postgres -h 10.0.0.10

template1=# CREATE ROLE bacula;

template1=# ALTER USER bacula PASSWORD ’bacula’;

template1=# ALTER USER bacula LOGIN SUPERUSER CREATEDB

CREATEROLE;

– не завершая работу с интерпретатором psql создать БД и присвоить ей вла-дельца:template1=# CREATE DATABASE bacula;

template1=# ALTER DATABASE bacula OWNER TO bacula;

– на сервере dd.ex.net запустить скрипты, которые создадут все необходимыетаблицы и привилегии:– в скрипте/usr/share/bacula-director/make_postgresql_tablesвнести изменения:db_name=${db_name:-bacula}

psql -U bacula -h 10.0.0.10 -f - -d ${db_name} $*

<<END-OF-DATA

– в/usr/share/bacula-director/grant_postgresql_privilegesскрипте внести изменения:db_user=${db_user:-bacula}

bindir=/usr/bin

db_name=${db_name:-bacula}

db_password=bacula

if [ ”$db_password” != ”” ]; then

pass=”password ’$db_password’”

fi

Page 121: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

121ДВНБ.10001-01 34 01

bindir/psql -U bacula -h 10.0.0.10 -f - -d ${db_name} $*

<<END-OF-DATA

– сохранить изменения и выполнить скрипты:make_postgresql_tables

grant_postgresql_privileges

4) на машине, где будет работать Storage Daemon, необходимо создать ката-лог /back, в котором будут храниться резервные копии данных, и присвоить каталогувладельца bacula:

sudo mkdir /back

sudo chown -R bacula /back

5) на машине, где будет работать File Daemon, необходимо создать каталог/etc2, в который будут восстанавливаться данные из резервной копии:

sudo mkdir /etc2

Если подготовительные настройки выполнены корректно, БД стартует без оши-бок и скрипты выполнились без ошибок, то можно приступить к настройке Bacula.

Подготовка Bacula к работе заключается в настройке каждого компонента вотдельности и последующей настройке их взаимодействия.

Далее приступить к настройке Director Daemon в конфигурационном фай-ле /etc/bacula/bacula-dir сервера dd.ex.net. В первую очередь определитьосновные параметры в секции Director. На начальном этапе важно установить пара-метры Name и Password. Name задает уникальное имя Director Daemon, а Password- пароль, который будет использоваться при соединениях BC с DD. Остальные пара-метры можно оставить в значениях по умолчанию.

Director { # define myself

Name = bacula-dir

DIRport = 9101 # where we listen for UA connections

QueryFile = ”/etc/bacula/scripts/query.sql”

WorkingDirectory = ”/var/lib/bacula”

PidDirectory = ”/var/run/bacula”

Maximum Concurrent Jobs = 1

Password = ”1” # Console password

Messages = Daemon

DirAddress = 10.0.0.10

}

Следующей группой параметров, которые необходимо определить, является

Page 122: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

122ДВНБ.10001-01 34 01

секция Catalog. Здесь необходимо указать реквизиты доступа к БД, а также назна-чить уникальное имя данного Bacula Catalog с помощью параметра Name.

Catalog {

Name = MyCatalog

# Uncomment the following line if you want the dbi

PS. driver

# dbdriver = ”dbi:sqlite3”; dbaddress = 127.0.0.1; dbport

=↪→

dbname = ”bacula”; dbuser = ”bacula”; dbpassword =

”bacula”↪→

DB Address = 10.0.0.10

}

Определить SD, на который будет производиться передача данных для даль-нейшей записи на устройство хранения. Storage Daemon настроен и готов к ра-боте, необходимо определить реквизиты доступа к нему в секции Storage файлаbacula-dir.conf. Основные параметры:

1) Name – уникальное имя, использующееся для адресации секции Storage врамках файла bacula-dir.conf;

2) Device и MediaType дублируют одноименные параметры файлаbacula-sd.conf;3) Password содержит пароль, который будет использоваться при подключе-

нии к Storage Daemon.Storage {

Name = File

# Do not use ”localhost” here

Address = 10.0.0.20 # N.B. Use a fully qualified name here

SDPort = 9103

Password = ”1”

Device = FileStorage

Media Type = File

}

Секция Pool определяет набор носителей информации и параметры, опреде-ляющие то, как SD будет их обрабатывать. Каждый Pool взаимодействует с устрой-ством хранения данных, и поэтому необходимо создать столько же пулов, сколько

Page 123: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

123ДВНБ.10001-01 34 01

определено устройств хранения. Фактически если для каждого File Daemon вы опре-деляете отдельное устройство, то для каждого FD необходимо определить и Pool.

Основные параметры:1) Name определяет уникальное имя пула;2) Pool Type определяет тип, и для резервных копий должен быть установ-

лен в значение Backup;3) Maximum Volume Jobs рекомендуется установить в значение 1. Это

будет означать, что в рамках одного носителя данных могут быть размещены резерв-ные данные, полученные в ходе выполнения только одного задания. Носитель данных- это устройство, на которое непосредственно записываются данные (оптические дис-ки, магнитные ленты). Если размер созданной резервной копии много меньше размераносителя, то имеет смысл сохранить на него и другие копии, которые будут создавать-ся в будущем. Но если говорится о файлах, то желательно придерживаться правила«один файл - одна копия», т. е. в одном файле Bacula должны храниться резервныеданные, которые были сформированы в рамках выполнения одного задания. Для каж-дого последующего будут создаваться новые файлы;

4) Volume Retention – время, по прошествии которого, данные о резервнойкопии, хранящейся на носителе, будут удалены из каталога. Для обеспечения рабо-тоспособности Bacula необходимо помнить о том, что информация обо всех зарезер-вированных файлах хранится в БД, по записи на каждый файл. Если резервируют-ся тысячи файлов, то очень скоро БД станет огромной, что может затруднить работуBacula. Поэтому очень важно своевременно очищать базу от устаревшей информации.При этом сам носитель информации не будет очищен автоматически.Он будет промар-кирован как устаревший, но всегда можно будет использовать его для восстановленияданных в ручном режиме;

5) Maximum Volumes – максимальное количество носителей (в нашем случаефайлов), доступных в данном пуле. Параметр Recycle указывает на необходимостьповторного использования носителей, помеченных как устаревшие. При этом реаль-ная перезапись носителя произойдет лишь в случае, когда свободных носителей неостанется. Свободные носители определяются из параметра Maximum Volumes;

6) AutoPrune указывает на необходимость удаления устаревших записей из

Page 124: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

124ДВНБ.10001-01 34 01

Bacula Catalog автоматически после завершения выполнения очередного задания;7) Label Format определяет префикс, который будет использован Bacula

для маркирования носителей информации, в нашем случае – для именования файлов;8) Storage указывает на имя устройства хранения данных, указанного в

параметре Name секции Storage файла bacula-dir.conf.

Pool {

Name = Default

Pool Type = Backup

Recycle = yes # Bacula can automatically recycle Volumes

AutoPrune = yes # Prune expired volumes

Volume Retention = 1 month # one year

Maximum Volume Jobs = 1

Maximum Volumes = 32

Storage = File

Label Format = ”volume-”

}

Секция FileSet позволяет предопределить несколько наборов резервируе-мых файлов. Например, один набор для Windows, другой – для Linux или один длясерверов, а другой – для рабочих станций. Параметр Name определяет уникальноеимя набора.

Секция Include содержит пути к резервируемым файлам/каталогам, аExclude – пути к файлам и каталогам, которые необходимо исключить из списка ре-зервируемых. В секции Include возможна секция Options, в которой определяют-ся параметры резервирования.

Основные параметры:1) Signature указывает алгоритм вычисления контрольных сумм файлов;2) Compression указывает алгоритм компрессии файлов;3) Recurse указывает на необходимость рекурсивного резервирования,

включая подкаталоги и файлы;4) File указывает на каталог, который копируется;5) Xattrsupport указывает на возможность включения поддержки расши-

ренных атрибутов, это обязательный параметр для работы с уровнями конфиденци-альности и категориями.

Page 125: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

125ДВНБ.10001-01 34 01

FileSet {

Name = ”Catalog”

Include {

Options {

signature = MD5

compression = GZIP

# recurse = yes

aclsupport = yes

xattrsupport = yes

}

File = /etc

}

}

Все настройки связываются воедино с помощью секции Job, в которой даетсязадание планировщику по выполнению резервирования данных.

Основные параметры:1) Type указывает на тип задания. Типов существует несколько. Здесь доста-

точно указать Backup;2) Schedule указывает на предопределенное расписание, согласно которо-

му будет выполняться резервирование данных. Все расписания определены здесьже, в файле bacula-dir.conf;

3) Where указывает на каталог, в котором будут восстанавливаться данные изрезервной копии;

4) Write Bootstrap указывает путь к файлу, в который будет записывать-ся информация, с помощью которой данные могут быть восстановлены из резервнойкопии без наличия подключения к Bacula Catalog. Вместо %n будет подставлено зна-чение параметра Name.

Schedule {

Name = ”DailyCycle”

Run = Full daily at 16:10

# Run = Differential 2nd-5th sun at 23:05

Run = Incremental mon-sat at 23:05

}

Page 126: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

126ДВНБ.10001-01 34 01

Job {

Name = ”RestoreFiles”

Type = Restore

Client= bacula-fd

FileSet=”Catalog”

Storage = File

Pool = Default

Messages = Standard

Where = /etc2

}

Job {

Name = ”BackupCilent1”

Type = Backup

Client = bacula-fd

FileSet = ”Catalog”

Schedule = ”DailyCycle”

Messages = Standard

Pool = Default

Write Bootstrap = ”/var/lib/bacula/Client1.bsr”

Priority = 1

}

Указать параметры единственного Агента.Client {

Name = bacula-fd

Address = 10.0.0.30

FDPort = 9102

Catalog = MyCatalog

Password = ”1” # password for FileDaemon

File Retention = 30 days # 30 days

Job Retention = 6 months # six months

AutoPrune = yes # Prune expired Jobs/Files

}

Закомментировать все остальные секции:Job,JobDefs,Client иConsole,на данном этапе они не понадобятся. Трафик данных будет идти по тем портам, кото-рые указаны в конфигурационных файлах каждого из компонентов Bacula.

Page 127: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

127ДВНБ.10001-01 34 01

Далее настроить доступ к DD со стороны Bacula Console в файле/etc/bacula/bconsole.conf сервера dd.ex.net:

Director {

Name = bacula-dir

DIRport = 9101

address = 10.0.0.10

Password = ”1”

}

На машине, где будет Director Daemon удалить пакеты bacula-sd иbacula-fd:

sudo apt-get remove bacula-sd

sudo apt-get remove bacula-fd

Конфигурационные файлы bacula-sd и bacula-fd в /etc/bacula сле-дует либо переименовать, либо удалить. Сервисы bacula-sd и bacula-fd следуетостановить:

sudo /etc/init.d/bacula-sd stop

sudo /etc/init.d/bacula-fd stop

Далее начать подготовку Storage Daemon, который будет отвечать за непо-средственную работу с устройством хранения данных. Bacula поддерживает широкийспектр устройств, начиная от оптических дисков и заканчивая полнофункциональны-ми ленточными библиотеками. В примере самый распространенный вариант – обыч-ный жесткий диск с существующей ФС (например, ext3). Итак, на сервере sd.ex.netнеобходимо отредактировать файл /etc/bacula/bacula-sd.conf. В секции ос-новных параметров – Storage необходимо определить параметрName, который задаетуникальное имя Storage Daemon. Остальные параметры можно оставить в значенияхпо умолчанию. Секция Director необходима для указания уникального имени DD и па-роля, с которым этот DD может подключаться к SD. Секций может быть несколько,что дает возможность использовать единый сервер хранения данных для несколькихсистем резервирования. Все остальные секции Director, найденные в файле, заком-ментировать.

Storage { # definition of myself

Name = bacula-sd

SDPort = 9103 # Director’s port

Page 128: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

128ДВНБ.10001-01 34 01

WorkingDirectory = ”/var/lib/bacula”

Pid Directory = ”/var/run/bacula”

Maximum Concurrent Jobs = 20

SDAddress = 10.0.0.20

}

Director {

Name = bacula-dir

Password = ”1”

}

Но основные настройки, определяющие взаимодействие с устройствами хра-нения, находятся в секцииDevice. Ниже приведены параметры, необходимые для хра-нения резервных копий в рамках существующейФС, подключенной в каталог /back:

1) Name определяет уникальное имя подключенного устройства. Если плани-руется создавать изолированные друг от друга резервные копии для каждого из FileDaemon, то необходимо создать несколько секций Device с уникальными именами. Впротивном случае резервируемые файлы со всех FD будут размещаться в одном и томже файле, что может затруднить дальнейшее обслуживание системы;

2) Media Type определяет произвольное уникальное имя, которое будет ис-пользоватьсяBacula при восстановленииданных. Согласно ему, определяется устрой-ство хранения, с которого будет производиться восстановление. Если резервные ко-пии хранятся в файлах, то для каждой секции Device должен быть задан уникальныйMedia Type;

3) Archive Device указывает путь к файлу устройства в каталоге /dev илипуть к каталогу, в котором будут размещаться резервные копии;

4) Device Type определяет тип устройства. Для размещения в существую-щей ФС указывается File;

5) Random Access указывает на возможность случайной (непоследователь-ной) адресации. Для файлов указывается Yes;

6) RemovableMedia указывает, возможно ли извлечение устройства хране-ния. Необходимо для ленточных устройств, приводов оптических дисков и т.д.

Дляфайлов устанавливается в значение No. Параметр LabelMedia указыва-ет на необходимость автоматического маркирования носителей информации.

Device {

Page 129: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

129ДВНБ.10001-01 34 01

Name = FileStorage

Media Type = File

Archive Device = /back

LabelMedia = yes; # lets Bacula label unlabeled media

Random Access = Yes;

AutomaticMount = yes; # when device opened, read it

RemovableMedia = no;

AlwaysOpen = no;

}

Для базовой настройки этого достаточно.На машине, где будет Storage Daemon, удалить пакет bacula-fd:sudo apt-get remove bacula-fd

Конфигурационный файл bacula-fd в /etc/bacula следует либо пере-именовать, либо удалить. Сервис bacula-fd следует остановить:

sudo /etc/init.d/bacula-fd stop

Для настройки File Daemon на рабочей станции fd.ex.net используется файл/etc/bacula/bacula-fd, в котором для базовой настройки достаточно лишьопределить параметры секции Director, где указывается пароль, который будет ис-пользовать DD при подключении к FD, а также секции File Daemon, где указываютсянастройки FD. Все остальные секции Director, найденные вфайле, необходимо заком-ментировать.

Director {

Name = bacula-dir

Password = ”1”

}

В секции FileDaemon на данном этапе необходим только параметр Name, вкотором указывается уникальное имя File Daemon:

FileDaemon { # this is me

Name = bacula-fd

FDport = 9102 # where we listen for the director

WorkingDirectory = /var/lib/bacula

Pid Directory = /var/run/bacula

Maximum Concurrent Jobs = 20

FDAddress = 10.0.0.30

}

Page 130: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

130ДВНБ.10001-01 34 01

На машине, где будет File Daemon, удалить пакет bacula-sd:sudo apt-get remove bacula-sd

Конфигурационный файл bacula-sd в /etc/bacula следует либо пере-именовать, либо удалить.

Сервис bacula-sd остановить:sudo /etc/init.d/bacula-sd stop

Далее запустить все компоненты соответствующими командами, данными насоответствующих серверах:

sudo /etc/init.d/bacula-director restart

sudo /etc/init.d/bacula-sd restart

sudo /etc/init.d/bacula-fd restart

После этого Bacula будет работать. Управление Bacula осуществляется черезbconsole. Настройки каталогов, заданий, расписаний и прочие задаются в конфи-гурационных файлах.

Для тестовой проверки необходимо:– выполнить bconsole;– выполнить run;– выбрать job 1;– войти в меню, набрав mod;– выбрать 1 (Level);– выбрать 1 (Full);– подтвердить выполнение, набрав yes.Будет создана резервная копия данных в каталоге /back на машине с Storage

Daemon.Для восстановления объектов ФС необходимо запустить консоль управления,

выполнив команду:sudo bconsole

Для восстановления данных из резервной копии необходимо:– выполнить restore;– выбрать пункт 12;– ввести номер job id;

Page 131: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

131ДВНБ.10001-01 34 01

– указать параметр маркировки mark *;– подтвердить выполнение командой done.Данные из резервной копии будут восстановлены в каталоге /etc2 на машине

с File Daemon.Также управление Bacula возможно с помощью графической утилиты

bacula-console-qt, ее конфигурационный файл расположен в/etc/bacula/bat.

Page 132: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

132ДВНБ.10001-01 34 01

15. ПОДДЕРЖКА СРЕДСТВ ДВУХФАКТОРНОЙ АУТЕНТИФИКАЦИИ

Для повышения надежности аутентификации и снижения риска компромета-ции паролей применяется принцип многофакторной аутентификации.

Многофакторная аутентификация является расширенным видом аутентифи-кации, при котором используется более одного «доказательства механизма аутенти-фикации».

Как правило, выделяют 3 фактора аутентификации:– знание – информация, которую знает субъект: ввод пароля или пин-кода.– владение – вещь, которой обладает субъект: предоставление физическогоустройства или носителя (смарт-карта, USB-токен, и т.п.).– свойство, которым обладает субъект–биометрия, природные уникальные от-личия: лицо, отпечатки пальцев, радужная оболочка глаз, капиллярные узоры,последовательность ДНК.В большинстве случаев в качестве многофакторной аутентификации приме-

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

15.1. Электронный идентификатор Guardant ID

Для применения в системах, обрабатывающих информацию ограниченногодоступа, предназначен электронный идентификатор Guardant ID.

Электронный идентификатор Guardant ID – это устройство, подключаемое кUSB-порту компьютера (непосредственно или через удлинитель) и служащее для хра-нения идентификационных данных пользователя в энергонезависимой памяти.

Особенностью устройства является наличие уникального неизменяемого иден-тификатора и области защищенной энергонезависимой памяти, для доступа к которойиспользуется кодирование с уникальным для каждого Guardant ID паролем.

Для идентификации пользователя при выполнении команд чтения/записи мо-жет быть использован PIN-код длиной от 1 до 32 Байт. PIN-код может быть изменен

Page 133: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

133ДВНБ.10001-01 34 01

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

ной командой, требующей предъявления особого Master PIN-кода. Master PIN-код за-дается не этапе производства Guardant ID и не может быть считан или изменен.

В настоящее время применяются электронные идентификаторы Guardant ID собъемом памяти 16 КБ.

15.2. Применение Guardant ID

ЭлектронныйидентификаторGuardant ID является только персональнымиден-тификатором с защищенной паролем памятью. Для реализации на его основе меха-низмов двухфакторной аутентификации требуется:

– наличие средств управления электронными идентификаторами для выпол-нения операций инициализации, выдачи пользователям, назначения и сменыпароля/PIN и проверки функционирования;– обеспечение контроля сложности и использования пароля (PIN), посколькупароль доступа к памяти и признак необходимости его проверки не проверя-ются на корректность устройством и доступны для изменения самим пользова-телем;– сопоставление пользователя с устройством, так как само устройство не со-держит никакой информации о своей принадлежности;– наличие PAM модуля аутентификации, обеспечивающего применение иден-тификатора для контроля доступа при входе пользователя с систему.Перечисленные выше задачи реализуются следующим образом.Для сопоставления пользователя с устройством используется реестр

выданных (зарегистрированных) идентификаторов, расположенный в файле/etc/grdid/dongles.

При инициализации идентификатора, он регистрируется в реестре, при очист-ке – удаляется из него.

Корректность PIN и его применения производятся утилитой администрирова-ния и PAM модулем с использованием настроек сложности пароля, заданных в кон-фигурационном файле /etc/grdid/grdid.conf, например:

minlen=8

Page 134: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

134ДВНБ.10001-01 34 01

dcredit=0

ucredit=0

lcredit=0

ocredit=0

minclass=0

maxrepeat=0

ignoreusers=root

где конфигурационные параметры совпадают с аналогичными дляpam_cracklib:

– minlen=N – минимальная длина для пароля учетной записи, может зависетьот остальных параметров;– dcredit=N – количество числовых символов; значение большее нуля зада-ет максимальное количество, при этом каждый символ уменьшает требованиек минимальной длине пароля, значение меньшее нуля задает минимальное ко-личество символов такого типа;– ucredit=N – количество символов верхнего регистра; значение большее ну-ля задает максимальное количество, при этом каждый символ уменьшает тре-бование к минимальной длине пароля, значение меньшее нуля задает мини-мальное количество символов такого типа;– lcredit=N – количество символов нижнего регистра; значение большее ну-ля задает максимальное количество, при этом каждый символ уменьшает тре-бование к минимальной длине пароля, значение меньшее нуля задает мини-мальное количество символов такого типа;– ocredit=N – количество остальных символов; значение большее нуля зада-ет максимальное количество, при этом каждый символ уменьшает требованиек минимальной длине пароля, значение меньшее нуля задает минимальное ко-личество символов такого типа;– minclass=N – минимальное число разных типов символов;– maxrepeat=N – максимально число идущих подряд одинаковых символов;– ignoreusers=root – список пользователей через запятую, для которыхразрешен вход в режиме strict, если для них не зарегистрирован идентифика-тор.

Page 135: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

135ДВНБ.10001-01 34 01

ВНИМАНИЕ! По умолчанию параметр ignoreusers содержит значение root, чтоможет снизить защищенность. Рекомендуется выдавать идентификаторы пользова-телям с привилегиями администрирования и не указывать этих пользователей в пара-метре ignoreusers.

При входе пользователя PAM модуль производит следующие действия:– определяет необходимость применения Guardant ID входящим пользовате-лем (по реестру выданных устройств);– проверяет или предлагает предъявить устройство с соответствующим номе-ром (если он отсутствует или предъявлен неверный);– проверяет идентификатор устройства и введенный PIN пользователя;– читает с устройства необходимую информацию (хеш, PIN и слово состояния);– проверяет PIN и слово состояния (длину и сложность PIN, признак его про-верки);– при успешном выполнении ранее перечисленных действий PAM модуль раз-решает пользователю вход в систему.Таким образом, достигаются следующие цели:– устройство сопоставляется с пользователем;– с помощью локального реестра обеспечивается разграничение по местамвхода;– при входе пользователю предлагается предъявить конкретное устройство;– пользователь имеет возможность смены своего PIN;– пользователь не имеет возможности отключить проверку PIN или упроститьего по длине или сложности;– незарегистрированные устройства и устройства, для которых была сброше-на проверка PIN или PIN небезопасен, не принимаются для входа.П р и м е ч а н и е. Существует возможность ограничить пользователя только

операциями чтения с устройства без возможности записи (с помощью правил udev),что повысит безопасность, но не позволит ему самостоятельно менять PIN.

15.3. Управление электронными идентификаторами – grdid-tool

Для управления электронными идентификаторамиGuardant ID предназначенаутилита grdid-tool, имеющая следующий формат вызова:

Page 136: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

136ДВНБ.10001-01 34 01

sudo grdid-tool [опции]

Основным назначением утилиты является инициализация и выдача устройствпользователям. При необходимости утилита может быть использована самим пользо-вателем для смены своего PIN. При этом у него будет запрошено старое значение PIN.

В таблице 26 приведены основные опции команды grdid-tool.

Т а б л и ц а 26 – Опции команды grdid-toolОпция Описание

-h, --help Справка по способу вызова и опциям команды-v, --verbose Подробный отчет о выполняемых действиях-f, --force Не спрашивать подтверждение-i, --info Отображение информации об идентификаторе-e, --erase Стирание идентификатора. При успешном выполнении операции иден-

тификатор удаляется из реестра выданных идентификаторов--init-pin Инициализация PIN пользователя, требует задания пользователя

опцией -u. При успешном выполнении операции идентификатор реги-стрируется в реестре выданных идентификаторов

--verify-pin Проверить PIN--change-pin Смена PIN пользователя (самим пользователем, требует старое значе-

ние PIN)--so-pin ЗНАЧЕНИЕ PIN администратора (Master PIN код), может быть задан как

env:VARIABLE, тогда значение будет взято из соответствующейпеременной окружения

--pin ЗНАЧЕНИЕ PIN пользователя, может быть задан как env:VARIABLE, тогда значе-ние будет взято из соответствующей переменной окружения

-u ПОЛЬЗОВАТЕЛЬ,--user ПОЛЬЗОВАТЕЛЬ

Использовать в качестве владельца идентификатора учетную записьПОЛЬЗОВАТЕЛЬ

-l, --list Вывести список зарегистрированных (выданных) идентификаторов-r, --unregister Удалить запись о ключе пользователя

15.4. Использование Guardant ID для доступа к системе – pam_grdid

Применение идентификатора для контроля доступа при входе пользователя всистему обеспечивается специальным PAM модулем аутентификации pam_grdid.

При попытке входа в систему у пользователя запрашивается PIN представ-ленного электронного идентификатора Guardant ID. В случае соответствия представ-ленного идентификатора пользователю и успешной проверки PIN процедура входа

Page 137: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

137ДВНБ.10001-01 34 01

продолжается. В противном случае происходит отказ доступа к системе с соответ-ствующей регистрацией попытки несанкционированного доступа. Указанный модульдолжен быть встроен в требуемые PAM сценарии следующим образом (на примере/etc/pam.d/common-auth):

# here are the per-package modules (the ”Primary” block)

auth [success=3 default=die

ignore=ignore] pam_grdid.so↪→

auth [success=2 default=ignore] pam_unix.so nullok_secure

auth [success=1 default=ignore] pam_winbind.so krb5_auth

...↪→

При использовании модуля могут применяться следующие опции:– debug – вывод отладочной информации;– try_only – попытка проведения проверки (возможен вход без предостав-ления устройства);– no_prompt – не выводить предложение подключить идентификатор;– strict – строгий режим: запрет входа без использования идентификатораGuardant ID;– set_pass – установить введенный PIN в качестве AUTHTOK для последу-ющих модулей аутентификации.П р и м е ч а н и е. При необходимости может быть реализован сквозной вход

в систему с помощью опции set_pass, поскольку в этом случае PAM модуль сохраняетPIN в PAM стеке для других модулей. При этом в конфигурационном параметре «сро-ки вызова модуля для опции success» должно быть задано значение ignore. В случаезадания PIN равного паролю Linux или Kerberos будет осуществляться сквозной входбез дополнительных запросов паролей. При этом фрагмент PAM сценария может вы-глядеть следующим образом:

auth [success=ignore default=die ignore=ignore]

pam_grdid.so set_pass↪→

auth [success=2 default=ignore] pam_unix.so

use_first_pass↪→

При необходимости с помощью ключей PAM модуля можно настроить желае-мый режим использования двухфакторной аутентификации (таблица 27).

Page 138: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

138ДВНБ.10001-01 34 01

Т а б л и ц а 27

Режим no_prompt Вход пользователей, неимеющиъ Guardant ID

Общий

Предлагается подключитьидентификатор, вход поPIN, при неверном PINотказ входа

Используется подключен-ный идентификатор, вход поPIN, если идентификатор непредъявлен или неверныйPIN – отказ входа

Стандартным способом попаролю

try_only

Предлагается подключитьидентификатор,вход поPIN, при неверном PINпереход на другие спо-собы аутентификации (попаролю)

Используется подключен-ный идентификатор, вход поPIN, если идентификатор непредъявлен или неверныйPIN – переход на другиеспособы аутентификации (попаролю)

Стандартным способом попаролю

strict

Предлагается подключитьидентификатор,вход поPIN, при неверном PINотказ входа

Используется подключен-ный идентификатор, вход поPIN, если идентификатор непредъявлен или неверныйPIN – отказ входа

Запрещен, кроме пользова-телей указанных в конфи-гурационном файле пара-метром ignoreusers

15.5. Настройка SSH для доступа с использованием Guardant ID

Для корректной работы удаленного входа с помощью SSH необходимо выпол-нить следующие изменения в конфигурационном файле /etc/ssh/sshd.conf:

– включить параметр ChallengeResponseAuthentication в on;– выключить параметр PasswordAutentication.

Page 139: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

139ДВНБ.10001-01 34 01

16. СРЕДСТВА ОРГАНИЗАЦИИ ДОМЕНА

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

Организация домена позволяет обеспечить:– единую среду именования связанных в одной сети объектов (компьютеров,ресурсов, учетных записей пользователей);– сквозную аутентификацию в сети;– централизацию хранения информации об объектах домена и окружениипользователей;– единообразие настройки пользовательской рабочей среды;– централизованное администрирование и управление.Далее описывается совместимая с Active Directory реализация на основе про-

граммного пакета с открытым исходным кодом Samba 4.Основными компонентами являются следующие технологии и реализующие их

сетевые службы:– LDAP-совместимая служба каталогов для централизованного хранения ин-формации о структуре домена и свойствах его объектов;– служба доверенной аутентификации Kerberos V5;– служба системы доменных имен DNS;– служба файлового сервера Samba/CIFS.Для обеспечения задач организации домена применяются утилиты программ-

ного пакета с открытым исходным кодом Samba 4 и набор дополнительных программ-ных средств (в том числе с графическим пользовательским интерфейсом), облегчаю-щих создание и администрирование домена.

Page 140: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

140ДВНБ.10001-01 34 01

16.1. Состав

Средства организации домена включают в себя пакеты, приведенные в табли-це 28.

Т а б л и ц а 28Наименование Описание

ndds-ctl Утилита для создания/удаления и управления контроллером доменаndds-ctl-ness Расширение для утилиты ndds-ctl для управления мандатными атрибута-

ми пользователейndds-client Утилита для ввода/вывода хоста в домен и управления клиентской частьюndds-admin-srv Сервер администрированияndds-admin-srv-

configure

Скрипт принудительного переконфигурирования сервера администрирова-ния

ndds-admin Графическая часть утилиты администрирования

16.2. Установка

Пакеты ndds-ctl, ndds-ctl-ness и ndds-admin-srv должны бытьустановлены на сервере, на котором будет развернут контроллер домена.

Пакет ndds-client устанавливается на клиентские рабочие станции, кото-рые будут входить в домен.

Пакетndds-admin устанавливается на рабочую станциюадминистратора до-мена.

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

16.3. Настройка

После успешной установки пакетов по организации домена утилиты полностьюготовы к работе, дополнительные настройки не требуются.

При включенном межсетевом экране, на контроллере домена необходимо вприложении «Управление межсетевым экраном» импортировать правила для коррект-ной работы служб.

Правила находятся в /usr/share/ndds-ctl/ndds_ufw_rules.sh.Скрипт ndds-admin-srv-configure служит для принудительного пере-

Page 141: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

141ДВНБ.10001-01 34 01

конфигурирования серверной части утилиты администрирования.

16.4. Администрирование домена

Управление доменом включает в себя операции по созданию домена, измене-нию состава учетных записей объектов домена (компьютеров, пользователей, серви-сов), настройке параметров аутентификации и внешних отношений с другими домена-ми.

Раздел содержит описание конкретных операций по управлению доменом спомощью утилит средств организации домена.

16.4.1. Создание домена (инициализация контролера домена)Управление доменом осуществляется средствами утилиты командной строки

ndds-ctl, которая включает в себя ряд команд, исполнение которых задается клю-чами, указанными в таблице 29.

Т а б л и ц а 29Команда Описание

init Инициализация контроллера доменаjoin Присоединение контроллера Samba к Windows доменуdemote Понижение прав контроллера доменаcreatekeytab Создание keytab файлаremove Удаление контроллера доменаstart Запуск служб контроллера доменаstop Остановка служб контроллера доменаrestart Перезапуск служб контроллера доменаbackup Создание резервной копииrestore Восстановление из резервной копииstatus Текущий статус служб контроллера доменаconfig Текущая конфигурация контроллера домена

Для инициализации контроллера домена следует выполнить команду:sudo ndds-ctl init

Данная команда может выполняться в двух режимах, интерактивном (по умол-чанию) и «тихом» (при указании ключа –force). При выборе интерактивного режима,будут запрошены необходимые для создания домена параметры. В случае выбора

Page 142: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

142ДВНБ.10001-01 34 01

«тихого» режима, требуется с помощью соответствующих ключей задать необходимыепараметры (таблица 30).

Т а б л и ц а 30Ключ Описание

--interface INTERFACE Имя сетевого интерфейса--address ADDRESS IP адрес--mask MASK Маска сети--dns DNS Адрес DNS сервера--domain DOMAIN Имя домена--partition PARTITION Раздел для общих файлов--id_range ID_RANGE Диапазон идентификаторов пользователей и групп (Разделитель «,»)--adminpass ADMINPASS Пароль администратора

В процессе инициализации контроллера домена на экране будут появлятьсяуведомления о настраиваемом в данный момент сервисе и результат настройки. Вы-полняемые действия фиксируются в лог-файле. При этом конфигурируются следу-ющие системные файлы (с сохранением исходных версий с суффиксом «.orig») (см.таблицу 31).

Т а б л и ц а 31Файл Описание

/etc/fstab Файл с опциями монтирования/etc/network/interfaces Базовый файл с сетевыми настройками/etc/network.d/<domain_name>_on_<interface> Файл с сетевыми настройками контрол-

лера домена/etc/hosts Файл с алиасами доменных имен/etc/dhcp/dhclient.conf Файл для конфигурации resolv.conf/etc/ntp.conf Файл конфигурации сервера синхрони-

зации времени/etc/samba/smb.conf Файл конфигурации samba/etc/krb5.conf Файл конфигурации Kerberos5/etc/security/limits.conf Файл с настройками лимитов для поль-

зователей и групп

Для удаления контроллера домена выполнить команду:sudo ndds-ctl remove

Page 143: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

143ДВНБ.10001-01 34 01

При удалении контроллера домена удаляются все конфигурационные фай-лы контроллера домена и возвращаются к исходному состоянию конфигурационныефайлы, измененные при инициализации.

Для присоединения контроллера домена Samba к существующему домену (на-пример, построенном на Windows) следует выполнить команду:

sudo ndds-ctl join

Данная команда может выполняться в двух режимах, интерактивном (по умол-чанию) и «тихом» (при указании ключа –force). При выборе интерактивного режима,будут запрошены необходимые для присоединения домена параметры. В случае вы-бора «тихого» режима, требуется с помощью соответствующих ключей задать необхо-димые параметры (таблица 32).

Т а б л и ц а 32Ключ Описание

-f, --force «Тихий» режим--dc-address IP адрес контроллера домена--domain Имя домена--interface Имя сетевого интерфейса--address IP адрес хоста--mask Маска сети--partition Раздел для общих файлов--admin Имя администратора домена--adminpass Пароль администратора домена

Для понижения прав контроллера домена (при этом он перестает выполнятьфункции контроллера и становиться просто рабочей станцией в домене) необходимовыполнить команду:

sudo ndds-ctl demote

Во время выполнения команды запрашивается логин администратора домена иего пароль. Эти аргументы можно задать с помощью ключей «–admin» и «–adminpass»соответственно.

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

sudo ndds-ctl createkeytab

Page 144: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

144ДВНБ.10001-01 34 01

Данная команда требует указания обязательного ключа «–principal», спомощью которого указывается имя сервисной записи, для которой будет со-здан файл ключей. По умолчанию файл ключей сохраняется в директории/etc/ndds_keytabs, с помощью ключа «–out» можно указать произвольныйпуть для создания файла ключей.

Пример вызова:sudo ndds-ctl createkeytab --principal postgres

В данном случае будет создан файл ключей для сервисной записи postgres.Файл будет создан по пути /etc/ndds_keytabs/.Предусмотрены 4 уровня журналирования действий, которые задаются соот-

ветствующими ключами:– verbose – фиксируются все действия с подробным описанием;– quiet – фиксируются только сообщений об ошибках;– debug – дополнительно выводиться отладочная информация.По умолчанию выводятся информационные сообщения и сообщения об ошиб-

ках.

16.4.2. Управление составом компьютеров доменаУправление составом рабочих станций в домене осуществляется средствами

утилиты командной строки ndds-client, которая включает в себя ряд команд, исполне-ние которых задается ключами, указанными в таблице 33.

Т а б л и ц а 33Команда Описание

join Ввод рабочей станции в доменunjoin Вывод рабочей станции из доменаstart Запуск служб клиента доменаstop Остановка служб клиента доменаrestart Перезапуск служб клиента доменаstatus Текущий статус служб клиента доменаconfig Текущая конфигурация клиента доменаcreatekeytab Создание файла ключей

Все выполняемые действия фиксируются в лог файле в соответствии с задан-

Page 145: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

145ДВНБ.10001-01 34 01

ным уровнем детализации.Для корректного добавления рабочей станции в состав домена необходимо

синхронизировать время с контроллером домена.Синхронизация выполняется в автоматическом режиме в процессе добавле-

ния. Для принудительной синхронизации времени в ручном режиме следует выпол-нить команду:

sudo net time set -S <IP адрес контроллера домена>

При этом сетевой интерфейс рабочей станции должен быть настроен в соот-ветствии с сетевыми настройками домена.

Для ввода рабочей станции в домен следует выполнить команду:ndds-client join

Данная команда может выполняться в двух режимах, интерактивном (по умол-чанию) и «тихом» (при указании ключа –force). При выборе интерактивного режима,будут запрошены необходимые для создания домена параметры. В случае выбора«тихого» режима, требуется с помощью соответствующих ключей задать необходимыепараметры (таблица 34).

Т а б л и ц а 34Ключ Описание

--interface INTERFACE Имя сетевого интерфейса--address HOST_ADDRESS IP адрес рабочей станции--mask MASK Маска сети--dns DNS IP адрес DNS сервера--domain DOMAIN Имя домена--id_range ID_RANGE Диапазон идентификаторов пользователей и групп (разделитель

«,»)--admin ADMIN Имя пользователя с правами администратора--adminpass ADMINPASS Пароль администратора

Для вывода рабочей станции из домена выполнить команду:ndds-client unjoin

Page 146: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

146ДВНБ.10001-01 34 01

16.4.3. Создание файла ключей сервисаДля создания файла ключей следует выполнить команду (с помощью команды

sudo):sudo ndds-client createkeytab

Данная команда требует указания обязательного ключа «–principal», спомощью которого указывается имя сервисной записи, для которой будет со-здан файл ключей. По умолчанию файл ключей сохраняется в директории/etc/ndds_keytabs, с помощью ключа «–out» можно указать произвольныйпуть для создания файла ключей.

Пример вызова:sudo ndds-client createkeytab --principal postgres

В данном случае будет создан файл ключей для сервисной записи postgres.

16.4.4. Управление учетными записями пользователей доменаУправление осуществляется средствами графической утилиты администриро-

вания. Для запуска утилиты на рабочей станции администратора домена выбрать вменю приложений «Администрирование домена» или из командной строки выполнитькоманду:

ndds-admin

Для отображения системных объектов нужно нажать кнопку « » («Показатьсистемные объекты»).

Для управления учетными записями пользователей перейти во вкладку «Поль-зователи» (открыта по умолчанию) (рис. 31).

Рис. 31

Page 147: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

147ДВНБ.10001-01 34 01

Для создания учетной записи пользователя необходимо нажать кнопку[Создать]. Затем в появившемся диалоговом окне заполнить поля (обязательнымиявляются «Логин», «Пароль» и «Повтор пароля») и нажать кнопку [Создать] (рис.32).

Рис. 32

Для блокировки пользователя в строке с соответствующим пользователемнеобходимо нажать («Заблокировать пользователя»), для разблокировки – нажать« ». («Разблокировать пользователя»).

Для удаления учетной записи пользователя в строке с соответствующим поль-зователем нажать («Удалить пользователя»). Подтвердить удаление пользователя на-жатием кнопки [Да].

Для изменения данных пользователя нажать на ссылку с соответствующим ло-гином в столбце «Логин». Перейти в нужную вкладку, внести изменения в форму инажать кнопку [Применить] (рис. 33, 34, 35).

Page 148: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

148ДВНБ.10001-01 34 01

Рис. 33

Рис. 34

Page 149: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

149ДВНБ.10001-01 34 01

Рис. 35

Для изменения пароля пользователя следует выбрать пользователя, перейтина вкладку «Учетная запись» и нажать кнопку [Изменить пароль], ввести новыйпароль с подтверждением и нажать кнопку [Изменить] (рис. 36).

Рис. 36

Для добавления пользователя в группу нужно выбрать пользователя и навкладке «Группы» нажать кнопку [Добавить] (см. рис. 37). Выбрать из списка нуж-ную группу и нажать кнопку [Добавить] (для выделения нескольких групп можноиспользовать клавишу «Ctrl»).

Для удаления пользователя из группы нужно выбрать пользователя и на вклад-ке «Группы» нажать кнопку « » «Удалить пользователя из группы».

Page 150: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

150ДВНБ.10001-01 34 01

Рис. 37

Для добавления разрешенной рабочей станции нужно нажать на логин поль-зователя в столбце «Логин». На вкладке «Рабочие станции» нажать на кнопку[Добавить] (см. рис. 38). Выбрать из списка нужную станцию и нажать кнопку[Добавить] (для выделения нескольких станций необходимо выбирать с зажатойклавишей «Ctrl»).

Рис. 38

Page 151: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

151ДВНБ.10001-01 34 01

Для удаления рабочих станций пользователя нужно на вкладке «Рабочие стан-ции» нажать на кнопку « » «Удалить рабочую станцию».

Для управления мандатными атрибутами пользователя нужно нажать на логинпользователя в столбце «Логин». На вкладке «Мандатные атрибуты» выбрать нужныеуровни и категории и нажать кнопку [Применить] (см. рис. 39)

Рис. 39

16.4.5. Управление учетными записями групп пользователей доменаДля управления группами пользователей выбрать пункт меню «Группы»

(рис. 40).Для создания группы пользователей нажать кнопку [Создать]. Заполнить

форму и нажать [Создать].Для добавления пользователей в группу необходимо выбрать группу из списка

и на вкладке «Участники» нажать кнопку [Добавить участников] (рис. 41).Выбрать из списка нужного пользователя (для выбора нескольких пользовате-

лей зажать клавишу <Ctrl>) и нажать кнопку [Добавить] (рис. 42).

Page 152: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

152ДВНБ.10001-01 34 01

Рис. 40

Рис. 41

Для удаления пользователей из состава группы выбрать группу из списка и навкладке «Участники» нажать кнопку « » («Удалить пользователя из группы»).

Для просмотра состава группы в строке с соответствующей группой нажать нассылку с соответствующем именем группы в столбце «Имя группы». Входящие в группупользователи будут отображены на вкладке «Участники».

Для удаления группы в строке с соответствующей группой нажать кнопку « »(«Удалить группу»). Во всплывающем окне подтвердить удаление, нажав кнопку[Да].

16.4.6. Управление учетными записями рабочих станцийДля просмотра списка рабочих станций входящих в состав домена перейти во

вкладку «Компьютеры» (рис. 43).Для просмотра свойств нужно в строке с соответствующей рабочей станцией

нажать на ссылку с именем компьютера в столбце «Имя компьютера» (рис. 44, 45, 46).Для удаления рабочей станции нужно в строке с соответствующей станцией

нажать на кнопку « » «Удалить рабочую станцию». Во всплывающем окне подтвер-дить удаление, нажав кнопку [Да].

Page 153: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

153ДВНБ.10001-01 34 01

Рис. 42

Рис. 43

Рис. 44

Page 154: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

154ДВНБ.10001-01 34 01

Рис. 45

Рис. 46

16.4.7. Управление учетными записями служб (сетевых сервисов) доменаДля управления сервисными записями выбрать пункт меню «Сервисы» (см.

рис. 47).

Page 155: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

155ДВНБ.10001-01 34 01

Рис. 47

Для создания сервисной записи нажать кнопку [Создать]. Заполнить поляформы (см. рис. 48), указав имя объекта для которого будет создана сервисная за-пись, полную сервисную запись и нажать кнопку [Создать].

Рис. 48

Для удаления сервисной записи в строке с соответствующей записью нажатькнопку [Удалить запись]. Во всплывающем окне подтвердить удаление нажатиемкнопки [Удалить].

Page 156: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

156ДВНБ.10001-01 34 01

16.4.8. Управление политиками учетных записейДля управления политиками учетных записей выбрать пункт меню «Политики

учетных записей» (см. рис. 49).

Рис. 49

Для создания гранулированной политики нажать кнопку [Создать]. Запол-нить поля формы (см. рис. 50, 51, указав имя политики и нажать кнопку [Создать].

Page 157: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

157ДВНБ.10001-01 34 01

Рис. 50

Рис. 51

Для просмотра свойств и управления гранулированной политикой нужно встроке с соответствующей политикой нажать на ссылку с именем политики в столбце«Имя политики» (рис. 52, 53).

Рис. 52

Page 158: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

158ДВНБ.10001-01 34 01

Рис. 53

Для добавления участников гранулированной политики нужно на вкладке«Участники» нажать кнопку [Добавить], выбрать участника политики и нажатькнопку[Добавить] (для выделения нескольких участников можно использовать кла-вишу «Ctrl») (см. рис. 54).

Рис. 54

Для удаления участников гранулированной политики нужно на вкладке «Участ-ники» нажать кнопку[Удалить объект гранулированной политики] в строкес участником политики (см. рис. 55).

Page 159: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

159ДВНБ.10001-01 34 01

Рис. 55

Для просмотра свойств и управления глобальной доменной политикой нужновыбрать пункт меню «Политики учетных записей» и перейти на вкладку «Доменнаяполитика» (см. рис. 56).

Рис. 56

16.4.9. Управление доверительными отношениямиДля управления доверительными отношениями нужно выбрать пункт меню

«Доверительные отношения» (см. рис. 57).

Page 160: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

160ДВНБ.10001-01 34 01

Рис. 57

Перед созданием доверительных отношений необходимо на обоих контролле-рах домена добавить записи в системных файлах.

Для файла /etc/resolv.conf добавить запись вида:nameserver <IP адрес контроллера доверенного домена>

П р и м е рnameserver 192.168.1.2”

На момент создания доверительных отношений на контроллерах должен бытьотключен межсетевой экран.

Для создания доверительных отношений нажать кнопку [Создать] и запол-нить форму создания доверительных отношений (см. рис. 58), в поле «Домен» указатьимя доверенного домена, в поле «Имя администратора» указать имя администраторадоверенного домена, в поле «Пароль администратора» пароль администратора дове-ренного домена и нажать кнопку [Создать].

Рис. 58

Page 161: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

161ДВНБ.10001-01 34 01

Для удаления доверительных отношений нужно в стро-ке с соответствующей записью доверенного домена нажать кнопку[Удалить доверительные отношения] (см. рис. 59), заполнить формуудаления доверительных отношений (см. рис. 60).

Рис. 59

Рис. 60

Page 162: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

162ДВНБ.10001-01 34 01

17. СИСТЕМА УПРАВЛЕНИЯ БАЗАМИ ДАННЫХ

Система управления базами данных (СУБД) реализована на основе свободнойобъектно-реляционной СУБД PostgreSQL и предназначена для предоставления мно-гопользовательского доступа к реляционнымБД.Данные в реляционной БД хранятсяв отношениях (таблицах), состоящих из записей (строк) и столбцов.

СУБД PostgreSQL в составе ОС функционирует в виде серверных процессов,каждый из которых управляет одним из кластеров БД. Под кластером БД понимаетсялогически и физически обособленный набор файлов, включающий конфигурацион-ныефайлы, расположенные в /etc/postgresql/{версия}/{кластер}, и ката-логи сфайлами БД кластера – в /var/lib/postgresql/{версия}/{кластер}.

17.1. Управление функционированием и работа с СУБД

Для управления функционированием СУБД PostgreSQL в ОС используютсяутилиты из состава семейства пакетов postgresql-common:

– pg_createcluster – для создания нового обособленного кластера БД(каждому кластеру создаются отдельные каталоги для конфигурационныхфайлов и файлов данных и выделяется порт для сетевых соединений, начи-ная с 5432);– pg_dropcluster – удаление существующего кластера БД;– pg_lscluster – просмотр статуса существующих кластеров БД;– pg_ctlcluster – управление функционированием заданного кластераБД.Общий вид вызова перечисленных команд содержит указание версии СУБД

и имя кластера, что позволяет устанавливать и управлять кластерами разных версийСУБД:

sudo pg_ctlcluster 10 main restart

Для доступа к СУБД используются штатные утилиты из состава СУБДPostgreSQL, например, интерактивный клиент psql. Более подробно настройка иуправление СУБД описаны в документации PostgreSQL и на страницах справочникаman для перечисленных утилит.

Page 163: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

163ДВНБ.10001-01 34 01

17.2. Настройка СУБД для работы в домене

Для настройки СУБД PostgreSQL для работы в домене выполнить следующиедействия (имена файлов и сетевые адреса указаны для примера):

1) создать сервисную запись для сервиса postgres;2) выгрузить ключ сервисной записи для СУБД PostgreSQL командой:sudo ndds-ctl createkeytab --principal postgres

3) скопировать созданный файл ключей/etc/domain_keytabs/ postgres.keytab

в /etc/postgresql-common/postgres.keytab;4) назначить владельца и группу postgres на файл ключей:sudo chown postgres.postgres

/etc/postgresql-common/postgres.keytab

5) разрешить доступ postgres к директории кэшей samba:sudo setfacl -m u:postgres:rwx /var/tmp

6) в конфигурационном файле/etc/postgresql/10/main/postgresql.conf установить:listen_addresses = ’*’

krb_server_keytab = ’/etc/postgresql-common/

postgres.keytab’

7) в конфигурационномфайле/etc/postgresql/10/main/pg_hba.confнастроить аутентификацию по методу gss:

host all all gss 192.168.10.0/24 gss include_realm=0

8) выполнить перезапуск сервера СУБД:sudo systemctl restart postgresql

После выполнения настройки пользователи домена смогут обращаться к СУБД.При этом необходимо, чтобы для них существовала учетная запись в кластере БД.

17.3. Пример настройки отказоустойчивого кластера СУБД

На рисунке представлена типичная схема кластера. Кластер должен содер-жать 1 ведущий сервер (Master), хотя бы 1 ведомый сервер (Slave), 1 сервер узламасштабирования (Balancer). На сервере узла масштабирования должен быть уста-новлен компилятор gcc.

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

Page 164: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

164ДВНБ.10001-01 34 01

Рис. 61

17.3.1. Настройка удаленного соединения между серверами кластераOnline recovery и failover требуют настройки удаленного соединения по прото-

колу SSH без пароля. Для этого нужно создать SSH-ключи пользователя postgres иразослать их пользователям postgres каждому из серверов.

ВНИМАНИЕ! Для online recovery необходимо, чтобы при открытии удаленнойсессии можно было перейти в еще одну удаленную сессию (т.е. можно было реали-зовать следующий механизм перехода по SSH без пароля: узел масштабирования —ведущий сервер— ведомый сервер и узел масштабирования— ведомый сервер— ве-дущий сервер). Для failover необходимо создать SSH-ключ пользователя root наузле масштабирования и переслать пользователям postgres ведущего и ведомогосервера. Этот шаг является важным при настройке, поэтому убедитесь, что возможноподключение из удаленной сессии одного из серверов к другому.

17.3.2. Настройка потоковой репликацииПредварительно нужно открыть прием/передачу данных по порту 5432 (стан-

дартный порт PostgreSQL) в iptables.1) Отредактируйте конфигурационныйфайл $PGDATA/postgresql.conf ведущего

сервера следующим образом:listen_addresses = ’*’

Page 165: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

165ДВНБ.10001-01 34 01

wal_level = hot_standby

max_wal_senders = 2

wal_keep_segments = 32

#hot_standby = on

Последняя строчка важна. Она будет использоваться в скрипте восстановления ве-домого узла.

2) Добавьте строчки для репликации в $PGDATA/pg_hba.conf: host replication postgres

192.168.100.2/32 trust↪→

host replication postgres

192.168.100.3/32 trust↪→где postgres — это администратор базы, который будет проводить репликацию ипрочие админские хитрости. Эти строки разрешили производить репликацию ведомо-го и ведущего сервера.

3) Перегрузите ведущий сервер:# service postgresql restart

4) Останавливаете ведомый сервер (если был запущен ранее):# service postgresql stop

5) На ведущем сервере пользователем postgres создайте backup базы иперешлите ведомому серверу:

$ psql -c ”SELECT pg_start_backup(’stream’);”

$ rsync -a /var/lib/pgsql/data/

192.168.100.3:/var/lib/pgsql/data/ --exclude

postmaster.pid

↪→

↪→

$ psql -c ”SELECT pg_stop_backup();”

6) На ведомом сервере создать конфигурационный файл реплика-ции $PGDATA/recovery.conf: 

standby_mode = ’on’

primary_conninfo = ’host=192.168.100.2 port=5432

user=postgres’↪→

trigger_file = ’failover’

Параметр trigger_file отвечает за путь, по которому PostgreSQL ищет файл, что-бы переключиться в режим ведущего. В данном случае PostgreSQL ищет файл по пу-ти $PGDATA/failover.

7) Включите режим «горячего резерва» на ведомом сервере:

Page 166: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

166ДВНБ.10001-01 34 01

$ sed -i ’s/#hot_standby = on/hot_standby = on/’

/var/lib/pgsql/data/postgresql.conf↪→8) Запустите ведомый сервер:

# service postgresql start

Активность репликации можно проверить следующим образом:1) На ведущем сервере выполнить команду:

$ ps aux | grep sender

В выводе должна быть похожая строка:2561 ? Ss 0:00 postgres: wal sender process postgres

192.168.100.3(33341) streaming 0/2031D28↪→2) Аналогично на ведомом сервере:

$ ps aux | grep receiver

Она должна выдать похожее на следующее:1524 ? Ss 0:00 postgres: wal reciever process

streaming 0/2031D28↪→

17.3.3. Общая настройка узла масштабирования1) Измените конфигурационный файл /etc/pgpool-II/pgpool.conf:

# Весь диапазон прослушиваемых адресов

listen_addresses = ’*’

# Параметры подключения к базе на ведомом сервере

backend_hostname0 = ’192.168.100.3’

backend_port0 = 5432

backend_weight0 = 1

backend_data_directory0 = ’/var/lib/pgsql/data’

# Параметры подключения к базе на ведущем сервере

backend_hostname1 = ’192.168.100.2’

backend_port1 = 5432

backend_weight1 = 1

backend_data_directory1 = ’/var/lib/pgsql/data’

# Использование pool_hba.conf для авторизации клиентов

enable_pool_hba = true

2) В /etc/pgpool-II/pool_hba.conf добавьте информацию об автори-зации клиентов:

host all all 127.0.0.1/32 ⌋

trust↪→

Page 167: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

167ДВНБ.10001-01 34 01

host all all 192.168.100.2/32 ⌋

trust↪→

host all all 192.168.100.3/32 ⌋

trust↪→3) Перезагрузите pgpool:

# service pgpool restart

17.3.4. Настройка автоматического failoverМеханизм создания автоматического failover следующий:1) На рабочих (ведущем и ведомом) серверах выполняется процедура pgpool-

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

процессов СУБД. Если нет, то pgpool вызывает скрипт, который создает failover наведомом узле в случае отказа ведущего сервера.

3) После чего pgpool отключается от упавшего узла и перезапускает все кли-ентские приложения, подключенные к нему.

Действия которые необходимо выполнить для настройки failover:1) На узле масштабирования измените конфигурационный

файл /etc/pgpool-II/pgpool.conf:# Скрипт, вызываемый при падении сервера

failover_command = ’/etc/pgpool-II/failover.sh %d %H

/var/lib/pgsql/data/failover’↪→

# Пользователь, проверяющий статус сервера

health_check_user = ’postgres’

# Включение режима ”Ведущий-ведомый”

master_slave_mode = true

# Режим работы репликации ’потоковая’

master_slave_sub_mode = ’stream’

# Не разрешать pgpool отправлять копию запроса на узлы

кластера, это произойдет автоматически благодаря

репликации

↪→

↪→

replication_mode = false

# Включить балансировку серверов, чтобы запросы могли

равномерно распределяться между серверами↪→

Page 168: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

168ДВНБ.10001-01 34 01

load_balance_mode = true

Скрипту, указанному в параметре failover_command, передаются параметры:–  %d — идентификатор упавшего узла (соглас-но backend_hostname в pgpool.conf)– %H — IP нового ведущего сервера.2) В каталоге /etc/pgpool-II/ создайте скрипт failover.sh с правами

755 и следующим содержимым:#! /bin/bash

# ID упавшего узла

FAILED_NODE=$1

# IP нового мастера

NEW_MASTER=$2

# Путь к триггерному файлу

TRIGGER_FILE=$3

if [ $FAILED_NODE = 1 ];

then

echo ”Ведомый сервер вышел из строя”

exit 1

fi

echo ”Ведущий сервер вышел из строя”

echo ”Новый ведущий сервер: $NEW_MASTER”

ssh -T postgres@$NEW_MASTER touch $TRIGGER_FILE

exit 0

3) Используя команду make скомпилируйте функцию которая находится в па-кете исходных текстов pgpool в каталоге sql/pgpool-walrecrunning. У вас полу-чится два файла pgpool-walrecrunning.so и pgpool-walrecrunning.sql.

4) На каждом рабочем сервере (ведущем и ведомых) скопируйте файлpgpool-walrecrunning.so в каталог /usr/lib64/pgsql/.

5) На каждом рабочем сервере (ведущем и ведомых) скопируйте файлpgpool-walrecrunning.sql в каталог /usr/share/pgsql/.

6) Выполните на ведущем сервере команду:

Page 169: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

169ДВНБ.10001-01 34 01

psql -f /usr/share/pgsql/pgpool-walrecrunning.sql -d

postgres↪→Статус серверов можно определить на узле масштабирования из клиента psql,

выполнив команду:SHOW pool_nodes;

Пример ответа на запрос:hostname | port | status | lb_weight

-----------------------------------------------------

192.168.100.3 | 5432 | 2 | 0.500000

192.168.100.2 | 5432 | 2 | 0.500000

(2 rows)

Статус сервера 2 означает, что сервер активен и доступен для запросов. В слу-чае отказа одного из серверов статус изменится на 3.

Протестировать механизм автоматического failover можно следующим обра-зом:

– Отключить ведущий сервер– Выполнить запрос SHOW pool_nodes; на узле масштабирования– Посмотреть логи pgpool на предмет выполнения скрипта– Убедиться в том, что ведомый сервер после выполнения скрипта может при-нимать запросы на запись

17.3.5. Online recoveryЭтот механизм является мощным инструментом при администрировании базы.

Этот механизм позволяет нам вернуть в работу, в реальном времени, ведомый сервер,который ранее прекратил функционировать из-за сбоя. Возвращение происходит безостановки кластера и проведении каких-либо дополнительных действий при его на-стройке.  Online recovery работает следующим образом:

– На узле масштабирования запускается процедура восстановления ведомогосервера– Эта процедура на ведущем сервере запускает скрипт, выполняющий автома-тическую репликацию между ведущим и ведомым сервером– После успешного выполнения репликации, база на ведущем сервере удален-но запускается с помощью стандартной утилиты PostgreSQL PGCTL

Page 170: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

170ДВНБ.10001-01 34 01

– pgpool перезапускается, обнаруживает ведомый сервер и включает его вкластер

Настройка Online recovery1) Добавьте следующие строчки в /etc/pgpool-II/pgpool.conf:

# Пользователь, проводящий восстановление

recovery_user = ’postgres’

# Пароль этого пользователя

recovery_password = ’123456’

# Скрипт, запускающийся на ведущем скрипте из

каталога $PGDATA↪→

recovery_1st_stage_command = ’basebackup.sh’

2) Добавить хэш пароля пользователя из параметра recovery_user:# pg_md5 123456 >> /etc/pgpool-II/pcp.conf

123456 — это пароль в открытом виде. При этом дополнительно перед хэшем паролянужно указать имя пользователя, кому этот хэш принадлежит, т.е., в нашем случае, вфайле должно быть строка postgres:enrypted_password.

3) На ведущем узле в каталоге $PGDATA создайте скрипт basebackup.sh справами 755 и следующим содержанием:

#!/bin/bash

# Путь к каталогу $PGDATA на ведущем сервере

PRIMARY_DATA=$1

# IP-адрес ведомого сервера, который включается в

кластер↪→

SLAVE_IP=$2

# Путь к каталогу $PGDATA на ведомом сервере

SLAVE_DATA=$3

# Определяем IP ведущего сервера для включения в

конфиг recovery.conf↪→

PRIMARY_IP=$(ifconfig eth0| sed -n ’2 {s/^.*inet

addr:\([0-9.]*\) .*/\1/;p}’)↪→

# Директория для хранения конфигов для ведомого

сервера↪→

TMP_DIR=/var/lib/pgsql/tmp

Page 171: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

171ДВНБ.10001-01 34 01

# На ведущем сервере удаляем старые конфиги от

репликации (если ведущий сервер был когда-то

ведомым)

↪→

↪→

cd $PRIMARY_DATA

rm -f recovery.* failover

# Проверяем, активен ли режим горячего резерва на

ведущем сервере↪→

cat postgresql.conf | grep ’#hot_standby = on’

# Если активен, то выключаем его

if [ $? = 1 ]

then

sed -i ’s/hot_standby = on/#hot_standby = on/’

postgresql.conf↪→

# Перезапускаем ведущий сервер

/usr/bin/pg_ctl restart -D $PGDIR

fi

#Удаленно останавливаем ведомый сервер

ssh -T postgres@$SLAVE_IP ”/usr/bin/pg_ctl stop -D

$SLAVE_DATA”↪→

# Создаем backup базы на ведущем сервере

psql -c ”SELECT pg_start_backup(’Streaming

Replication’, true)” postgres↪→

# Пересылаем его ведомому

rsync -a $PRIMARY_DATA/ $SLAVE_IP:$SLAVE_DATA/

--exclude postmaster.pid --exclude

postmaster.opts

↪→

↪→

# Создаем временную папку конфигов для ведомого

сервера↪→

mkdir $TMP_DIR

cd $TMP_DIR

# Копируем конфиг postgresql.conf и включаем

hot_standby↪→

cp $PRIMARY_DATA/postgresql.conf $TMP_DIR/

Page 172: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

172ДВНБ.10001-01 34 01

sed -i ’s/#hot_standby = on/hot_standby = on/’

postgresql.conf↪→

# Создаем конфиг recovery.conf

echo ”standby_mode = ’on’” > recovery.conf

echo ”primary_conninfo = ’host=$PRIMARY_IP port=5432

user=postgres’” >> recovery.conf↪→

echo ”trigger_file = ’failover’” >> recovery.conf

# Удаляем с ведомого сервера старые конфиги репликации

ssh -T postgres@$SLAVE_IP rm -f $SLAVE_DATA/recovery.*

# Копируем новые конфиги

scp postgresql.conf

postgres@$SLAVE_IP:$SLAVE_DATA/postgresql.conf↪→

scp recovery.conf

postgres@$SLAVE_IP:$SLAVE_DATA/recovery.conf↪→

#Завершаем процесс backup

psql -c ”SELECT pg_stop_backup()” postgres

# Удаляем временную папку с конифгами

cd ..

rm -fr $TMP_DIR

4) На ведомом и ведущем сервере в каталоге $PGDATA создайтескрипт pgpool_remote_start с правами 755 и следующим содержанием:

#! /bin/bash

if [ $# -ne 2 ]

then

echo ”Мало аргументов, переданных скрипту”

exit 1

fi

SLAVE_IP=$1

SLAVE_DIR=$2

PGCTL=/usr/bin/pg_ctl

Page 173: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

173ДВНБ.10001-01 34 01

ssh -T $SLAVE_IP $PGCTL -w -D $SLAVE_DIR start

2>/dev/null 1>/dev/null < /dev/null &↪→Этот скрипт позволит удаленно запускать процессы СУБД.

5) На узле масштабирования скомпилируйте хранимую процедуру pgpool-recovery.so, расположенную по пути sql/pgpool-recovery

6) На каждом рабочем сервере (ведущем и ведомых) скопируйте файлpgpool-recovery.so в каталог /usr/lib64/pgsql/.

7) На каждом рабочем сервере (ведущем и ведомых) скопируйте файлpgpool-recovery.sql в каталог /usr/share/pgsql/.

8) Выполните на ведущем сервере команду:psql -f /usr/share/pgsql/pgpool-recovery.sql -d

postgres↪→Для включения ведомого сервера в кластер необходимо выполнить следующие

действия:1) Запустить базу на ведущем узле2) На узле масштабирования выполнить команду по восстановлению сервера:

 pcp_recovery_node 20 192.168.100.4 9898

postgres 123456 1↪→в которой:

– 0 — это число попыток подключения к ведомому серверу– 192.168.100.4 — IP узла масштабирования–  9898 — порт pcp команд узла масштабирования–  postgres — имя пользователя, производящего восстановления–  123456 — его пароль–  1 — ID восстанавливаемого узла.Можно произвести тестирование этих двух механизмов по следующему плану:1) Создать тестовую базу данных на ведущем сервере. Убедиться, что она реп-

лицировалась на ведомый2) Имитировать отказ ведущего сервера, отключив его3) Убедиться, что сработал failover и ведомый сервер стал новым ведущим4) Внести изменения в базу данных на ведомом сервере5) Запустить упавший ведущий сервер и сделать его ведомым, проведя online

recovery

Page 174: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

174ДВНБ.10001-01 34 01

Описанные выше механизмы позволяют настроить отказоустойчивый кластер«Ведущий-ведомый» и упростить работу администратора базы данных при ее восста-новлении. 

Page 175: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

175ДВНБ.10001-01 34 01

18. СРЕДСТВА РАБОТЫ С ИНТЕРНЕТОМ

Средства работы с интернетом включают:– веб-сервер Apache2, обеспечивающий поддержку работы веб-протоколов;– прокси-сервер Nginx, обеспечивающий кэширование и сжатие данных;– почтовый сервер Exim/Dovecot;– почтовый клиент Mozilla Thunderbird;– веб-браузеры Mozilla Firefox и Chromium.Перечисленные программные средства представлены в ОС соответствующим

набором пакетов, включающим как сами программы средства, так модули расширенияфункциональности для работы в составе домена.

18.1. Настройка web-сервера Apache2

Для возможности использования web-сервера Apache2 в составе ОС требует-ся применение модулей аутентификации для аутентифицированного обращения поль-зователей к web-серверу. Таким модулями для Apache2 являются:

– libapache2-mod-authnz-external – модуль аутентификации с использованиемPAM;– libapache2-mod-auth-kerb – модуль аутентификации по протоколу Kerberos всоставе домена.Основным конфигурационным каталогом для web-сервера Apache2 является

/etc/apache2, в подкаталогах которого расположены конфигурационные файлы:– /etc/apache2/ports.conf – задание обслуживаемых портов;– /etc/apache2/conf-available/ - расположение файлов конфигурации Apache2;– /etc/apache2/conf-enabled/ - расположение символических ссылок на актив-ные файлы конфигурации Apache2;– /etc/apache2/sites-available/ - расположение файлов конфигурации вирту-альных хостов;– /etc/apache2/sites-enabled/ - расположение символических ссылок на файлыконфигурации активных виртуальных хостов.Управление функционированием и конфигурацией web-сервера Apache2 вы-

полняется следующими командами:

Page 176: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

176ДВНБ.10001-01 34 01

– a2enmod/a2dismod – активация/деактивация модуля Apache2;– a2enconf/a2disconf – активация/деактивацияфайла конфигурации Apache2;– a2ensite/a2dissite – активация/деактивация виртуального хоста.Для настройки авторизации по PAM в Apache2 должен быть установлен па-

кет поддержки PAM аутентификации pwauth и активирован соответствующий модульаутентификации с помощью команды:

sudo a2enmod authnz_external

В конфигурационных файлах виртуальных хостов, использующих аутентифи-кацию PAM, необходимо указать:

AuthPAM_Enabled on

AuthType Basic

AuthBasicProvider external

AuthExternal pwauth

AuthName ”PAM authentication”

require valid-user

При этом логин и пароль пользователя будут передаваться от пользователя ксерверу в открытом виде с использованием метода аутентификации Basic.

В конфигурационных файлах виртуальных хостов, использующих аутентифи-кацию PAM, необходимо указать:

AddExternalAuth pwauth /usr/local/bin/pwauth

SetExternalAuthMethod pwauth pipe

Для PAM-аутентификации используется сценарий PAM/etc/pam.d/pwauth, включающий общие части common-auth иcommon-account.

После конфигурирования требуется перезапуск web-сервера Apache2:sudo systemctl restart apache2

18.2. Настройка web-сервера Apache2 для работы в домене

Для работы web-сервера Apache2 в составе домена необходимо использова-ние авторизации по Kerberos. Для этого в Apache2 должен быть активирован соответ-ствующий модуль аутентификации с помощью команды:

sudo a2enmod auth_kerb

Page 177: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

177ДВНБ.10001-01 34 01

В конфигурационных файлах виртуальных хостов, использующих аутентифи-кацию Kerberos, необходимо указать:

AuthType Kerberos

KrbAuthRealms REALM

KrbServiceName HTTP/server.my_domain.org

Krb5Keytab /etc/apache2/keytab

KrbMethodNegotiate on

KrbMethodK5Passwd off

require valid-user

Параметр KrbServiceName должен содержать имя сервиса SPN (ServicePrincipal Name), созданный для данного web-сервера в домене согласно п. 16.4.

Параметр Krb5Keytab должен указывать на файл ключей для существующейучетной записи сервиса, полученный согласно п. 16.4.3. Файл ключей должен бытьдоступен web-серверу Apache2: права доступа к этому файлу должны позволять чи-тать его пользователю, от имени которого работает web-сервер Apache2 (www-data).

При необходимости обеспечения сквозной аутентификации к другим службам,в конфигурационномфайле виртуального хоста следует дополнительно указать пара-метр KrbSaveCredentials on.

После конфигурирования требуется перезапуск web-сервера Apache2:sudo systemctl restart apache2

18.3. Настройка web-браузеров для работы в домене

Для возможности обращения пользователя с помощью браузеров к web-серверу, использующего доменную аутертификацию, требуются определенные на-стройки браузера. Как правило, задаются сервера или домены для которых возможнадоверенная аутентификация.

В браузереMozilla Firefox в настройках, доступных по адресу about:config,необходимо задать маски доменов или в общем случае http- и https- соединенияв качестве значений параметра network.negotiate-auth.trusted-uris (на-пример: http://, https://). Рекомендуется задавать конкретные имена дове-ренных серверов.

Для браузера Chromium аналогичные настройки могут быть выполнены с по-мощью конфигурационного параметра (ключа запуска) auth-server-whitelist.

Page 178: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

178ДВНБ.10001-01 34 01

Указанные настройки браузера должны быть выполнены в рабочей сессиипользователя.

18.4. Настройка почтовых серверов для работы в домене

Комплекс программ электронной почты включает:– exim4-daemon-heavy — агент передачи сообщений;– dovecot-imapd — агент доставки сообщений;– thunderbird — почтовый клиент Mozilla Thunderbird.Агент доставки сообщений Dovecot конфигурируется параметрами в конфигу-

рационных файлах из каталога /etc/dovecot.В файле /etc/dovecot/dovecot.conf задается список сетевых интер-

фейсов и протоколов:protocols = imap

listen = 192.168.2.55

Для настройки авторизации Dovecot по PAM в конфигурационном файле/etc/dovecot/conf.d/10-auth.conf необходимо установить:

disable_plaintext_auth = no

auth_mechanisms = plain

Для PAM-аутентификации используется сценарий PAM/etc/pam.d/dovecot, включающий общие части common-auth,common-account и common-session.

Для настройки встроенного в агент доставки сообщений Dovecot сервераSASL, к которому будет обращаться агент передачи сообщений Exim4 для аутен-тификации пользователей с использованием PAM, в конфигурационном файле/etc/dovecot/conf.d/10-master.conf в секциюservice auth необходимозадать следующие параметры:

unix_listener auth-client {

mode = 0600

user = Debian-exim

}

После конфигурирования требуется перезапуск агента доставки сообщенийDovecot:

Page 179: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

179ДВНБ.10001-01 34 01

sudo systemctl restart dovecot

Агент передачи сообщений Exim4 настраивается путем переконфигурирова-ния пакета exim4-config командой:

sudo dpkg-reconfigure exim4-config

Дополнительные параметры расположены в конфигурационных файлах ката-лога /etc/exim4/.

Агент передачи сообщений Exim использует для аутентифика-ции механизмы Агент доставки сообщений Dovecot. Для этого в ката-логе /etc/exim4/conf.d/auth необходимо создать файл с именем05_dovecot_login следующего содержания:

dovecot_plain:

driver = dovecot

public_name = plain

server_socket = /var/run/dovecot/auth-client

server_set_id = $auth1

При этом для запрета отправки писем без аутентификации в конфигурацион-ном файле /etc/exim4/conf.d/acl/30_exim4-config_check_rcpt в нача-ло секции acl_check_rcpt следует добавить строки:

deny

message = ”Auth required”

hosts = *:+relay_from_hosts

!authenticated = *

После конфигурирования требуется перезапуск агента передачи сообщенийExim4:

sudo systemctl restart exim4

Для работы в составе домена необходимо использование модуляdovecot-gssapi. При этом должен быть создан сервисы с именами smtp иimap для заданного сервера согласно п. 16.4.

В конфигурационном файле агента доставки сообщений Dovecot/etc/dovecot/conf.d/10-auth.conf необходимо задать следующие па-раметры:

Page 180: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

180ДВНБ.10001-01 34 01

auth_krb5_keytab = /var/lib/dovecot/dovecot.keytab

auth_mechanisms = gssapi

auth_gssapi_hostname = server.my_domain.org

disable_plaintext_auth = yes

Параметр auth_krb5_keytab должен указывать на файл ключей для со-зданных ранее сервисов smtp и imap, полученный согласно п. 16.4.3.

Параметр disable_plaintext_auth = yes отключает передачу приаутентификации пароля открытым текстом.

Для настройки доменной аутентификации пользователей вExim4 с использованием метода GSSAPI и встроенного в Dovecotсервера SASL необходимо создать конфигурационный файл/etc/exim4/conf.d/auth/33_exim4-dovecot-gssapi следующего вида:

dovecot_gssapi:

driver = dovecot

public_name = GSSAPI

server_socket = /var/run/dovecot/auth-client

server_set_id = $auth1

После конфигурирования требуется перезапуск агентов Dovecot и Exim4:

sudo systemctl restart dovecot

sudo systemctl restart exim4

В почтовом клиентеMozilla Thunderbird следует использовать тип используемо-го сервера входящей почты IMAP с параметрами использования метода аутентифика-ции «Kerberos/GSSAPI».

Page 181: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

181ДВНБ.10001-01 34 01

19. ЗАВЕРШЕНИЕ РАБОТЫ И ПЕРЕЗАГРУЗКА

Процесс сохранения данных и подготовки к выключению оборудования явля-ется важным, поскольку обеспечивает корректное завершение работы системы, поз-воляющее избежать потерь информации и сбоев ФС.

Для завершения работы системы могут быть использованы команды:– shutdown– универсальная команда остановки, выключения и перезагрузкисистемы;– init– изменение уровня исполнения ОС (уровень 0 – останов, уровень 6 – пе-резагрузка);– halt– команды остановки системы;– poweroff– команда выключения системы;– reboot– команда перезагрузки системы.При физическом выключении системы с помощью штатных органов управле-

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

ВНИМАНИЕ! Внезапное отключение питания может привести к потере данныхили повреждению системных файлов. Настоятельно рекомендуется выключить систе-му с помощью средств ОС и штатных органов управления. Во избежание внезапногоотключения внешнего питания, используйте бесперебойные источники питания (ИБП).

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

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

Page 182: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

182ДВНБ.10001-01 34 01

20. СООБЩЕНИЯ АДМИНИСТРАТОРУ БЕЗОПАСНОСТИ

При возникновении проблем в процессе функционирования ОС появляютсядиагностические сообщения трех типов: информационные, предупреждающие и со-общения об ошибках. Типовые ошибки приведены в таблице 35.

Т а б л и ц а 35Код ошибки Сообщение/значение

Отказано в доступеПользователь не имеет права доступа в указанный файлили каталог

target is busyПопытка размонтировать устройство или каталог, котороееще используется

Нет такого файла или каталога Попытка доступа к несуществующему файлу или каталогу

can’t find /test in /etc/fstabПопытка монтирования несуществующего устройства иликаталога

Page 183: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

183ДВНБ.10001-01 34 01

ПЕРЕЧЕНЬ СОКРАЩЕНИЙ

АС — автоматизированная системаБД — база данныхДНК — дезоксирибонуклеиновая кислотаЖД — жесткий дискИБП — источник бесперебойного питанияНСД — несанкционированный доступОC — операционная системаОЗУ — оперативное запоминающее устройствоПО — программное обеспечениеПС — программные средстваПРД — правила разграничения доступаСЗИ — средства защиты информацииСПО — специальное программное обеспечениеСУБД — система управления базами данныхФС — файловая системаЭВМ — электронно-вычислительная машинаACL — Access Control Lists (списки управления доступом)CIFS — Common Internet File System (общий протокол доступа к файлам Интернет)DHCP — Dynamic Host Configuration Protocol (протокол динамической конфигурации

хоста)DNS — Domain Name System (служба доменных имен)FTP — File Transfer Protocol (протокол передачи файлов)GID — Group Identificator (идентификатор группы)IP — Internet Protocol (протокол Интернет)IPC — Inter Process Communications (межпроцессное взаимодействие)LDAP — Lightweight Directory Access Protocol (легковесный протокол доступа к сер-

висам каталогов)NFS — Network File System (сетевая файловая система)NTP — Network Time Protocol (синхронизирующий сетевой протокол)PAM — Pluggable Authentication Modules (подключаемые модули аутентификации)

Page 184: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

184ДВНБ.10001-01 34 01

PID — Process Identifier (идентификатор процесса)SMB — Session Message Block (блок сессионных сообщений)SSH — Secure Shell Protocol (протокол передачи информации в зашифрованном

виде)UUID — Universally Unique identifier (универсальный уникальный идентификатор)UID — User Identificator (идентификатор пользователя)

Page 185: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

185ДВНБ.10001-01 34 01

ПРИЛОЖЕНИЕ А. СИСТЕМНЫЕ КОМАНДЫ

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

Т а б л и ц а 36Команда Описание

addgroup Создание учетной записи группыadduser Создание учетной записи пользователяar Создание и работа с библиотечными архивамиawk Язык обработки строковых шаблоновbash Командный интерпретатор BASHbc Строковый калькуляторbzip2 Архиватор файлов BZIPchacl Изменением списка контроля доступа файлаchage Управление временем жизни пароля пользователяchattr Изменение атрибутов файлаchfn Изменение описательной части учетной записи пользователяchgrp Изменение группы файлаchmod Изменение режима доступа к файлу (прав доступа)chown Изменение владельца файлаchsh Выбор командного интерпретатора (по умолчанию—для учетной записи пользователя)cmp Побайтовое сравнение файловcp Копирование файловcut Разбивка файла на секции, задаваемые контекстными разделителямиdash Командный интерпретатор DASHdate Вывод и изменение системных даты и времениdelgroup Удаление учетной записи группыdeluser Удаление учетной записи пользователяdf Вывод отчета об использовании дискового пространстваdmesg Вывод содержимого системного буфера сообщенийdu Вычисление количества использованного пространства элементов ФСecho Вывод содержимого аргументов на стандартный выводegrep Поиск в файлах содержимого согласно регулярных выраженийfdisk Утилита управлением таблицей разделов дисков

Page 186: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

186ДВНБ.10001-01 34 01

Продолжение таблицы 36Команда Описание

fgrep Поиск в файлах содержимого согласно фиксированных шаблоновfile Определение типа файлаfind Поиск файла по различным признакам в ФСfsck Проверка и исправление ошибок ФСfuser Определение процессов, использующих файл или сокетgettext Получение строки интернационализации из каталогов переводаgrep Вывод строки, содержащей шаблон поискаgroupadd Создание новой учетной записи группыgroupdel Удаление учетной записи группыgroupmod Изменение учетной записи группыgroups Вывод списка и состава группgunzip Распаковка файла ZIPgzip Упаковка файла ZIPhalt Полный останов ОСhostname Вывод и задание имени хостаid Вывод действительных и эффективных идентификаторов пользователя и группыinstall Копирование файла с установкой атрибутовipcrm Удаление IPC ресурсаipcs Вывод характеристик IPC ресурсаkill Отправка сигнала процессу (по умолчанию — SIGTERM)killall Удаление процессов по имениls Вывод содержимого каталогаm4 Макропроцессорmkfs Создание ФСmknod Создание файла специального типаmktemp Генерация уникального имени файлаmore Постраничный вывод содержимого файлаmount Монтирование ФСmsgfmt Создание объектного файла сообщений из файла сообщенийnewgrp Смена идентификатора группыnice Запуск процесса с заданным уровнем приоритетаnohup Запуск процесса с игнорированием прерываний по сигналу HUPod Вывод содержимого файла в восьмеричном и других видах

Page 187: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

187ДВНБ.10001-01 34 01

Окончание таблицы 36Команда Описание

passwd Смена пароля учетной записиpatch Применение файла описания изменений к оригинальному файлуpidof Вывод идентификатора процесса по его имениpoweroff Выключение системыps Вывод информации о процессахpstree Вывод информации о дереве процессовpwd Вывод текущего рабочего каталогаreboot Перезагрузка системыrenice Изменение уровня приоритета процессаscp Копирование по сети с использованием sshsed Строковый редакторsendmail Транспорт системы электронных сообщенийsh Командный интерпретатор SHshutdown Команда останова системыstat Вывод статусной информации о файле

suИзменение идентификатора пользователя для имперсонации или получения полномо-чий суперпользователя

sync Сброс системных буферов на носителиtar Файловый архиватор TARtime Замер времени работы процессаtop Вывод списка процессовtouch Изменение меток времени файлаumount Размонтирование ФСuname Вывод системной информацииuseradd Создание учетной записи пользователяuserdel Удаление учетной записи пользователяusermod Изменение учетной записи пользователяusers Вывод списка имен активных пользователей системыw Вывод списка активных пользователей системы и их текущих процессовwc Подсчет слов и строк в файлеwhich Определение пути к командеwho Вывод списка активных пользователей систем

Page 188: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

188ДВНБ.10001-01 34 01

Page 189: ОПЕРАЦИОННАЯСИСТЕМА«ОСНОВА»https://нппкт.рф/sites/default/files/downloads... · 2019. 6. 20. · Утвержден ДВНБ.10001-01-УД подл

189ДВНБ.10001-01 34 01

Лист регистрации измененийНомера листов (страниц)

Изм. изменен-ных

заменен-ных новых

аннулиро-ванных

Всеголистов

(страниц) вдокументе

Номердокумента

Входящийномер сопро-водительногодокументаи дата

Подпись Дата