Apache httpd : Basic 認証 + LDAP2025/11/13 |
|
mod_ldap をインストールして、Basic 認証の際に、LDAP ディレクトリーのユーザーで認証できるよう設定します。
|
|||||||||||
| [1] |
Basic 認証の際のパスワードは平文で送信されるため、事前に SSL/TLS の設定を実施しておきます。 |
||||||||||
| [2] | |||||||||||
| [3] |
Active Directory 側に、Apache httpd からの接続用の AD ユーザーを作成しておきます。 |
||||||||||
| [4] | OpenSSL をインストールしておきます。 |
|
www:~ # zypper -n install openssl-3
|
| [5] | Basic 認証 + LDAP の設定です。 例として [/srv/www/htdocs/auth-ldap] ディレクトリーを認証対象として設定します。 |
|
# AD の証明書を取得 www:~ #
www:~ #
vi /etc/apache2/conf.d/authnz_ldap.conf # 新規作成 # 下例では ベース DN から [LDAPUsers] OU 配下に検索範囲を限定 # よって、下例の場合、認証可能な AD ユーザーは [LDAPUsers] OU 配下に登録されたユーザーのみ # [AuthLDAPBindDN], [AuthLDAPBindPassword] は事前に作成した接続用 AD ユーザーを指定
LDAPTrustedMode SSL
LDAPTrustedGlobalCert CA_BASE64 /etc/apache2/ssl.crt/fd3s.srv.world.cer
<Directory "/srv/www/htdocs/auth-ldap">
SSLRequireSSL
AuthType Basic
AuthName "LDAP Authentication"
AuthBasicProvider ldap
AuthLDAPURL "ldaps://fd3s.srv.world:636/ou=Hiroshima,dc=srv,dc=world?sAMAccountName?sub?(objectClass=*)"
AuthLDAPBindDN ldapuser@srv.world
AuthLDAPBindPassword Password
Require valid-user
</Directory>
www:~ #
chgrp wwwrun /etc/apache2/conf.d/authnz_ldap.conf www:~ # chmod 640 /etc/apache2/conf.d/authnz_ldap.conf www:~ # a2enmod ldap www:~ # a2enmod authnz_ldap www:~ # systemctl restart apache2 <html> <body> <h1 style="width: 100%; font-size: 48px; text-align: center;"> Test Page for LDAP Authentication </h1> </body> </html> |
| [6] | SELinux を有効にしている場合は、ポリシーの許可設定が必要です。 |
|
www:~ # setsebool -P httpd_can_network_connect on www:~ # setsebool -P httpd_can_connect_ldap on |
| [7] | 任意のクライアントコンピューターで Web ブラウザーを起動し、作成したテストページにアクセスします。すると設定通り認証を求められるので、AD のユーザーで認証します。 |
|
| [8] | 正常に認証が成功して、テストページが表示されれば OK です。 |
|
| Sponsored Link |
|
|