Skip to content

Instantly share code, notes, and snippets.

@YoshihitoAso
Last active August 29, 2015 14:03
Show Gist options
  • Save YoshihitoAso/5e8763f1c18a3b5f6c05 to your computer and use it in GitHub Desktop.
Save YoshihitoAso/5e8763f1c18a3b5f6c05 to your computer and use it in GitHub Desktop.
[OpenAM][Ubuntu]ubuntu上にopenamをインストール

Ubuntu(on VirtualBox)上にOpenIGをインストールする手順

VagrantでUbuntuのイメージを作成

$ vagrant box add ubuntu http://cloud-images.ubuntu.com/quantal/current/quantal-server-cloudimg-vagrant-amd64-disk1.box
$ vagrant init ubuntu

OSを起動する。

$ vagrant up

※参考情報:OSのバージョン

$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=12.10
DISTRIB_CODENAME=quantal
DISTRIB_DESCRIPTION="Ubuntu 12.10"

Oracle JDKのインストール

Oracle JDKをインストールする。

$ sudo add-apt-repository ppa:webupd8team/java
$ sudo apt-get update
$ sudo apt-get install oracle-java7-installer

バージョンを確認してみる。2014/7/7時点では以下の通りであった。

$ java -version
java version "1.7.0_60"
Java(TM) SE Runtime Environment (build 1.7.0_60-b19)
Java HotSpot(TM) 64-Bit Server VM (build 24.60-b09, mixed mode)
$ javac -version
javac 1.7.0_60

環境変数の定義を追加する。

$ cd
$ vim .profile
export JAVA_HOME=/usr/lib/jvm/java-7-oracle
export PATH=$PATH:$JAVA_HOME/bin

JVMの起動パラメータについて、OpenAMの起動には1GBのHeapと256MBのpermanent領域が必要であるため、このような設定にした。

Tomcat7のインストール・設定

tomcat7のインストールを行う

$ sudo apt-get install tomcat7

起動する前に

$ vim /etc/default/tomcat7
JAVA_HOME=/usr/lib/jvm/java-7-oracle

を設定する必要がある。

Tomcatを起動してみる。

$ service tomcat7 start
 * Starting Tomcat servlet engine tomcat7                                                 [ OK ]

上記のようになればOK。

ブラウザから http://localhost:8080/ にアクセスするとTomcatのホーム画面が表示される。

次に、Tomcatの管理用パッケージをインストールしておく。

$ sudo apt-get install tomcat7-admin

最終的なインストール状況を確認する。以下のようになっているはず。

$ ls /usr/share/tomcat*
/usr/share/tomcat7:
bin  defaults.md5sum  defaults.template  lib

/usr/share/tomcat7-admin:
host-manager  manager

/usr/share/tomcat7-root:
default_root

管理用のユーザを設定する。

$ cd /var/lib/tomcat7/conf
$ vim tomcat-users.xml
<role rolename="manager-gui"/>
<user username="XXXX" password="XXXX" roles="manager-gui"/>

ここまで出来たら、Tomcatを再起動する。

$ service tomcat7 restart

再起動出来たら、http://localhost:8080/manager にアクセスすると、ログイン認証後、Tomcatの管理用画面が表示されるはず。

OpenIGのデプロイ

OpenIG最新版(2014/7/13時点では2.1.0)のWARファイルををダウンロードしてくる。

wget http://download.forgerock.org/downloads/openig/2.1.0/gateway-2.1.0.war

事前にTomcatのルートコンテキストにあるROOTディレクトリ(/var/lib/tomcat7/webapps/ROOT)は、移動、リネーム、削除などしておく。 OpenIGをデプロイする。

$ cp gateway-2.1.0.war /var/lib/tomcat7/webapps/ROOT.war

OpenIGの設定

基本設定ファイルが存在する。 http://openig.forgerock.org/forgerock-sample-configs.zip からダウンロードしてくる。

# wget http://openig.forgerock.org/forgerock-sample-configs.zip
# unzip forgerock-sample-configs.zip

この手順では基本設定として、WordPressProxyOnly.jsonを用いる。 以下の通り、configファイルを設定する。

# cd /usr/share/tomcat7
# mkdir .ForgeRock .ForgeRock/OpenIG
# cp /root/forgerock-sample-configs/WordPressProxyOnly.json .ForgeRock/OpenIG/config.json

configファイルの中身は以下のように設定を書き直す。 baseURIは名前解決を行う任意のサイトで、デフォルトは http://109.73.67.52:8080/ である。 このままでも基本的には接続出来るはず。

※注意)OpenIGサーバのポート番号と、ターゲットアプリケーション(baseURI)のポート番号は合わせておく必要があるらしい。

# vim config.json
{
    "heap": {
        "objects": [
            {
                "name": "HandlerServlet",
                "type": "HandlerServlet",
                "config": {
                    "handler": "ClientHandler",
                    "baseURI":"http://109.73.67.52:8080/"
                }
            },
            {
                "name": "ClientHandler",
                "type": "ClientHandler",
                "config": {
                }
            }
        ]
    },
    "servletObject": "HandlerServlet",
}

クライアント(自分の場合はWindowsのhostsファイル)のFQDN設定を切り替える必要がある。 自分の場合、localhostのVirtualBox上にOpenIGサーバを建てているので、hostsに以下のような設定を追加する。

127.0.0.1 openig.example.co.jp

OpenIGサーバへの接続

OpenIGサーバのTomcatを再起動する。

# service tomcat7 restart

クライアントから http://openig.example.co.jp:8080 に接続。 すると先程baseURIに設定した http://109.73.67.52:8080/ に接続されるはず。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment