Ревизия 180, сборка 20 июня 2008 года.
Copyright © 2006, 2007 Евгений Миньковский
Аннотация
Данная книга задумана как методическое пособие для подготовки к экзамену BSDA. Книга, тем не менее, может быть полезна не только тем кто собирается сдавать этот экзамен, но и просто широкому кругу IT-специалистов, желающих систематизировать свои знания об операционных системах семейства BSD (NetBSD, OpenBSD, FreeBSD, DragonFly BSD).
В формате HTML книга доступна в многостраничном варианте (данный вариант) и в виде одной большой страницы.
Собственно вопросы экзамена BSDA можно посмотреть отдельно.
![]()  | Замечание | 
|---|---|
Работа ещё только начата, в оглавлении приняты следующие обозначения: 
 Впрочем, в Москве даже на улицах светофоры не всегда горят правильно, что уж говорить об этом труде...  | 
Содержание
1. Установка и обновление операционной системы и програмного обеспечения
1.1. Разбираться в программах установки каждой операционной системы
1.2. Разбираться какие команды доступны для upgrade'а операционной
      системы
1.3. Понимание разницы между заранее скомпилированными бинарными
      дистрибутивами и компиляцией из исходников
1.4. Понимание когда выгодно инсталлировать прекомпилированные
      бинарники и как это делать
1.5. Разбираться в методах настройки и компилирования бинарников
1.6. Определять, какое програмное обеспечение инсталлировано в
      системе
1.7. Определять, какое програмное обеспечение нуждается в
      обновлении
1.8. Обновлять установленное програмное обеспечение
1.9. Определять, какое програмное обеспечение имеет проблемы с
      безопасностью
1.10. Следовать инструкциям секьюрити-консультантов и накладывать
      security-patch
2. Безопасность в операционной системе
2.1. Определить уровень безопасности системы
2.2. Конфигурирование сервера SSH в соответствии с требованиями
2.3. Конфигурировние SSH сервера для аутентификации по ключу
2.4. Предохранение ключа при обновлении системы
2.5. Разбираться в альтернативных механизмах аутентификации
2.6. Разбираться в альтернативных методах авторизации
2.7. Разбираться в основных рекомендованных методах доступа [до хоста]
2.8. Разбираться в брандмауэрах BSD и синтаксисе конфигурационных файлов
2.9. Разбираться в механизмах использования шифровальных устройств BSD
2.10. Разбираться в методах проверки аутентичности бинарного файла
2.11. Разбираться в способах запуска сервиса в изолированной среде (restraining service)
2.12. Смена алгоритма шифрования используемого для защиты базы с паролями
2.13. Смена приветствия системы
2.14. Защита аутентификационных данных
3. Файлы, файловые системы и диски
3.1. Монтирование и размонтирование файловых систем
3.2. Конфигурирование NFS
3.3. Определение какие файловые системы смонтированы и какие будут смонтированы при загрузке
3.4. Определять ёмкость диска и какие файлы занимают больше места
3.5. Создание и просмотр символических и жёстких ссылок
3.6. Просмотр и изменение ACL
3.7. Просмотр и изменение пермиссий с использованием как символьных, так и восьмеричных мод
3.8. Изменение владельца файла и группы
3.9. Резервное копирование и восстановление файлов и директорий на локальный диск или ленту
3.10. Резервное копирование и восстановление файловой системы
3.11. Знание структуры каталогов системы
3.12. Ручной запуск программы проверки файловой системы и средств её восстановления
3.13. Определение и изменение флагов файлов
3.14. Слежение за состоянием виртуальной памяти системы
4. Пользователи и управление учётными записями
4.1. Создание, изменение и удаление учётных записей
4.2. Создание системных учётных записей
4.3. Отключение или включение учётной записи (lock и unlock)
4.4. Идентификация и членство в группах
4.5. Определение кто сейчас присутствует в системе или последнего времени входа в систему
4.6. Включение слежения за учётными записями и просмотр статистики
4.7. Изменение пользовательской оболочки
4.8. Контролировать какие файлы будут копироваться в новую пользовательскую директорию при создании учётной записи
4.9. Смена пароля
5. Основы системного администрирования
5.1. Определение какой процесс расходует основную часть ресурсов ЦПУ
5.2. Определять активные процессы и посылать им сигналы
5.3. Использование скриптов rc(8) для
определения запущенных сервисов, их запуск, остановка и
перезапуск
5.4. Определение установленного оборудования и его конфигурирование
5.5. Определение какие модули ядра загружены, их загрузка и выгрузка
5.6. Изменение на лету переменных ядра
5.7. Изучение состояния програмного RAID'а (mirror or stripe)
5.8. Определение какой MTA используется системой
5.9. Конфигурирование системы ведения системных журналов
5.10. Просмотр журналов для разрешения проблем и слежения за поведением системы
5.11. Понимание основных проблем с принтером
5.12. Создание или изменение почтовых псевдонимов в Sendmail и Postfix
5.13. Остановка, перезагрузка или перевод системы в однопользовательский режим
5.14. Отличие жёстких ограничений от мягких и изменение существующих системных ограничений
5.15. Знание утилит BSD для регулировки трафика и контроля за полосой пропускания
5.16. Знание распространённых конфигурационных системных файлов и,
возможно, сторонних конфигурационных файлов различных сервисов
5.17. Конфигурирование сервисов для автоматического старта при запуске системы
5.18. Конфигурирование скриптов, нужных для различных задач по обслуживанию системы, для периодического запуска
5.19. Просмотр очереди Sendmail'а или Postfix'а
5.20. Определение когда последний раз была запущена система и какова её загруженность
5.21. Слежение за операциями ввода/вывода на диске
5.22. Работа с занятыми устройствами
5.23. Определение информации характеризующей операционную систему
5.24. Понимание преимуществ использования лицензии BSD
6. Сетевое администрирование
6.1. Определение существующих установок TCP/IP
6.2. Установка параметров TCP/IP
6.2.1. hostname(1) — задание имени машины
6.2.2. ifconfig(8) — настройки сетевых интерфейсов
6.2.3. route(8) — настройка таблицы маршрутизации
6.2.4. resolv.conf(5) — настройка клиента DNS
6.2.5. hosts(5) — локальная база имён
6.2.6. Как сохранить установленные сетевые параметры
6.3. Определение какие TCP или UDP порты открыты в системе
6.4. Проверка доступности TCP/IP сервиса
6.5. Запрос к серверу DNS
6.6. Определение кто ответственный за зону DNS
6.7. Изменение порядка разрешения имён
6.8. Перевод сетевой маски между системами точечно-десятичной, точечно-шестнадцатеричной или CIDR
6.9. Собирать информацию используя IP адрес и маску подсети
6.10. Понимание теории адресации IPV6
6.11. Демонстрация основных навыков работы с утилитой
      tcpdump(1)
6.12. Работа с ARP и кешем найденных соседей
6.13. Конфигурирование системы для использования NTP
6.14. Просмотр и обновление «арендованных» данных DHCP
6.15. Знание как и когда устанавливать или удалять алиасы сетевого интерфейса
7. Базовые навыки работы в Unix
7.1. Перенаправление вывода и использование
      tee(1)
7.2. Определение просмотр и изменение переменных окружения
7.3. Навыки работы в vi(1)
7.4. Определение является ли файл бинарным, текстовым или содержащим данные
7.5. Поиск файлов и бинарников в системе
7.6. Поиск файла по заданным атрибутам
7.7. Написание несложных Bourne-скриптов
7.8. Поиск нужной документации
7.9. Понимание различий в страницах man
7.10. Проверка контрольной суммы файла
7.11. Продемонстрировать знакомство с оболочками используемыми по
      умолчанию в системе
7.12. Чтение почты на локальной машине
7.13. Использование контроля за задачами (job control)
7.14. Применение регулярных выражений
7.15. Преодоление ограничений на длину командной строки
7.16. Понимание значения термина домен в различных контекстах
7.17. Работа с cron
A. Список команд и файлов обсуждаемых в книге
B. Некоторые сведения о стеке протоколов TCP/IP
C. Пакетный фильтр OpenBSD — pf(4)
C.1. Введение в работу с пакетным фильтром OpenBSD
C.2. Конфигурационный файл pf.conf(5)
C.2.1. Основы конфигурирования пакетного фильтра
C.2.1.1. Списки
C.2.1.2. Макросы
C.2.1.3. Таблицы
C.2.1.4. Фильтрация пакетов
C.2.1.4.1. Синтаксис правил
C.2.1.4.2. Политика
C.2.1.4.3. Пропускаем трафик
C.2.1.4.4. Ключевое слово quick
C.2.1.4.5. Отслеживание состояния соединения
C.2.1.4.6. Хранение состояний для UDP
C.2.1.4.7. Опции таблицы состояний
C.2.1.4.8. TCP флаги
C.2.1.4.9. TCP SYN proxy
C.2.1.4.10. Борьба со спуфингом
C.2.1.4.11. Unicast Reverse Path Forwarding
C.2.1.4.12. Пассивное детектирование операционной системы
C.2.1.4.13. Опции IP
C.2.1.4.14. Пример
C.2.1.5. NAT
C.2.1.6. Перенаправление пакетов, проброс портов
C.2.1.7. Приёмы используемые для упрощения файла pf.conf(5)
C.2.2. Углублённое конфигурирование Пакетного фильтра
C.2.3. Дополнительные разделы
C.2.3.1. Журналирование в пакетном фильтре
C.2.3.2. Производительность
C.2.3.3. FTP
C.2.3.4. Authpf: авторизация в пакетном фильтре
C.2.3.5. CARP и pfsync
C.2.3.5.1. Введение в CARP
C.2.3.5.2. Как работает CARP
C.2.3.5.3. Настройка CARP
C.2.3.5.4. Пример CARP
C.2.3.5.5. Введение в pfsync(4)
C.2.3.5.6. Использование с pfsync(4)
C.2.3.5.7. Конфигурирование pfsync
C.2.3.5.8. Пример использования pfsync
C.2.3.5.9. Совместное использование CARP и
            pfsync для отказоустойчивости
C.2.3.5.10. Замечания по использованию CARP и pfsync
C.2.4. Пример: брандмауэр для дома или небольшого офиса
C.3. Управление пакетным фильтром OpenBSD
      при помощи утилиты pfctl(8)
C.4. Интеграция пакетного фильтра с програмным окружением
C.5. Программы для удобной работы с пакетным фильтром
D. Пакетный фильтр NetBSD — ipf(8)
E. Брандмауэр FreeBSD — ipfw(8)
E.1. IPFW HOWTO
E.1.1. Как включить ipfw(4)
E.1.2. Основы синтаксиса правил ipfw
E.1.3. Углублённое изучение синтаксиса правил ipfw
E.1.4. Журналирование
E.1.5. Фильтрация с учётом состояния соединений
E.1.6. Управление трафиком при помощи dummynet(4)
F. /etc/login.conf(5)Список таблиц
crypt_default
          (FreeBSD) и localcipher,
          ypcipher (OpenBSD)crontab(5) для описания
          времени выполнения заданийlogin.conf(5)login.conf(5)login.conf(5)login.conf(5) FreeBSDlogin.conf(5) характерные для OpenBSD