rhcsa_labs/rh199_(rapid)/labs.md

17 KiB
Raw Permalink Blame History

Лабораторные работы по курсу RH199 (RHCSA)


top
  1. Управление локальными пользователями и группами.
  2. Управление доступом к файлам.
  3. Настройка SELinux.
  4. Настройка производительности системы.
  5. Установка и обновление программного обеспечения.
  6. Управление локальным хранилищем.
  7. Настройка сервисов и управление загрузкой процессов.
  8. Настройка сетевых интерфейсов.
  9. Анализ и хранение логов.
  10. Реализация расширенных функций хранилища.
  11. Доступ к NFS (Network-Attached Storage).
  12. Управление сетевой безопасностью.
  13. Запуск контейнеров.

Chapter1

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

  1. Подключиться по ssh к server1
  2. У всех вновь создаваемых пользователей пароль необходимо изменять каждые 30 дней.
  3. Создать новую группу consultants с GID 35000.
  4. Настроить административные права членов группы consultants, чтобы они могли выполнять любые команды от любых пользователей.
  5. Создать пользователей consultant1, consultant2, и consultant3 и задать им в качестве дополнительной группы consultants.
  6. Учётные записи пользователей consultant1, consultant2, и consultant3 настроить таким образом, чтобы срок их действия истекал через 90 дней с текущей даты.
  7. Изменить политику паролей для учетной записи consultant2, чтобы нужно было менять пароль каждые 15 дней.
  8. Пользователи consultant1, consultant2, и consultant3 при первом входе в систему должны изменить свои пароли в принудительном порядке.

вверх


Chapter2

Управление доступом к файлам.

  1. На server1 создать директорию /home/techdocs.
  2. Создать группу techdocs, изменить группу владельца директории /home/techdocs на группу techdocs.
  3. Создать пользователей tech1, tech2 и добавить их в группу techdocs.
  4. Убедиться, что пользователи tech1, tech2 не могут создавать файлы в папке /home/techdocs.
  5. Для директории /home/techdocs установить следующие разрешения: setgid (2), чтение/запись/исполнение для владельца и группы (7), для остальных нет никаких прав (0).
  6. Проверить, что разрешения установлены корректно.
  7. Проверить, что члены группы techdocs (tech1, tech2) теперь могут создавать и редактировать файлы в директории /home/techdocs.
  8. Изменить глобальный скрипт загрузки. Обычные пользователи должны иметь umask при которой другие пользователи не смогут просматривать и изменять новые файлы и каталоги.

вверх


Chapter3

Настройка SELinux.

  1. На server1 запустить браузер и ввести адрес http://server2/lab.html. Отобразится сообщение Forbidden You don't have permission to access this resource.
  2. Изучите и определите проблему SELinux, которая не позволяет Apache обслуживать веб-контент.
  3. Отобразите тип контекста SELinux для новой и старой HTML страницы. Display the SELinux context of the new HTTP document root and the original HTTP document root. Устраните проблему SELinux, из-за которой Apache не может обслуживать веб-контент.
  4. Убедитесь, что проблема SELinux решена и Apache может обслуживать веб-контент.

вверх


Chapter4

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

  1. Измените текущий профиль для server1 на balanced.
  2. Два процесса на сервере сильно загружают процессор. Измените приоритет этих процессов на значение 10. для запуска тестовых процессов можно использовать такие команды
cat /dev/zero >> /dev/null &
cat /dev/zero >> /dev/null &

вверх


Chapter5

Установка и обновление программного обеспечения.

Все действия необходимо выполнять на server1

  1. Проверить, находится ли система в активированном состоянии. Если система активирована, необходимо отменить регистрацию и удалить системный репозиторий, который устанавливается при регистрации.
  2. Используя полный установочный ISO образ, настроить локальный репозиторий BaseOS и APPSteram. Проверку GPG не использовать.
  3. Установить пакет xsane-gimp и модуль PostgreSQL client версии 12.
  4. Установить пакет htop-3.0.5-1.el8.x86_64.rpm из директории /home/student.
  5. Выполнить проверку установленных пакетов и модулей.

вверх


Chapter6

Управление локальным хранилищем.

  1. На server1 доступны 2 новых диска. На первом диске создайте раздел GPT объемом 2 Гб с именем backup.
  2. Отформатируйте созданный раздел в XFS и создайте постоянную точку монтирования в директории /backup.
  3. На этом же диске создайте два дополнительных раздела по 512 Мб с именами swap1 и swap2 соответственно. Укажите корректную метку для этих разделов.
  4. Инициализируйте разделы в качестве разделов подкачки, они должны быть активны при загрузке системы. Предусмотрите более высокий приоритет использования раздела swap2 перед swap1.
  5. Проверьте свою работу: перезагрузите server1, в директории /backup должен быть смонтирован XFS раздел размером 2 Гб, а также 2 раздела подкачки общим объемом 1 Гб с более высоким приоритетом использования у раздела swap2.

вверх


Chapter7

Настройка сервисов и управление загрузкой процессов.

  1. На server1 запустить сервис psacct.
  2. Настроить автозагрузку сервиса psacct.
  3. Остановить сервис rsyslog и удалить его из автозагрузки.
  4. Перезагрузить server1 и проверить результат:
  • сервис psacct должен быть загружен и активен
  • сервис rsyslog не должен быть активен.

вверх


Chapter8

Настройка сетевых интерфейсов.

  1. На server1 создать новое сетевое подключение с данными из таблицы:
    Параметр Значение
    Имя соединения lab
    IP адрес 192.168.10.110/24
    Gateway 192.168.10.9
    DNS 192.168.10.9

Настроить соединение на автоматическое подключение к сети.

  1. На server2 создать новое сетевое подключение с данными из таблицы:
    Параметр Значение
    Имя соединения lab
    IP адрес 192.168.10.111/24
    Gateway 192.168.10.9
    DNS 192.168.10.9

Настроить соединение на автоматическое подключение к сети.

  1. Перезагрузить server1 и server2
  2. Проверить доступность обоих хостов с новыми адресами.

вверх


Chapter9

Анализ и хранение логов.

  1. На server1 изменить часовой пояс на соответствующий городу Новосибирск.
  2. Показать логи записанные за последние 30 минут.
  3. Создать файл /etc/rsyslog.d/auth-errors.conf, с соответствующей конфигурацией rsyslog, при которой в файл /var/log/auth-errors будут записываться все события связанные с проблемами аутентификации и безопасности. Используйте категорию authpriv и приоритет alert.

вверх


Chapter10

Реализация расширенных функций хранилища.

  1. На server1 установите пакеты stratisd и stratis-cli.
  2. С помощью systemctl активируйте и запустите сервис stratisd.
  3. Создайте пул Stratis labpool состоящий из устройства /dev/sdb.
  4. Увеличьте объем пула используя доступный в системе диск /dev/sdc.
  5. Создайте на пуле файловую систему labfs. Смонтируйте её в директорию /labstratisvol. Не забудьте включить x-systemd.requires=stratisd.service в параметры монтирования в /etc/fstab.
  6. Создайте снапшот labfs-snap файловой системы labfs.
  7. Создайте VDO раздел labvdo с файловой системой XFS, используя устройство /dev/sdd. Установите логический размер 50 Гб.
  8. Смонтируйте labvdo в директорию /labvdovol. Не забудьте включить x-systemd.requires=vdo.service в параметры монтирования в /etc/fstab.
  9. Перезагрузите server1 и убедитесь, что все созданные разделы корректно смонтированы.

вверх


Chapter11

Доступ к NFS (Network-Attached Storage).

  1. На server1 настроить постоянное монтирование удалённой NFS папки сервера server2 /shares/nfs в локальную директорию /mnt/nfs.
  2. На server1 настроить монтирование по запросу (automount) удалённой NFS папки сервера server2 /shares/autofs в локальную директорию /labshares/autofs.
  3. Перезагрузить server1, убедиться, что сетевые папки автоматически смонтированы в соответствующие локальные директории.

вверх


Chapter12

Управление сетевой безопасностью.

Ваша компания решила использовать новое web-приложение. Это приложение прослушивает порты 80/TCP и 1001/TCP. Порт 22/TCP для доступа по SSH также должен быть доступен. Все изменения, которые будут сделаны, должны быть доступны после перезагрузки.
Все настройки этой работы необходимо производить на server1, доступ проверять с server2.

  1. С server2 проверить доступ к серверу http://server1 и виртуальному хосту http://server1:1001.
  2. Подключитесь к server1, чтобы разобраться в причинах ограничения доступа.
  3. Настройте SELinux для доступа сервису httpd прослушивать порт 1001/TCP.
  4. С server2 проверить доступ к серверу http://server1 и виртуальному хосту http://server1:1001.
  5. Подключитесь к server1, чтобы определить верные ли порты указаны в межсетевом экране (firewall).
  6. Добавьте порт 1001/TCP в постоянную конфигурацию зоны public.
  7. Проверьте доступ к серверу http://server1 и виртуальному хосту http://server1:1001.

вверх


Chapter13

Запуск контейнеров.

Для выполнения этой лабораторной работы необходимо создать учётную запись на https://quay.io/.
https://quay.io/ - реестр образов (аналог https://hub.docker.com/)

  1. На server1 установить средства управления контейнерами.
  2. Реестр образов https://quay.io/ содержит образ quay.io/bitnami/mariadb, необходимо переключиться на пользователя poduser используя пароль redhat, посмотреть доступные версии БД в образе для загрузки и скачать версию 10.6.
  3. На server1 с учетной записью poduser создать папку /home/poduser/db_data. Подготовить директорию, чтобы контейнеры имели доступ чтения/записи в ней. Директория будет использована в качестве постоянного хранилища.
  4. На server1 с учетной записью poduser создать контейнер содержащий образ MariaDB с именем inventorydb. Необходимо выполнить трансляцию внутреннего порта в контейнере 3306 на внешний порт server1 13306. Подключить директорию /home/poduser/db_data в качестве хранилища БД в контейнере директории /var/lib/mysql/data. Кроме этого необходимо объявить следующие переменные в контейнере:
    Переменная Значение
    MARIADB_USER operator1
    MARIADB_PASSWORD redhat
    MARIADB_DATABASE inventory
    MARIADB_ROOT_PASSWORD redhat

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

  • подключиться к контейнеру;
  • подключиться к консоли управления БД (команда - mysql -u root -p, ввести пароль redhat);
  • убедиться в том, что БД с именем inventory присутствует в списке доступных (команда - SHOW DATABASES;);
  • выйти из консоли управления БД (команда - exit);
  • отключиться от контейнера.
  1. Настроить systemd на автоматический запуск контейнера inventorydb при загрузке server1.

вверх