Модуль 1. Создание скриптов на Bash
Темы
• Файлы скриптов, общая структура и запуск в системе.
• Переменные и параметры.
• Условное выполнение.
• Циклы.
• Управление вводом и выводом.
• Описание функций.
• Выполнение скриптов при старте системы и по расписанию.
Лабораторные работы
• Обработка в скрипте переданных скрипту позиционных параметров.
• Создание стартового скрипта systemd для системной службы.
Модуль 2. Обработка текстовых данных средствами bash, grep, cut, tr, awk, sed
Темы
• Строковые преобразования средствами bash:
– расщепление строк;
– строковые подстановки.
• Регулярные выражения:
– базовые регулярные выражения POSIX (BRE);
– расширенные регулярные выражения POSIX (ERE);
– использование фильтра строк grep с регулярными выражениями.
• Фильтрация полей символов средствами cut.
• Транслятор символов tr.
• Текстовый процессор awk.
• Потоковый редактор текста sed.
Лабораторные работы
• Создание системы контроля целостности конфигурационных файлов по списку шаблонов на основе регулярных выражений.
• Написание скрипта, создающего отчет об успешных/неуспешных подключениях к сервису SSHD на основе его файлов журнала.
• Написание скрипта, создающего отчет по HTTP-запросам к Web-серверу на основе его файлов журнала.
Модуль 3. Сервисные утилиты
Темы
• Утилиты для работы с файлами:
– cat, file, stat, locate, find, dd, head, tail.
• Утилиты для работы с текстом:
– grep, sort, uniq, paste, join, wc, comm, diff, patch, echo.
• Криптографические функции:
– md5sum, sha1sum, gpg.
• Архивирование и бэкап:
– tar, gzip/bzip2, rsync.
• Утилиты работы с процессами и сигналами:
– ps, jobs, fg, bg, kill, killall, trap, wait.
• Работа с переменными окружения:
– set, export.
• Фильтрация трафика:
– iptables, ufw, firewall-cmd.
Лабораторные работы
• Написание скрипта, генерирующего стойкие к взлому пароли.
• Составление списка имеющихся в системе файлов с атрибутами SUID/SGID.
• Создание и автоматическая проверка цифровой подписи для базы системы контроля целостности конфигурационных файлов.
• Написание скрипта, блокирующего средствами пакетного фильтра узлы, запрашивающие у HTTP-сервера определенные URL-адреса.