Здравствуйте, уважаемые читатели!
Продолжаем разбор вопросов тестирования AL-1704 по Astra Linux.
Напомню, что свои вопросы с вариантами ответов Вы можете отправить мне на почту – sandro331k@yandex.ru. При наличии времени, я обязательно проведу разбор и опубликую его в блоге.
Вопрос 1.
Задание успешно произвело изменения на удалённом хосте. Каким цветом Ansible выведет сообщение об этом на экран?
Лёгкий вопрос для массовки. Окрашивание текста в разные цвета это удобная функция Ansible.
В случае ошибки текст окрасится в красный, в случае отсутствия изменений в зелёный.
А при изменениях в жёлтый. Цвета можно изменять (об этом можно прочитать в документации к Ansible).
Помимо цвета при изменении на удалённом хосте ansible напишет слово changed.
Ответ: жёлтым
Вопрос 2.
Напишите, какая команда предназначена для выполнения заданий в Ansible, записанных в плейбуке (playbook)?
Ansible можно запускать для точечной настройки удалённых хостов, но так делают не часто — основная сила Ansible в ansible-playbook.
С помощью ansible-playbook я настраиваю систему защиты информации, ввожу компьютеры в домен, устанавливаю и обновляю антивирусное программное обеспечение и многое другое.
С Ansible связана одна тонкость – его работа с запретом исполняемого бита невозможна, так как по факту запускается скрипт python.
В своё время придумал костыль, чтобы снять запрет исполняемого бита перед настройкой (ссылка).
В ближайшее время планирую переход на Astra Linux SE 1.7 – и буду полностью перерабатывать конфигурацию. В Ansible одно плохо – один раз написал playbook, реализовав всё необходимое и больше с ним не работаешь — всё работает как часы.
Ответ: ansible-playbook
Вопрос 3.
Какой параметр ansible позволяет повысить привилегии при выполнении заданий (task)?
Так как конечной целью работы ansible обычно является настройка системы – в 90 процентах случаев используются права суперпользователя. А чтобы им стать требуется соответствующий параметр.
Ответ: become
Вопрос 4.
Какая компонента защищённого комплекса программ электронной почты отвечает за интеграцию с FreeIPA?
Вопрос очень сложно звучит. Но на самом деле, Вас спрашивают – «Назовите пакет dovecot который нужно установить, если собираетесь работать с FreeIPA?»
Так как главный плюс такой работы заключается в единой точке аутентификации с помощью Kerberos – установить следует пакет dovecot-gssapi. На astra wiki этому посвящена достаточно объемная статья.
Как-то раз я устал от отправки почты вручную и решил автоматизировать этот процесс с помощью программы написанной на Python. Вот тогда я знатно намучился с аутентификацией с помощью Kerberos, так как в интернете была масса статей по парольной аутентификации и совсем немного по аутентификации через Kerberos. Но всё закончилось хорошо, программой активно пользуются люди и выполняют задачи по отправке в разы быстрее, чем вручную.
Ответ: dovecot-gssapi
Вопрос 5.
Что используют клиент и служба для шифрования соединения при использовании сетевой аутентификации Kerberos?
Сама схема аутентификации Kerberos несмотря на множество этапов проста и гениальна.
Помню, впервые познакомился с Kerberos в ALD переведя организацию на Astra Linux SE 1.5 в 2017 году.
Тогда и пришлось вникнуть в его работу, так как пользователи массово жаловались на проблемы с паролями.
Оказалось, подавляющее большинство жалоб было вызвано тем, что пользователи забывали свои пароли. Может показаться странно, но придумать пароль используя парольную фразу для многих большая проблема (ДлмнБП1). Кроме того, временная блокировка учётных записей при неоднократных неудачных попытках входа, так же внесла свою лепту в эту непростую ситуацию.
Но со временем люди привыкли, да и я освоился (очень выручала утилита kadmin).
Кстати в Astra Linux SE 1.6 периодически нарушается синхронизация реплик FreeIPA в результате чего основной сервер freeipa обновляет пароли пользователей, а реплика нет. А так как при аутентификации используются разные сервера (если жёстко не определить их вес в DNS) пользователи начинают испытывать плавающие проблемы со входом.
Ответ: сессионный ключ (session key)
Вопрос 6.
В какой файл нужно внести информацию об IP настройках сетевого интерфейса, которые при загрузке системы будут устанавливаться командой ifup?
Вопрос по настройке сети с помощью networking. Я же предпочитаю использовать systemd и категорически не использую NetworkManager. Об этом можете прочитать в предыдущих разборах.
Ответ: /etc/network/interfaces
Вопрос 7.
Вы изменили настройки сетевого соединения net1 командой nmcli. Что нужно сделать, чтобы настройки вступили в действие?
В Linux есть огромное разнообразие подходов к настройке сети. Каждый сам выбирает – system-networkd, networking, NetworkManager, netconfig…
Лично мне не нравится NetworkManager — это настоящий монстр настройки сети, а его консольная утилита содержит столько параметров, хоть книгу пиши.
Но конкретно по заданному нам вопросу всё просто – нужно запомнить, что после каждой модификации сетевого соединения необходимо использовать подкоманду connection с аргументом up и именем изменённого сетевого соединения, чтобы применить настройки.
Кроме того, как и команда ip, nmcli понимает сокращённые команды (что и используется в этом варианте ответа – команда connection сокращена до «con»).
Ответ: nmcli con up net1
Вопрос 8.
Установите правильную последовательность обмена сообщениями DHCP клиента и сервера после включения пользовательского компьютера.
Вопрос на знание работы DHCP стар как мир. В интернете есть масса статей по работе данного протокола, но интереснее посмотреть самостоятельно на его работу используя wireshark или tcpdump.
Так же интересно настроить динамическое обновление зон на DNS сервере в составе FreeIPA. Для этого понадобиться настроить и DHCP, и DNS серверы.
Ещё есть интересный вид атаки на DHCP сервер, когда один компьютер исчерпывает весь пул IP адресов, каждый раз изменяя свой MAC адрес.
В интернете есть много интересного на тему DHCP сервера, который в наше время есть в каждом роутере и воспринимается как нечто само собой разумеющееся.
Ответ: DHCPDISCOVER, DHCPOFFER, DHCPREQUEST, DHCPACK
Вопрос 9.
В каком файле на SSH-сервере находятся публичные ключи клиентов?
Вопрос на знания принципа работы ssh сервера. AL-1704 вообще богат вопросами на тему ssh.
Соответственно нужно нормально изучить этот вопрос, чтобы в дальнейшем получить до 10 баллов (тем более вопросы банальные).
Первое, что необходимо вспомнить, для ответа — публичные ключи расположены в домашних каталогах соответствующих пользователей, а не в каталоге /etc.
Известные хосты (known_hosts) хранятся в одноимённом файле там же в домашнем каталоге пользователя, в то время как публичные ключи хранятся в файле authorized_keys.
Ответ: ~/.ssh/authorized_keys
Вопрос 10.
Администратор завершил внесение новых ресурсных записей в файл с зонной информацией на ведущем (master) сервере DNS. Какое следующее действие следует произвести?
Знания по работе DNS сервера BIND я получил администрируя ALD.
Купив толстенный «манускрипт» «DNS и BIND» я окунулся с головой в его конфигурационные файлы и синтаксис.
А вот с переходом на FreeIPA я расслабился и теперь изредка кликаю мышкой по WEB интерфейсу.
Даже ресурсные записи соответствующих хостов добавляются в зоны DNS автоматически при включении их в домен FreeIPA. Чудеса техники не иначе. Но знать как это работает всё же необходимо.
Ответ: Увеличить последовательный номер в SOA записи этой зоны
Вопрос 11.
В каком файле задаются пароль и имя пользователя устанавливаемой по сети ОС? (напишите только имя файла)
Честно скажу — я отвык устанавливать Linux с диска. Установка по сети с автоматическими ответами на вопросы установщика экономит массу времени.
Лично я сначала устанавливаю систему, а потом настраиваю её с помощью Ansible.
Не пользуюсь образами системы, потому-что считаю вариант с Ansible более гибким.
Касательно пароля системы установленной по сети — использую один и тот же стандартный пароль, который впоследствии Ansible заменяет на актуальный.
Так же в автоматическом режиме в домашний каталог учётной записи администратора копируется публичный ключ ssh.
Ответ: preseed.cfg
Вопрос 12.
Какие компоненты входят в интеграционное IdM решение FreeIPA?
Ответить на этот вопрос нам поможет официальная документация, либо команда:
apt info freeipa-*
В её выводе будут перечислены все пакеты от которых зависит freeipa-server.
На самом деле freeipa не самодостаточный продукт, под «её капотом» трудятся хорошо известные приложения – 389 Directory Server suite (389-ds-base), MIT Kerberos (krb5-kdc), BIND 9 (bind9), Samba (samba) и другие.
Центра сертификации DogTag в стандартном репозитории Вы не найдёте, так как он использует Java (что нежелательно с позиции безопасности), однако он тоже входит в состав FreeIpa.
Ответ: DogTag, BIND, MIT Kerberos.
Вопрос 13.
Какие команды предназначены для получения информации о запущенных сетевых службах на локальном хосте?
Как системному администратору Вам довольно часто придётся сталкиваться с диагностикой сетевых служб.
Это может быть банальная проверка, что приложение слушает заданный порт (netstat, ss).
Это может быть настройка firewall, где нужно знать какие порты слушают приложения операционной системы (netstat, ss) (к слову, тут желательно зайти на сайт приложения, обычно в документации есть соответствующий раздел – так как приложение может использовать разные порты для выполнения разных задач).
Либо в момент отчаяния провести диагностику на сетевом уровне с помощью tcpdump (крайние задачи, что вспомню — диагностика работы VOIP, написание приложения с аутентификацией через Kerberos и его длительная отладка, перехват забытого пароля IP камеры, отладка работы «умного» чайника и т.д.).
Ответ: netstat, ss, tcpdump
Вопрос 14.
Какие команды можно использовать для обнаружения сетевых служб на удалённых хостах?
Такие задачи так же периодически возникают, но в основном, когда встаёт вопрос с безопасностью информации.
Кстати у меня был забавный случай лет пять назад. Как-то баловался с nmap, сканировал компьютеры своей сети на наличие открытых портов и вдруг в выводе известного мне компьютера появляется +100500 открытых портов всевозможных программ.
Сначала отнёсся скептически, думал ошибка какая-то, потом убедился, что всё указано правильно и вывод реально такой. Проверил свой компьютер – всё нормально. Проверил удалённый – беда.
Начал сканировать другие хосты – то же самое. Везде открыта тьма портов с неизвестными мне службами. Причём локально (с использованием netstat, ss) открытых портов не видно.
Ну всё, думаю, приехали. Всё же в том китайском тонком клиенте оказалась закладка и хозяин в своей сети уже давно не я, а с моим компьютером всё в порядке, чтобы я ничего не заподозрил (я никогда не носил шапочку из фольги, просто минутная слабость).
Потряс головой, ну нет, так не может быть…
Через пару минут вспомнил, что на время работы afick на своём компьютере отключил антивирус Касперского. Сразу отключил антивирус на удалённом хосте, просканировал его – всё нормально.
Видимо это механизм защиты от сканирования Антивируса Касперского, чтобы ввести злоумышленника в заблуждение.
Такая вот весёлая история с nmap.
Nc использую, чтобы быстро проверить открыт ли порт на удалённом хосте или нет.
Если Astra Linux SE не 1.7 использую curl telnet://ip:port (по понятным причинам работает только с tcp, поэтому nc всё же предпочтительнее при наличии).
Ответ: nc, nmap
Вопрос 15.
В каком порядке происходит работа серверов при сетевой установке?
При сетевой установке всё начинается с DHCP сервера, который помимо того, что выделяет IP адрес из пула, сообщает IP адрес сервера загрузки (т.е. tftp сервера).
В ходе работы tftp сервер предоставляет клиенту ядро Linux и initrd, т.е. фактически запускает операционную систему для установки. Запускается оболочка установщика.
Ну и в процессе установки все пакеты загружаются с репозитория размещённого на ftp сервере (либо web-сервере).
Ответ: isc-dhcp-server, tftpd-hpa, apache2 (или vsftp).
Вопрос 16.
Какой параметр в файле dhcpd.conf настраивает способ обновления DNS зон?
Динамическое обновление зон очень удобно в среде с мобильными сетевыми устройствами.
В моей ситуации таких устройств минимум, поэтому с динамическим обновлением зон DNS я работал только на виртуальной машине в качестве эксперимента.
Ответ на вопрос тестирования можно узнать в официальной документации. Из прочитанного я понял, что стиль обновления DNS это тонкая настройка, связанная со стандартами обновления (например, один из стилей разрабатывался тогда, когда работа со стандартом обновления не была завершена, кроме того, если ранее для обновления использовался скриптовый язык (стиль ad-hoc), то interim был переписан на C).
Ответ: ddns-update-style
Вопрос 17.
Как узнать, какой MPM-модуль Apache активен в данный момент?
Не буду копировать лекцию об Apache, скажу только что существует три модуля (prefork, worker, event) каждый из которых имеет свои плюсы и минусы. Кстати этот сайт использует модуль prefork.
Ответ: apachectl -V
Вопрос 18.
Каким способом можно перезапустить apache2 не завершая установленных соединений (мягкий перезапуск)?
И снова вопрос про apache. Мягкий перезапуск хорош тем, что не завершает установленных соединений.
Аргумент graceful (в переводе с английского элегантный, изящный, грациозный) команды apachectl позволяет выполнить перезагрузку демона без прерывания соединений.
Но если в конфигурации будет допущена грубая ошибка, то демон всё равно может «умереть».
При выполнении systemctl reload apache2 выполняется всё тот же graceful перезапуск.
В этом Вы сами можете убедиться командой:
systemctl cat apache2 | grep Reload
Ответ: apachectl graceful, systemctl reload apache2
Вопрос 19.
Какой тип почтового хранилища использует агент доставки (MDA) в защищенной системе электронной почты?
Агент доставки Dovecot поддерживает несколько типов почтовых хранилищ о которых Вы можете прочитать в его документации.
Но в его реализации в составе защищённой системы электронной почты используется Maildir.
Отличительной особенностью данного типа хранилища является то, что каждое сообщение помещается в отдельный файл – и это хорошо по многим причинам.
Но главная причина такого выбора в использовании мандатных меток.
Кроме того, я так же рекомендую использовать Maildir и для Thunderbird (устанавливается в настройках, действует только при создании почты – старая почта не конвертируется в Maildir).
Использование Maildir повышает удобство работы с почтой, когда нужно удалённо получить какое-либо письмо через ssh (пару дней назад стояла такая задача).
На удалённом компьютере Thunderbird был настроен на использование mbox, поэтому пришлось из монолитного файла длиной 200 мегабайт вытаскивать нужное письмо, и с помощью base64 раскодировать приложение к нему.
Кстати, использование Maildir повышает скорость работы почты в thunderbird при активированном режиме гарантированного затирания.
Остаётся только один вопрос, с какой буквы написать ответ (т.к. традиционно Maildir пишется с большой буквы 🙂 ).
Ответ: Maildir
Вопрос 20.
Ресурсные записи, каких типов должны обязательно присутствовать в зонах прямого и обратного отображения DNS?
Вопрос на знание DNS.
В каждом конфигурационном файле зоны обязательно указываются записи типа SOA и NS.
Первая указывает, на каком сервере хранится эталонная информация о зоне, электронную почту администратора обслуживающего зону, последовательный номер зоны и другие параметры обновления для подчинённых DNS серверов.
Вторая запись указывает на обслуживающие зону авторитетные DNS сервера.
Обе записи критически важны для работы DNS.
Часто новички забывают менять порядковый номер зоны – в результате чего её обновление не вступает в силу. Во FreeIPA делать это не придётся, номера обновляются автоматически.
Ответ: SOA, NS
Будет ли разбор тестов AL-1705
Да, если будут вопросы с вариантами ответов.