8
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Apache 2.4 でLDAP認証

8
Posted at

はじめに

  • 社内用のWebサーバをはじめは公開していて、だれでも分析レポート(Rmdで生成したhtmlファイル)を見れたのだが、まずいものもいくつか出てきたので、LDAP認証かけたいよねって事で取り組んだ
  • Apache2.4でLDAP認証なんて、そこらへんにやり方あるあるなんだろうなと思ったけど、案外Web上にないので、Apache素人の自分には苦労したので、そのメモ
    • というか最終的には、隣の先輩に手伝ってもらった。。

前提知識

  • ApacheとLDAPが何かくらいは分かってて、基本的なディレクティブやLDAPコマンド(ユーザ追加できるとか)は分かってるものとする

Dockerfileの準備

  • Dockerhubに公式?のイメージがあります(こちら
  • でも、LDAP認証をするために、ビルドから必要そうなので、Dockerfileも必要(こちら

STEP 1. Dockerfileの修正

configureするところにオプション追加。

<snip>
&& ./configure --with-ldap --enable-ldap=shared --enable-authnz-ldap=shared --enable-so --enable-ssl --prefix=$HTTPD_PREFIX \
<snip>

STEP 2. httpd.confの設定

公開用に修正したけど、以下で動きました。

<Location />
  AuthType Basic
  AuthBasicProvider ldap
  SetHandler ldap-status
  AuthName "Members Only"
  AuthLDAPURL ldap://[LDAP Server IPアドレス]:[ポート番号]/ou=People,dc=hogehoge,dc=jp?uid
  Require valid-user
</Location>

AuthLDAPURL でLDAPサーバの検索範囲を指定して、 Require で該当するユーザのみ閲覧可能とする

STEP 3. Docker build & run

ここは普通にビルドして、docker-composeで立ち上げた。Fin.

おわりに

  • httpd.confだけいじれば良いと思ってら、ビルドするときにオプションが必要だったようです。
  • ここらへんってApache2.4の公式ドキュメントに書いてるのかな?見つけきらずに苦労した。
8
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?