Apache2 : Basic 認証 + LDAP2023/07/04 |
mod_ldap をインストールして、Basic 認証の際に、LDAP ディレクトリーのユーザーで認証できるよう設定します。
当例では以下のような環境の Active Directory を使用します。
|
|||||||||||
[1] |
Basic 認証の際のパスワードは平文で送信されるため、事前に SSL/TLS の設定を実施しておきます。
|
||||||||||
[2] |
Active Directory 側に、Apache2 からの接続用の AD ユーザーを作成しておきます。
当例では [ldapuser] で進めます。権限は通常の [Domain Users] のみで OK です。 |
||||||||||
[3] | Basic 認証 + LDAP の設定です。 例として [/var/www/html/auth-ldap] ディレクトリーを認証対象として設定します。 |
root@www:~#
vi /etc/apache2/sites-available/auth-ldap.conf # 新規作成 # 下例では ベース DN から [Hiroshima] OU 配下に検索範囲を限定 # よって 下例の場合 認証可能な AD ユーザーは [Hiroshima] OU 配下に登録されたユーザーのみ # [AuthLDAPBindDN], [AuthLDAPBindPassword] は事前に作成した接続用 AD ユーザーを指定 <Directory "/var/www/html/auth-ldap"> SSLRequireSSL AuthType Basic AuthName "LDAP Authentication" AuthBasicProvider ldap AuthLDAPURL "ldap://fd3s.srv.world:389/ou=Hiroshima,dc=srv,dc=world?sAMAccountName?sub?(objectClass=*)" AuthLDAPBindDN ldapuser@srv.world AuthLDAPBindPassword Password Require valid-user </Directory> chgrp www-data /etc/apache2/sites-available/auth-ldap.conf root@www:~# chmod 640 /etc/apache2/sites-available/auth-ldap.conf root@www:~# a2ensite auth-ldap Enabling site auth-ldap. To activate the new configuration, you need to run: systemctl reload apache2root@www:~# a2enmod authnz_ldap Considering dependency ldap for authnz_ldap: Enabling module ldap. Enabling module authnz_ldap. To activate the new configuration, you need to run: systemctl restart apache2
root@www:~#
systemctl restart apache2 # テストページ作成 root@www:~# mkdir /var/www/html/auth-ldap root@www:~# vi /var/www/html/auth-ldap/index.html <html> <body> <div style="width: 100%; font-size: 40px; font-weight: bold; text-align: center;"> Test Page for LDAP Authentication </div> </body> </html> |
[4] | 任意のクライアントコンピューターで Web ブラウザーを起動し、作成したテストページにアクセスします。すると設定通り認証を求められるので、AD のユーザーで認証します。 |
[5] | 正常に認証が成功して、テストページが表示されれば OK です。 |
Sponsored Link |
|