1
0

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 1 year has passed since last update.

mod_auth_openidc のMac用バイナリは提供されていないので、自力でコンパイルして組み込んだのですが、紆余曲折してやっと使えるようになったので記録しておこうと思います。

Macのローカルブラウザアプリをインターネットからアクセスできるようにしたくて、閲覧許可にOpenIDConnectを使いたかったのですよね。

環境

  • macOS Monterey
  • Apache 2.4.55 (Homebrew)
  • mod_auth_openidc 2.4.9.4

手順

Homebrew版のApacheを使うので、デフォルトでインストールされているApacheを停止しておきます。

(デフォルトのApacheでもいいのですが、コード署名が必要なので、その場合はコンパイルした mod_auth_openidc.so に署名して使うことになります)

$ sudo apachectl stop
$ sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist

Homebrewをインストールしていない場合はインストールします。

$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

ビルドに必要なパッケージをインストールします。

( openssl も cjose のビルドに必要ですが、2023年2月現在OpenSSL3系だとビルド中にエラーが起きてしまうようなので、 curl が依存している openssl@1.1 を使いました)

$ brew install curl jansson pcre apr-util apr httpd autoconf automake pkg-config libtool

cjoseをビルドしてインストールします。

$ mkdir ~/Documents/src
$ cd ~/Documents/src/
$ git clone https://github.com/cisco/cjose.git
$ cd cjose
$ ./configure CFLAGS="-I/usr/local/include" --with-openssl=/usr/local/opt/openssl@1.1 --with-jansson=/usr/local/opt/jansson --prefix /usr/local/opt/cjose
$ make
$ make install

mod_auth_openidc をビルドします。

(v2.4.10以降だとなかなかコンパイルが通らなくてv2.4.9系で妥協しています)

$ cd ~/Documents/src/
$ git clone https://github.com/zmartzone/mod_auth_openidc.git
$ cd mod_auth_openidc
$ git checkout refs/tags/v2.4.9.4
$ ./autogen.sh
$ ./configure CJOSE_LIBS=-L/usr/local/opt/cjose/lib CJOSE_CFLAGS=-I/usr/local/opt/cjose/include OPENSSL_LIBS=-L/usr/local/opt/openssl@1.1/lib OPENSSL_CFLAGS=-I/usr/local/opt/openssl@1.1/include
$ make
$ make install

モジュールを読み込みできることを確認します。

$ vi /usr/local/etc/httpd/httpd.conf
  :
LoadModule auth_openidc_module lib/httpd/modules/mod_auth_openidc.so
  :
$ sudo apachectl configtest

モジュールがうまく組み込めたら、ウェブ上で散見される手順に従って設定すれば動作するでしょう。

参考サイト

1
0
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
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?