Установка · 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-shadow

Apache2:

Чтобы установить модуль из .rpm, вам нужно установить alien.

sudo apt-get install alien

Отсюда вы можете установить rpm, выполнив

sudo alien -i packagename.rpm

Компиляция Validate - только для Apache2

В каталоге, содержащем исходный код mod-auth-shadow, выполните компиляцию с

sudo make validate
sudo 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  
Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.