デフォルトディレクトリを/rootから変更できないようなので 作っておきます。
# mkdir /var/db/tomcat # mkdir /var/db/tomcat/openam # mkdir /var/db/tomcat/.openamcfg # chown -R www:www /var/db/tomcat # chmod -R 750 /var/db/tomcat # cd /root # ln -s /var/db/tomcat/openam . # ln -s /var/db/tomcat/.openamcfg .
ForgeRockの
OpenAMプロジェクトページ
からwarパッケージをダウンロードしてファイル名を変更します。
なお、ダウンロードにはユーザ登録(無料)が必要です。
% mv OpenAM-13.0.0.war openam.war
Tomcat の管理画面の Manager App から
openam.war をアップロードしてインストールします。
インストールしたOpenAMにブラウザでアクセスします。
エラーが出ても気にせずに設定ページに進みます。
カスタム設定を選びます。
ウイザードに従って設定してきます。
amadminでログインします。
最上位 Realm を選択します。
Subject を選択します。
データストアを選択し、新規に OpenLDAP のデータストアを追加します。
| 変数 | 値 |
|---|---|
| LDAP サーバー | localhost:389 |
| LDAP バインド DN | cn=manager,dc=next-hop,dc=net |
| LDAP バインドパスワード | password |
| LDAP 組織 DN | dc=next-hop,dc=net |
| LDAP Connection Mode | LDAP |
| 変数 | 値 |
|---|---|
| LDAP ユーザー検索属性 | uid |
| LDAP ユーザー検索フィルタ | (objectClass=inetOrgPerson) |
| LDAP ピープルコンテナネーミング属性 | ou |
| LDAP ピープルコンテナ値 | user |
| LDAP ユーザーオブジェクトクラス | |
| top | |
| inetOrgPerson | |
| posixAccount | |
| inetUser |
| 変数 | 値 |
|---|---|
| LDAP グループ検索属性 | cn |
| LDAP グループ検索フィルタ | (objectClass=groupOfUniqueNames) |
| LDAP グループコンテナネーミング属性 | ou |
| LDAP ピープルコンテナ値 | group |
| グループメンバーシップの属性 | cn |
| 一意のメンバーの属性名 | uniqueMember |
| 変数 | 値 |
|---|---|
| 持続検索ベース DN | dc=next-hop,dc=net |
| 持続検索フィルタ | (objectClass=*) |
LDAP 管理下のユーザでログインできるかどうか確認します。
OpenAM-13.0.0.zip から ツールを取出しインストールします。
# mkdir /usr/local/libexec/openam # mkdir /usr/local/libexec/openam/ssoadmin # mkdir /usr/local/libexec/openam/ssoconfig # cd /usr/local/libexec/openam/ssoadmin # unzip SSOAdminTools-13.0.0.zip # cd /usr/local/libexec/openam/ssoconfig # unzip SSOConfiguratorTools-13.0.0.zip
証明書を読み込むように setup スクリプトを修正します。
# cd /usr/local/libexec/openam/ssoadmin # vi setup
--- setup.orig 2016-01-14 21:07:00.000000000 +0900
+++ setup 2016-10-23 03:26:26.258677000 +0900
@@ -94,5 +94,6 @@
$JAVA_HOME/bin/java -D"load.config=yes" -D"help.print=$help_print" \
-D"path.AMConfig=$path_AMConfig" -D"path.debug=$path_debug" \
-D"path.log=$path_log" \
+ -D"javax.net.ssl.trustStore=/usr/local/apache-tomcat-8.0/.keystore" \
-cp "$CLASSPATH" \
com.sun.identity.tools.bundles.Main $accept_license
# setenv JAVA_HOME /usr/local/openjdk8 # ./setup --acceptLicense OpenAM サーバーの設定ファイルのパス [/root/openam]:/var/db/tomcat/openam デバッグディレクトリ [/usr/local/libexec/openam/ssoadmin/debug]:/var/db/tomcat/openam/openam/debug ログディレクトリ [/usr/local/libexec/openam/ssoadmin/log]:/var/db/tomcat/openam/openam/log デバッグディレクトリは /var/db/tomcat/openam/openam/debug です。 ログディレクトリは /var/db/tomcat/openam/openam/log です。 この tools.zip のバージョン: OpenAM 13.0.0 サーバーインスタンスのバージョン: OpenAM 13.0.0 Build 5d4589530d (2016-January-14 21:15)
# cd /usr/local/libexec/openam/ssoconfig # cp sampleconfiguration config.properties # chmod 600 config.properties # vi config.properties
SERVER_URL=https://openam.next-hop.net:8443 DEPLOYMENT_URI=/openam BASE_DIR=/var/db/tomcat/openam locale=en_US PLATFORM_LOCALE=en_US AM_ENC_KEY= ADMIN_PWD=password AMLDAPUSERPASSWD=password COOKIE_DOMAIN=.next-hop.net ACCEPT_LICENSES=true DATA_STORE=embedded DIRECTORY_SSL=SIMPLE DIRECTORY_SERVER=localhost DIRECTORY_PORT=50389 DIRECTORY_ADMIN_PORT=4444 DIRECTORY_JMX_PORT=1689 ROOT_SUFFIX=dc=openam,dc=forgerock,dc=org DS_DIRMGRDN=cn=Directory Manager DS_DIRMGRPASSWD=password
# java -D"javax.net.ssl.trustStore=/usr/local/apache-tomcat-8.0/.keystore" -jar openam-configurator-tool-13.0.0.jar --file config.properties
SAML 認証等で使用するデフォルト証明書を test 用証明書から tomcat で使用している証明書に置き換えます。
#!/bin/sh
TOMCATDIR="/usr/local/apache-tomcat-8.0"
if [ ! -f $TOMCATDIR/.keystore ]; then
echo "file not found: $TOMCATDIR/.keystore"
exit 1
fi
cd /var/db/tomcat/openam/openam
if [ ! -f .keypass.test ]; then
cp -p .keypass .keypass.test
fi
if [ ! -f .storepass.test ]; then
cp -p .storepass .storepass.test
fi
if [ ! -f keystore.jks.test ]; then
cp -p keystore.jks keystore.jks.test
fi
echo "changeit" > .keypass
echo "changeit" > .storepass
cp -p $TOMCATDIR/.keystore keystore.jks
chmod 640 .keypass
chmod 640 .storepass
chmod 640 keystore.jks
chown www:www keystore.jks
--- config/auth/default/DataStore.xml.orig 2016-01-14 21:19:46.000000000 +0900
+++ config/auth/default/DataStore.xml 2016-10-23 22:21:27.209983000 +0900
@@ -37,7 +37,7 @@
<ModuleProperties moduleName="DataStore" version="1.0" >
- <Callbacks length="2" order="1" timeout="120" header="Sign in to OpenAM" >
+ <Callbacks length="2" order="1" timeout="120" header="Sign in to Next Hop Account" >
<NameCallback>
<Prompt>User Name:</Prompt>
</NameCallback>
--- config/auth/default_ja/DataStore.xml.orig 2016-01-14 21:19:46.000000000 +0900
+++ config/auth/default_ja/DataStore.xml 2016-10-23 22:22:22.189537000 +0900
@@ -36,7 +36,7 @@
<ModuleProperties moduleName="DataStore" version="1.0" >
- <Callbacks length="2" order="1" timeout="120" header="OpenAM へのサインイン" >
+ <Callbacks length="2" order="1" timeout="120" header="Next Hop アカウントへのサインイン" >
<NameCallback>
<Prompt>ユーザー名:</Prompt>
</NameCallback>
--- XUI/locales/en/translation.json.orig 2016-01-14 21:19:46.000000000 +0900
+++ XUI/locales/en/translation.json 2016-10-23 22:17:38.254850000 +0900
@@ -303,7 +303,7 @@
"deactivate": "Deactivate",
"active": "Active",
"inactive": "Inactive",
- "copyright" : "Copyright © 2010-2016 ForgeRock AS. All rights reserved.",
+ "copyright" : "Copyright © 2016 Next Hop. All rights reserved.",
"build": "Build",
"sessionExpired" : "Session Expired",
"enableCookies" : "Cookies must be enabled to login",
--- XUI/config/ThemeConfiguration.js.orig 2016-01-14 21:19:46.000000000 +0900
+++ XUI/config/ThemeConfiguration.js 2016-10-23 05:53:21.240959000 +0900
@@ -29,22 +29,22 @@
// This logo is displayed on user profile pages.
logo: {
// The URL of the image.
- src: "images/logo-horizontal.png",
+ src: "images/logo-horizontal2.png",
// The title attribute used on <img> tags.
- title: "ForgeRock",
+ title: "Next Hop",
// The alt attribute used on <img> tags.
- alt: "ForgeRock",
+ alt: "Next Hop",
// The width of the logo as a CSS length.
width: "202px"
},
// This logo is displayed on login pages.
loginLogo: {
// The URL of the image.
- src: "images/login-logo.png",
+ src: "images/login-logo2.png",
// The title attribute used on <img> tags.
- title: "ForgeRock",
+ title: "Next Hop",
// The alt attribute used on <img> tags.
- alt: "ForgeRock",
+ alt: "Next Hop",
// The height of the logo as a CSS length.
height: "104px",
// The width of the logo as a CSS length.
@@ -53,7 +53,7 @@
// The footer is displayed on every page.
footer: {
// A contact email address.
- mailto: "info@forgerock.com",
+ mailto: "info@next-hop.net",
// A contact phone number. If empty, it will not be displayed.
phone: ""
}
@@ -68,9 +68,9 @@
],
settings: {
loginLogo: {
- src: "themes/dark/images/login-logo-white.png",
- title: "ForgeRock",
- alt: "ForgeRock",
+ src: "themes/dark/images/login-logo-white2.png",
+ title: "Next Hop",
+ alt: "Next Hop",
height: "228px",
width: "220px"
}
openam を再起動します。
#!/bin/sh DBDIR="/var/db/tomcat/openam" #BACKEND_ID="adminRoot" #BACKEND_ID="ads-truststore" #BACKEND_ID="backup" #BACKEND_ID="config" #BACKEND_ID="monitor" #BACKEND_ID="schema" #BACKEND_ID="tasks" BACKEND_ID="userRoot" $DBDIR/opends/bin/export-ldif \ --port 4444 \ --hostname `uname -n` \ --bindDN "cn=Directory Manager" \ --bindPassword password \ --backendID $BACKEND_ID \ --includeBranch dc=openam,dc=forgerock,dc=org \ --excludeBranch ou=tokens,dc=openam,dc=forgerock,dc=org \ --ldifFile $DBDIR/$BACKEND_ID-backup-`date -u +%F-%m-%s`.ldif \ --start 0 \ --trustAll
まずは閉めて、必要に応じて開けるようにしてきます。
#!/bin/sh
IF0_IP4="me"
IF0_IP6="me6"
ipfw add 10210 allow tcp from ${IF0_IP4} any to ${IF0_IP4} 50389 setup keep-state
ipfw add 10220 allow tcp from ${IF0_IP6} any to ${IF0_IP6} 50389 setup keep-state
ipfw add 10230 allow tcp from ${IF0_IP4} any to ${IF0_IP4} 4444 setup keep-state
ipfw add 10240 allow tcp from ${IF0_IP6} any to ${IF0_IP6} 4444 setup keep-state
ipfw add 10250 allow tcp from ${IF0_IP4} any to ${IF0_IP4} 1689 setup keep-state
ipfw add 10260 allow tcp from ${IF0_IP6} any to ${IF0_IP6} 1689 setup keep-state
ipfw add 10270 deny tcp from any any to ${IF0_IP4} 50389 setup
ipfw add 10280 deny tcp from any any to ${IF0_IP6} 50389 setup
ipfw add 10290 deny tcp from any any to ${IF0_IP4} 4444 setup
ipfw add 10300 deny tcp from any any to ${IF0_IP6} 4444 setup
ipfw add 10310 deny tcp from any any to ${IF0_IP4} 1689 setup
ipfw add 10320 deny tcp from any any to ${IF0_IP6} 1689 setup
|
Copyright ©2000-2018 T.Hiraga <hiraga@next-hop.net> All Rights Reserved. Last modified: $Date: 2016/10/28 19:13:57 $ |