1. はじめに
本メニューでは、IdPをカスタマイズします。
IdP Ver3が正常に起動している環境に対して、Ver4にアップグレードします。
ベースがIdP v3.2となっているところを、一度IdP v3.4にアップグレードしてからIdP v4にアップグレードします。
2. 実習セミナーでは
以下は、本環境での関連情報となります。
詳細な手順については、「3.手順」を参照ください。
また、以下にはIdP v4の動作に必要なJava11とTomcat9のインストール手順を記載しています。
・IdPのパッケージ
/root/PKG 配下に用意しています。
shibboleth-identity-provider-3.4.7.tar.gz
shibboleth-identity-provider-4.0.1.tar.gz
・ShibbolethIdP インストール
パッケージは、以下のように/root/PKG配下に配置しています。
# cd /root/PKG
IdP v3.4へのアップグレード# tar xzvf shibboleth-identity-provider-3.4.?.tar.gz
# cd shibboleth-identity-provider-3.4.?
IdP v4.0へのアップグレード
# tar xzvf shibboleth-identity-provider-4.0.?.tar.gz
# cd shibboleth-identity-provider-4.0.?
# ./bin/install.sh -Didp.conf.filemode=640 -Didp.conf.credentials.filemode=640
以降は、IdP4へのアップグレード時にJava11とTomcat9をインストールする手順となります。
※インストール自体は、基礎編でも記載されています。
→ IdP v4インストール(基礎編)
・Tomcat 7のアンインストール
# yum remove tomcat
・jakarta-taglibs-standardのアンインストール
# yum remove jakarta-taglibs-standard
・JDK 8のアンインストール
# yum remove java-1.8.0-openjdk
・JDK 11のインストール
# yum install java-11-openjdk java-11-openjdk-devel
・Tomcat 9のインストール
現在CentOS 7環境のため標準パッケージにはないので、Apache Software Foundationが配布するTomcatパッケージを使用します。
パッケージは、以下のように/root/PKG配下に配置しています。
# cd /root/PKG
# tar zxv -C /usr/share -f apache-tomcat-9.?.??.tar.gz
# rm -rf /usr/share/tomcat
# ln -s /usr/share/apache-tomcat-9.?.?? /usr/share/tomcat
・起動スクリプトの配置
ここで使用する起動スクリプトは、基礎編のインストール手順で配布しているものと同一です。
# cp /root/GETFILE/tomcat.service /etc/systemd/system
・自動起動の設定
以下のコマンドで自動起動設定を有効にします。
# systemctl enable tomcat
補足:
以下のコマンドで自動起動設定を無効にすることができます。
# systemctl disable tomcat
・所有者、パーミッションの設定
以下のコマンドでその他Tomcat関連の設定ファイルやディレクトリの所有者、パーミッションを設定します。
# chown -R tomcat:tomcat /usr/share/tomcat/{temp,logs,work}
# chown tomcat:tomcat /usr/share/tomcat/webapps
# chmod +t /usr/share/tomcat/webapps
# chmod go+rx/usr/share/tomcat/conf
# chgrp tomcat /usr/share/tomcat/conf/*.*
# chmod g+r /usr/share/tomcat/conf/*.*
# mkdir -p /usr/share/tomcat/conf/Catalina/localhost
#chgrp -R tomcat /usr/share/tomcat/conf/Catalina
#
chmod -R g+r /usr/share/tomcat/conf/Catalina
#
chmod -R +t /usr/share/tomcat/conf/Catalina
# chgrp -R tomcat /usr/share/tomcat/{bin,
lib}
・profileの修正
/etc/profile.d/java-tomcat.sh
を以下の内容で修正します。
JAVA_HOME=/usr/lib/jvm/java
#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の設定
旧tomcatのバックアップから設定を戻しますが、ここではインストール時と同様な修正を行います。
$CATALINA_BASE/conf/server.xmlを下記のように修正します。
他の用途で使用する予定がなければConnector port="8080"をコメントアウトしてください。
<!--
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
-->
Connector port="8009"に以下のように追加してください。
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443"
enableLookups="false" tomcatAuthentication="false" address="127.0.0.1" maxPostSize="100000" />
・jstl-1.2.jar について
jstl-1.2.jarは、予め「/root/PKG」配下にあります。IdP v4では、edit-webapp/
配下に配置し、idp.warに含めます。また、旧環境で使用した不要なファイルを削除します。
# cp /root/PKG/jstl-1.2.jar /opt/shibboleth-idp/edit-webapp/WEB-INF/lib/
# rm -f /opt/shibboleth-idp/edit-webapp/WEB-INF/lib/jakarta-taglibs-*# /opt/shibboleth-idp/bin/build.sh
Installation Directory: [/opt/shibboleth-idp]
[Enter] ←入力なし
Rebuilding /opt/shibboleth-idp/war/idp.war ...
...done
BUILD SUCCESSFUL
Total time: 3 seconds
httpdの再起動とTomcatの起動を行います。(すでにTomcatが起動している場合はstopしてから行ってください)
# systemctl restart httpd
# systemctl start tomcat
3. 手順書
まず、IdP v3アップデートに関する情報の「2.アップデート手順」にてIdP v3.4で動作できるところまで進めます。
その後、IdP v4アップデートに関する情報の「設定ファイルの移行について」の手順を参照し、DEPRECATEDのwarningが
出ないような状態になるよう修正を行います。
そこまで行えたら、いよいよv4へのアップグレードです。
上記Java11、Tomcat9を用意したのち、IdP v4の「アップデートの手順」に進んでください。
参考: IdPv3アップデートに関する情報、IdPv4アップデートに関する情報
4. 動作確認
① 各自が使用するSPの接続確認用ページにアクセスします。
例)1番を割り振られた場合 https://ex-sp-test01.gakunin.nii.ac.jp/
② ログインボタンをクリックします。
③ DSの所属機関の選択画面が表示されるので、各自が使用するIdPを選択します。
④ Ver4にアップグレードした各自が使用するIdPのログイン画面が表示されることを確認します。 (v4では同意画面の属性名に日本語が表示される部分が異なります)
⑤ Username/Passwordを入力して認証を行います。
⑥ 正しく属性受信の確認ページが表示される事を確認してください。