1. はじめに
本メニューでは、IdPをカスタマイズします。
IdP Ver3が正常に起動している環境に対して、Ver4にアップグレードします。
ベースがIdP v3.2となっているところを、一度IdP v3.4にアップグレードしてからIdP v4にアップグレードします。
設定ファイルについては、自動的にコンバートされたものを使用して認証確認まで行います。 v4にアップグレードします。
...
2. 実習セミナーでは
以下の手順で作業を進めてください。以下は、本環境での関連情報となります。
...
詳細な手順については、「3.手順」を参照ください。
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
# systemctl stop tomcat
|
・Shibboleth Ver3.2のバックアップ
...
また、以下にはIdP v4の動作に必要なJava11とJettyのインストール手順を記載しています。
・IdPのパッケージ
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
# cd /root # tar zcfv shibidp-v3.2-backup.tar.gz /opt/shibboleth-idp
|
・Tomcat 7の起動
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
# systemctl start tomcat
|
・ShibbolethIdP Ver3.4のインストール
パッケージは、以下のように/root/PKG配下に配置しています。
PKG 配下に用意しています。
|
# cd /root/PKG # tar xzvf shibboleth-identity-provider-3.4.?7.tar.gz
# cd shibboleth-identity-provider-3.4.?
# ./bin/install.sh -Didp.conf.filemode=640 -Didp.conf.credentials.filemode=640
|
install.shシェルスクリプトを実行すると、以下のような問い合わせがあります。
手順に従って、進めてください。
...
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
...
Rebuilding /opt/shibboleth-idp/war/idp.war ...
...done
BUILD SUCCESSFUL
Total time: 2 minutes 27 seconds
・ShibbolethIdP インストール
・所有者、パーミッションの設定(server.key)
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
# chown root:tomcat /opt/shibboleth-idp/credentials/server.key
# chmod 640 /opt/shibboleth-idp/credentials/server.key
|
・Tomcat 7の停止
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
# systemctl stop tomcat
|
・Tomcat 7のバックアップ
以下のように/root直下に移動して、念のためバックアップを行います。
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
# cd /root
# tar zcfv tomcat7-backup.tar.gz /etc/tomcat /var/log/tomcat /var/lib/tomcat/webapps
|
・Tomcat 7のアンインストール
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
# yum remove tomcat
|
・JDKのアンインストール
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
# yum remove java-1.8.0-openjdk
|
・JDK 11のインストール
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
# yum install java-11-openjdk java-11-openjdk-devel
|
・Tomcat 9のインストール
現在CentOS 7環境のため標準パッケージにはないので、Apache Software Foundationが配布するTomcatパッケージを使用します。
パッケージは、以下のように/root/PKG配下に配置しています。
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
# cd # cd /root/PKG
# tar zxv -C /usr/share -f apache-tomcat-9.?.? IdP v3.4へのアップグレード
# tar xzvf shibboleth-identity-provider-3.4.?.tar.gz
#
rm -rf /usr/share/tomcat # ln -s /usr/share/apache-tomcat-9.?.?? /usr/share/tomcat |
・起動スクリプトの配置
情報 |
---|
ここで使用する起動スクリプトは、基礎編のインストール手順で配布しているものと同一です。 |
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
# cp /root/GETFILE/tomcat.service /etc/systemd/system
|
・自動起動の設定
以下のコマンドで自動起動設定を有効にします。
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
# systemctl enable tomcat
補足: 以下のコマンドで自動起動設定を無効にすることができます。 # systemctl disable tomcat |
・所有者、パーミッションの設定
以下のコマンドでその他Tomcat関連の設定ファイルやディレクトリの所有者、パーミッションを設定します。
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
# 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
を以下の内容で修正します。
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
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
|
追加した環境変数を読み込みます。
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
# source /etc/profile |
・tomcatの設定
旧tomcatのバックアップから設定を戻しますが、ここではインストール時と同様な修正を行います。
$CATALINA_BASE/conf/server.xmlを下記のように修正します。
他の用途で使用する予定がなければConnector port="8080"をコメントアウトしてください。
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
<!--
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
-->
|
Connector port="8009"に以下のように追加してください。
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443"
enableLookups="false" tomcatAuthentication="false" address="127.0.0.1" maxPostSize="100000" />
|
・ShibbolethIdP Ver4のインストール
パッケージは、以下のように/root/PKG配下に配置しています。
cd shibboleth-identity-provider-3.4.?
IdP v4.0へのアップグレード
|
# cd /root/PKG
# 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.group=tomcat
|
...
以降は、IdP4へのアップグレード時の手順となります。
インストール自体は、基礎編に記載されている手順に沿って行います。
→ IdP v4インストール(基礎編)
ここには、TomcatからJettyに切り替えるための事前に行っておく手順を記載します。
・Tomcat 7のアンインストール
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
# yum remove tomcat
|
・jakarta-taglibs-standardのアンインストール
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
# yum remove jakarta-taglibs-standard
# rm -f /
Buildfile: /root/PKG/shibboleth-identity-provider-4.0.1/bin/build.xml
install:
Source (Distribution) Directory (press <enter> to accept default): [/root/PKG/shibboleth-identity-provider-4.0.1] ? [Enter] ←入力なし
Installation Directory: [/opt/shibboleth-idp]
[Enter] ←入力なし
INFO [net.shibboleth.idp.installer.V4Install:155] - Update from version 3 to version 4.0.1
INFO [net.shibboleth.idp.installer.BuildWar:72] - Rebuilding /opt/shibboleth-idp/war/idp.war, Version 4.0.1
INFO [net.shibboleth.idp.installer.BuildWar:81] - Initial populate from /opt/shibboleth-idp/dist/webapp to /opt/shibboleth-idp/webpapp.tmp
INFO [net.shibboleth.idp.installer.BuildWar:90] - Overlay from /opt/shibboleth-idp/edit-webapp to /opt/shibboleth-idp/webpapp.tmp
BUILD FAILED
/root/PKG/shibboleth-identity-provider-4.0.1/bin/build.xml:20: Failed to copy /opt/shibboleth-idp/edit-webapp/WEB-INF/lib/jakarta-taglibs-core.jar to /opt/shibboleth-idp/webpapp.tmp/WEB-INF/lib/jakarta-taglibs-core.jar due to java.nio.file.NoSuchFileException /opt/shibboleth-idp/edit-webapp/WEB-INF/lib/jakarta-taglibs- core.jar
Total time: 1 minute 14 seconds
|
...
・JDK 8のアンインストール
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
# chown -R tomcat:tomcat /opt/shibboleth-idp/logs # chgrp -R tomcat /opt/shibboleth-idp/conf# chmod -R g+r /opt/shibboleth-idp/conf # find /opt/shibboleth-idp/conf -type d -exec chmod -R g+s {} \; # chgrp tomcat /opt/shibboleth-idp/metadata # chmod g+w /opt/shibboleth-idp/metadata # chmod +t /opt/shibboleth-idp/metadata # chgrp tomcat /opt/shibboleth-idp/credentials/secrets.properties
# chmod g+r /opt/shibboleth-idp/credentials/secrets.properties # chgrp tomcat /opt/shibboleth-idp/credentials/sealer.* # chmod g+r /opt/shibboleth-idp/credentials/sealer.* |
jstl-1.2.jar の配置
...
yum remove java-1.8.0-openjdk
|
・httpdの再起動とJettyの起動を行います。(すでにJettyが起動している場合はstopしてから行ってください)
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
# 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してから行ってください)
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
# systemctl restart httpd # systemctl start tomcat
|
3. 手順書
systemctl restart httpd # systemctl start jetty
|
...
3. 手順書
まず、下記「IdP v3アップデートに関する情報」の「2.アップデート手順」にてIdP v3.4で動作できるところまで進めます。
その後、下記「IdP v4アップデートに関する情報」の「設定ファイルの移行について」の手順を参照し、DEPRECATEDのwarningが
出ないような状態になるよう修正を行います。認証時に出力される場合もあるため、3.4.7で起動したら認証の動作確認まで行いログを確認してください。
設定ファイルの修正が終わったら、念のため再度3.4.7で起動し認証の動作確認を行った後、DEPRECATEDのwarningが出ていないことを確認してください。
そこまで行えたら、いよいよv4へのアップグレードです。
上記Java11、Jettyを用意したのち、IdP v4の「アップデートの手順」に進んでください。
参考: IdPv3アップデートに関する情報、IdPv4アップデートに関する情報
...
4. 動作確認
① 各自が使用するSPの接続確認用ページにアクセスします。
...
③ DSの所属機関の選択画面が表示されるので、各自が使用するIdPを選択します。
④ Ver3にアップグレードした各自が使用するIdPのログイン画面が表示されることを確認します。 (v3ではページ下部にチェックボックスが表示される部分が異なります)Ver4にアップグレードした各自が使用するIdPのログイン画面が表示されることを確認します。 (v4では同意画面の属性名に日本語が表示される部分が異なります)
⑤ Username/Passwordを入力して認証を行います。
⑥ 正しく属性受信の確認ページが表示される事を確認してください。
...