Поставляемые модули#

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

Модули, поставляемые совместно с веб-сервером Apache HTTP Server, приведены в таблице ниже. В столбце «Модуль» первым приведено логическое название, отражающее его функциональность и используемое при администрировании сервера. Вторым (в скобках) - внутреннее имя (идентификатор), с помощью которого модуль регистрируется в системе, и используемое в директиве LoadModule.

Модули веб-сервера Apache HTTP Server#

Модуль

Описание

core (core_module)

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

mod_access_compat (access_compat_module)

Предоставляет совместимость с устаревшими директивами управления доступом (например, Allow, Deny, Order)

mod_actions (actions_module)

Позволяет выполнять CGI-скрипты на основе типа файла или метода запроса

mod_alias (alias_module)

Обеспечивает возможность создания псевдонимов (алиасов) для путей файловой системы

mod_allowmethods (allowmethods_module)

Управляет разрешенными HTTP-методами (например, GET, POST, PUT)

mod_asis (asis_module)

Позволяет отправлять файлы «как есть», без добавления HTTP-заголовков сервером

mod_auth_basic (auth_basic_module)

Обеспечивает базовую аутентификацию по логину и паролю с использованием HTTP Basic Auth

mod_auth_digest (auth_basic_module)

Обеспечивает более безопасную аутентификацию с использованием HTTP Digest Auth

mod_auth_gssapi (auth_gssapi_module)

Предоставляет поддержку аутентификации на основе протокола Kerberos через механизм GSS-API (Generic Security Services Application Program Interface)

mod_auth_mellon (auth_mellon_module)

Обеспечивает поддержку аутентификации через протокол SAML (Security Assertion Markup Language)

mod_auth_openidc (auth_openidc_module)

Предоставляет поддержку аутентификации через протокол OpenID Connect (OIDC)

mod_authn_anon (authn_anon_module)

Обеспечивает анонимную аутентификацию, позволяя использовать фиктивные имена пользователей

mod_authn_core (auth_basic_module)

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

mod_authn_dbd (auth_basic_module)

Обеспечивает аутентификацию через базу данных SQL (использует mod_dbd)

mod_authn_dbm (auth_basic_module)

Обеспечивает аутентификацию через DBM-файлы (базы данных в виде файлов)

mod_authn_file (auth_basic_module)

Обеспечивает аутентификацию через текстовые файлы (например, .htpasswd)

mod_authn_socache (authn_socache_module)

Обеспечивает кеширование результатов аутентификации для повышения производительности

mod_authnz_fcgi (authnz_fcgi_module)

Обеспечивает аутентификацию и авторизацию через внешние FastCGI-приложения

mod_authz_core (auth_basic_module)

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

mod_authz_dbd (auth_basic_module)

Обеспечивает авторизацию через базу данных SQL (использует mod_dbd)

mod_authz_dbm (auth_basic_module)

Обеспечивает авторизацию через DBM-файлы

mod_authz_groupfile (auth_basic_module)

Обеспечивает авторизацию на основе групп, указанных в файле

mod_authz_host (auth_basic_module)

Обеспечивает авторизацию на основе IP-адреса или имени хоста

mod_authz_owner (auth_basic_module)

Обеспечивает авторизацию на основе владельца файла

mod_authz_user (auth_basic_module)

Обеспечивает авторизацию на основе имени пользователя

mod_autoindex (autoindex_module)

Автоматически генерирует список файлов в каталоге, если индексный файл отсутствует

mod_brotli (brotli_module)

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

mod_buffer (buffer_module)

Буферизирует ответы сервера для оптимизации передачи данных

mod_cache_disk (cache_disk_module)

Реализует кеширование на диске для модуля mod_cache

mod_cache_socache (cache_socache_module)

Обеспечивает кеширование с использованием общего кеша (shared object cache)

mod_cache (cache_module)

Обеспечивает кеширование HTTP-запросов для повышения производительности

mod_cgi (cgi_module)

Обеспечивает поддержку CGI-скриптов для выполнения динамических приложений

mod_cgid (cgid_module)

Обеспечивает поддержку CGI-скриптов в многопоточной среде

mod_charset_lite (charset_lite_module)

Преобразует кодировку символов в ответах сервера

mod_data (data_module)

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

mod_dav_fs (dav_fs_module)

Реализует хранилище файлов для WebDAV на основе файловой системы

mod_dav_lock (dav_lock_module)

Обеспечивает поддержку блокировок ресурсов для WebDAV

mod_dav (dav_module)

Обеспечивает поддержку расширения WebDAV для управления файлами через HTTP

mod_dbd (dbd_module)

Управляет подключениями к базам данных и предоставляет их другим модулям (например, mod_authn_dbd)

mod_deflate (deflate_module)

Сжимает ответы сервера перед отправкой клиенту, используя gzip или deflate

mod_dialup (dialup_module)

Эмулирует медленное соединение для тестирования производительности

mod_dir (dir_module)

Обрабатывает запросы к каталогам и ищет индексные файлы (например, index.html)

mod_dumpio (dumpio_module)

Записывает все входящие и исходящие данные сервера для целей отладки

mod_echo (echo_module)

Возвращает клиенту переданные данные, является простым модулем для тестирования

mod_env (env_module)

Управляет переменными окружения, которые могут быть переданы CGI-скриптам или SSI

mod_expires (expires_module)

Управляет заголовками Expires и Cache-Control для кеширования на стороне клиента

mod_ext_filter (ext_filter_module)

Позволяет использовать внешние программы для фильтрации содержимого

mod_filter (filter_module)

Динамически настраивает фильтры для обработки контента согласно необходимым условиям

mod_headers (headers_module)

Позволяет добавлять, изменять или удалять HTTP-заголовки в запросах и ответах

mod_heartbeat (heartbeat_module)

Отправляет сигналы состояния сервера для мониторинга

mod_heartmonitor (heartmonitor_module)

Собирает сигналы состояния сервера от других экземпляров веб-сервера

mod_http (http_module)

Обеспечивает базовую поддержку HTTP-протокола

mod_include (include_module)

Обеспечивает поддержку Server Side Includes (SSI) для вставки динамического содержимого в HTML-страницы

mod_info (info_module)

Предоставляет подробную информацию о конфигурации сервера и загруженных модулях

mod_lbmethod_bybusyness (lbmethod_bybusyness_module)

Реализует метод балансировки нагрузки, основанный на текущей загруженности серверов

mod_lbmethod_byrequests (lbmethod_byrequests_module)

Реализует метод балансировки нагрузки, основанный на количестве запросов

mod_lbmethod_bytraffic (lbmethod_bytraffic_module)

Реализует метод балансировки нагрузки, основанный на объеме трафика

mod_lbmethod_heartbeat (lbmethod_heartbeat_module)

Реализует метод балансировки нагрузки, основанный на данных о состоянии серверов

mod_log_config (auth_basic_module)

Позволяет настраивать формат и содержимое логов веб-сервера

mod_log_debug (log_debug_module)

Добавляет возможность детального логирования для отладки

mod_log_forensic (log_forensic_module)

Логирует запросы до и после обработки для анализа инцидентов

mod_logio (logio_module)

Позволяет вести логирование входящего и исходящего трафика для каждого запроса

mod_lookup_identity (lookup_identity_module)

Передает информацию о пользователях (именах или группах) в бэкенд-приложения через заголовки HTTP при аутентификации на уровне веб-сервера

mod_lua (lua_module)

Позволяет использовать скрипты Lua для обработки запросов

mod_macro (macro_module)

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

mod_mime_magic (mime_magic_module)

Определяет тип MIME-контента файла на основе его содержимого («магических» чисел)

mod_mime (mime_module)

Сопоставляет файлы с соответствующими типами MIME, кодировками и языками на основе расширений

mod_mpm_event (mpm_event_module)

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

mod_mpm_prefork (mpm_prefork_module)

Реализует модель многопроцессной обработки запросов без потоков

mod_mpm_worker (mpm_worker_module)

Реализует многопоточную модель обработки запросов для повышения производительности

mod_negotiation (negotiation_module)

Реализует механизм согласования контента (content negotiation) для выбора подходящего ресурса на основе предпочтений клиента

mod_proxy_ajp (proxy_ajp_module)

Обеспечивает прокси-поддержку для протокола AJP (Apache JServ Protocol)

mod_proxy_balancer (proxy_balancer_module)

Обеспечивает балансировку нагрузки между несколькими серверами через прокси

mod_proxy_connect (proxy_connect_module)

Позволяет использовать веб-сервер в качестве прокси для подключения к внешним серверам через протокол CONNECT (например, для HTTPS)

mod_proxy_express (proxy_express_module)

Обеспечивает динамическую конфигурацию балансировки нагрузки на основе запросов

mod_proxy_fcgi (proxy_fcgi_module)

Обеспечивает поддержку FastCGI для проксирования запросов к приложениям

mod_proxy_fdpass (proxy_fdpass_module)

Позволяет передавать файловые дескрипторы между процессами через прокси

mod_proxy_ftp (proxy_ftp_module)

Обеспечивает прокси-поддержку для FTP-серверов

mod_proxy_hcheck (proxy_hcheck_module)

Реализует проверку работоспособности серверов в пуле балансировки нагрузки

mod_proxy_http (proxy_http_module)

Обеспечивает прокси-поддержку для HTTP и HTTPS запросов

mod_proxy_scgi (proxy_scgi_module)

Обеспечивает поддержку SCGI (Simple Common Gateway Interface) для проксирования запросов

mod_proxy_uwsgi (proxy_uwsgi_module)

Обеспечивает поддержку протокола uWSGI для проксирования запросов

mod_proxy_wstunnel (proxy_wstunnel_module)

Обеспечивает туннелирование WebSocket-соединений через прокси

mod_proxy (proxy_module)

Обеспечивает прокси-функциональность для перенаправления запросов на другие серверы

mod_ratelimit (ratelimit_module)

Ограничивает скорость передачи данных клиентам

mod_reflector (reflector_module)

Отражает тело запроса обратно клиенту для тестирования

mod_remoteip (remoteip_module)

Заменяет IP-адрес клиента в запросах на адрес из заголовков (например, при работе через прокси)

mod_reqtimeout (reqtimeout_module)

Управляет таймаутами для чтения запросов от клиентов, защищая сервер от «медленных» атак

mod_request (request_module)

Предоставляет функциональность для фильтрации и обработки входящих запросов

mod_rewrite (rewrite_module)

Позволяет выполнять перезапись URL на основе гибких правил, используя регулярные выражения

mod_sed (sed_module)

Выполняет текстовые преобразования в ответах сервера с использованием sed

mod_setenvif (setenvif_module)

Устанавливает переменные окружения на основе условий, таких как заголовки запросов или свойства клиента

mod_slotmem_plain (slotmem_plain_module)

Обеспечивает простое управление разделяемой памятью для хранения данных в ней

mod_slotmem_shm (slotmem_shm_module)

Обеспечивает управление разделяемой памятью с использованием POSIX Shared Memory

mod_so (so_module)

Позволяет загружать динамические модули (shared objects) во время выполнения сервера

mod_socache_dbm (socache_dbm_module)

Хранит данные кеша сессий в формате DBM для быстрого доступа

mod_socache_memcache (socache_memcache_module)

Использует систему кеширования Memcached для хранения данных кеша сессий

mod_socache_redis (socache_redis_module)

Хранит данные кеша сессий в системе управления базами данных в памяти Redis для высокопроизводительного доступа

mod_socache_shmcb (socache_shmcb_module)

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

mod_speling (speling_module)

Корректирует ошибки в URL на основе «близости» написания между введенным URL и существующими на сервере

mod_status (status_module)

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

mod_substitute (substitute_module)

Позволяет заменять текст в ответах сервера на основе заданных шаблонов

mod_suexec (suexec_module)

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

mod_systemd (systemd_module)

Интегрирует веб-сервер с systemd для управления журналами и уведомлениями

mod_unique_id (unique_id_module)

Генерирует уникальный идентификатор для каждого запроса, полезен для отладки и логирования

mod_unixd (unixd_module)

Обеспечивает базовые функции безопасности для работы веб-сервера под Unix-подобными системами

mod_userdir (userdir_module)

Позволяет пользователям создавать персональные каталоги (например, ~/public_html)

mod_usertrack (usertrack_module)

Отслеживает пользователей с помощью cookie (например, для анализа поведения посетителей)

mod_version (version_module)

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

mod_vhost_alias (vhost_alias_module)

Реализует динамическое определение виртуальных хостов на основе шаблонов

mod_watchdog (watchdog_module)

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

mod_wsgi (wsgi_module)

Обеспечивает интеграцию между веб-сервером и Python-приложениями, написанными с использованием WSGI (Web Server Gateway Interface)

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