Установка · 2 min read · Feb 12, 2026
Установка и настройка Auth Shadow на Debian/Ubuntu
Установка и настройка Auth Shadow на Debian/Ubuntu
Предостережение
Этот метод установки и настройки работает для меня, используя комбинацию apt и сборки из исходников. Поэтому может существовать более простой метод. Всегда убедитесь, что проверяете программное обеспечение, которое вы устанавливаете из apt, используя
apt-cache showpkg pkgnameдля версии и зависимостей. Как обычно, ваши результаты могут отличаться, и вы действуете на свой страх и риск.
Предварительные требования
У вас должна быть работающая установка apache или apache2, и вы должны понимать концепции, связанные с перезапуском сервера, включением модулей и местоположением и форматом конфигурационных файлов, например, httpd.conf или apache2.conf.
Основная информация
Auth Shadow или mod-auth-shadow — это модуль для apache (и apache2, в некотором роде), который позволяет аутентификацию против /etc/shadow. Преимущества заключаются в том, что любой системный пользователь с паролем может быть аутентифицирован для web_dav, subversion или просто для https сервера. Единственный другой способ сделать это — с помощью PAM. Этот метод опасен, потому что пользователь apache (www-data в моем случае) должен иметь возможность читать /etc/shadow. Очевидно, это не лучшая идея. Auth Shadow достигает этого безопасно, используя промежуточную программу под названием validate. Это работает, потому что validate может принадлежать root, но быть исполняемым для всех. В случае, если ваш сервер будет скомпрометирован через apache, ваш файл паролей не будет доступен для чтения.
Установка
Официально mod-auth-shadow существует только для apache, а не для apache2. Я не был готов это принять. Я продемонстрирую установку на debian/ubuntu, используя apt для apache. Для apache2 мне пришлось найти сборку модуля для x86. Это создает две проблемы. Во-первых, самая новая версия еще не была собрана, и во-вторых, версия, которая была собрана (в .rpm файле), содержит ошибку в программе “validate”, вызывающую ошибки uid.
Загрузка - только для Apache2
Скачайте rpm для вашей архитектуры с rpmfind.net - downloads.
Скачайте последний исходный код (для компиляции validate) с sourceforge здесь.
Установка модуля
Apache:
sudo apt-get install libapache-mod-auth-shadowApache2:
Чтобы установить модуль из .rpm, вам нужно установить alien.
sudo apt-get install alienОтсюда вы можете установить rpm, выполнив
sudo alien -i packagename.rpmКомпиляция Validate - только для Apache2
В каталоге, содержащем исходный код mod-auth-shadow, выполните компиляцию с
sudo make validatesudo cp validate /usr/sbinЭто должно быть выполнено от имени root, потому что права доступа изменяются.
Загрузка модуля Auth Shadow
Apache должен обрабатываться автоматически с помощью apt-get install.
Apache2 требует от нас
sudo a2enmod auth_shadowНастройка Apache(2)
Где бы ни находились ваши конфигурации для каталогов, местоположений или виртуальных хостов, попробуйте изменить следующую конфигурацию в соответствии с вашими потребностями. В этом примере включены только основные требования.
Кроме того, я не рекомендую использовать AuthType Basic без ssl, потому что пароли будут отправляться в открытом виде.
AuthType Basic
AuthShadow on
AuthName "Безопасный вход с использованием паролей пользователей"
Require user system-username
#Require user valid-user
Order allow,deny
Allow from all
Get new posts in your inbox
No spam. Unsubscribe anytime.