OpenAMのインストール¶
CentOS7にOpenAMを構築し、SAML認証を実施する。
認証サーバとしてOpenAMのIdPを構築し、SSOしたいアプリケーションサーバ側に
Shibboleth-SPを導入して連携する。
IdPの構築¶
準備¶
- DNSかhostsでSSOサーバのIPアドレスを「idp.example.com」で引けるようにしておく。# vi /etc/hosts ----------------------------- IPアドレス idp idp.example.com 
- 必要なパッケージをインストールする# yum install wget unzip httpd mod_ssl java java-devel tomcat 
- tomcatを有効にする# systemctl enable tomcat 
- Tomcatの環境変数設定シェルを作成する# vi /etc/profile.d/java-tomcat.sh ----------------------------- JAVA_HOME=/usr/lib/jvm/jre #export MANPATH=$MANPATH:/usr/java/default/man CATALINA_HOME=/usr/share/tomcat CATALINA_BASE=$CATALINA_HOME PATH=$JAVA_HOME/bin:$CATALINA_BASE/bin:$CATALINA_HOME/bin:$PATH export PATH JAVA_HOME CATALINA_HOME CATALINA_BASE 
- 環境変数を再読み込みします# source /etc/profile 
- Tomcatの起動オプションを変更する# vi /etc/sysconfig/tomcat ----------------------------- # You can pass some parameters to java here if you wish to #JAVA_OPTS="-Xminf0.1 -Xmaxf0.3" JAVA_OPTS="-server -Xmx1500m -XX:MaxPermSize=256m -XX:+UseG1GC " 
- ApacheのServerNameにServerNameにFQDNとtomcatへのプロキシパスを設定する# vi /etc/httpd/conf/httpd.conf ----------------------------- #ServerName www.example.com:80 ServerName idp.example.com:80 ProxyPass /openam ajp://localhost:8009/openam 
- ApacheのSSLバーチャルホストのServerNameにFQDNとtomcatへのプロキシパスを設定する# vi /etc/httpd/conf.d/ssl.conf ----------------------------- #ServerName www.example.com:443 ServerName idp.example.com:443 ProxyPass /openam ajp://localhost:8009/openam 
- Apacheを起動・サービス登録する# systemctl enable httpd # systemctl start httpd 
- Tomcatの設定をコメントアウトおよび追加する# vi /usr/share/tomcat/conf/server.xml ----------------------------- <!-- <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> --> <!-- <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> --> <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" enableLookups="false" tomcatAuthentication="false" address="127.0.0.1" maxPostSize="100000" />
インストール¶
- 下記にアクセスしOpenAM最新版をダウンロードします。IDを取得必要があります
 https://backstage.forgerock.com/#!/downloads/OpenAM/OpenAM%20Enterprise/13.0.0/OpenAM%2013/zip#list
- 作業端末側でアーカイブファイルをダウンロードしますOpenAM-13.0.0.zip 
- アーカイブファイルをサーバにSCP転送し、展開します# SCPで転送 # unzip -q OpenAM-13.0.0.zip 
- Tomcat用のパッケージファイルをTomcat側に移動する# cd openam # cp -p OpenAM-13.0.0.war /usr/share/tomcat/webapps/openam.war 
- tomcatを起動する# systemctl start tomcat 
インストーラの実行¶
- ブラウザで下記アドレスにアクセスする。Webインストーラが表示される。https://idp.example.com/openam/ 
- 「新しい設定の作成」を実行する
- ライセンスに同意する
- 「amAdmin」ユーザのパスワードを設定する
- サーバ設定を行う
	- サーバURL
 http://idp.example.com:443
- Cookieドメイン
 .example.com
- プラットフォームロケール
 ja_JP
- 設定ディレクトリ
 /usr/share/tomcat/openam
 
- サーバURL
- 設定ストア
	- 設定データストア設定
 最初のインスタンス
- 設定データストア
 OpenAM
- SSLが有効
 チェックしない
- ホスト名
 localhost
- ポート
 50389
- 管理者ポート
 4444
- JMXポート
 1689
- 暗号化鍵
 デフォルト値のランダム文字列
- ルートサフィックス
 dc=openam,dc=example,dc=com
 
- 設定データストア設定
- ユーザデータストア設定
	- ユーザデータストア設定
 OpenAMのユーザデータストア
 
- ユーザデータストア設定
- サイト設定
	- このインスタンスのロードバランサの背後への配備
 いいえ
- サイト名
 空白
- ロードバランサのURL
 空白
- セッションHAの有効化とフェイルオーバーを有効にする
 チェックしない
 
- このインスタンスのロードバランサの背後への配備
- デフォルトポリシーエージェントユーザ
	- UrlAccessAgent のパスワード
 任意のパスワード(管理者パスワードと同じではいけない)
 
- UrlAccessAgent のパスワード
- 設定ツールの概要と詳細
 サマリを確認し、インストールが開始される
- インストール完了の確認
 Webウィザードの進捗画面が止まることがあるため、ログファイルに完了メッセージが出ていないか確認する。# tailf /usr/share/tomcat/openam/install.log ----------------------------- Finished dumping all configuration parameters 
- インストールが完了していれば、再度ブラウザで下記アドレスにアクセスする。https://idp.example.com/openam/ 
LDAPサーバとの連携¶
- OpenAMにブラウザでアクセスし、amAdminユーザでログインする。https://idp.example.com/openam/ 
- Realmsで「Top Level Realms」を選択する
- Data Storesを選択する
- 「新規」を選択する
- 下記設定を変更する
	- 名前
 LDAP
- タイプ
 汎用LDAPv3
 
- 名前
- 下記を設定する
	- LDAPサーバ
 LDAPサーバのホストIPアドレス:389
- LDAPバインドDN
 cn=Manager,dc=example,dc=com
- LDAPバインドパスワード
 Managerのパスワード
- LDAP組織DN
 dc=example,dc=com
- 持続検索ベースDN
 ou=Members,dc=example,dc=com
 
- LDAPサーバ
- 「対象」ページを開き、LDAPのエントリにあるユーザが表示されていることを確認する
- 「新規」を選択し、ユーザ作成ができるかを確認する
	- ID
 test
- 名
 test
- 性
 test
- フルネーム
 test
- パスワード
 任意のパスワード
- ユーザ状態
 アクティブ
 
- ID
IdPの作成¶
- OpenAMにログインし、トップレベルRealmに入る
- Create SAMLv2 Providersを実行
- Create Hosted Identity Providersを実行
- 次の内容を登録する
	- メタデータ
	- 名前
 https://idp.example.com:443/openam/
- 署名鍵
 test
 
- 名前
- トラストサークル(任意の名前)
 saml
 
- メタデータ
	
- 設定を登録して終了