比較バージョン

キー

  • この行は追加されました。
  • この行は削除されました。
  • 書式設定が変更されました。

...

IdPv4のインストール

実習セミナー内に準備されたLinuxサーバにJDK、Tomcat、Shibboleth IdPをインストールする手順となっています。

...

  • OS、DNS、ネットワーク、時刻同期などは設定済みとなっています。(Apache HTTP Server、mod_sslもインストール済み)
  • CentOS7
  • メモリ2GB以上
  • Apache HTTP Server 2.4 と mod_ssl
  • Java 8(OpenJDK)11(OpenJDK)
  • Apache Tomcat 7Tomcat 9
  • Shibboleth IdP v3v4

また、実習環境ではSELinuxは無効化されているものとして手順を記載しています。下記コマンドでSELinux設定が確認できます。

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
$ /usr/sbin/getenforce

...


...

アンカー
seminar-idpInst2
seminar-idpInst2

2. Java

...

11(OpenJDK)をインストールする

インストール

CentOS 7にはOpenJDKのパッケージが用意されていますので、これをyumにてインストールします。

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
# yum install java

...

-11-openjdk java-11-openjdk-devel


...

アンカー
seminar-idpInst3
seminar-idpInst3

3. Apache Tomcat

...

9をインストールする

1. インストール

CentOS 7にはTomcatのパッケージが用意されていますので、これをyumにてインストールします。※自動起動スクリプトは、インストールすると自動的に作成されます。7に用意されているパッケージはTomcat7なので、Apache Software Foundationが配布するTomcatパッケージをダウンロードしてインストールします。
実習セミナーでは予めダウンロードした「/root/PKG」内の、apache-tomcat-9.?.??.tar.gzを使います。

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
# cd /root/PKG
# tar zxv -C /usr/share -f apache-tomcat-9.?.??.tar.gz
# ln -s /usr/share/apache-tomcat-9.?.?? /usr/share/tomcat

また自動起動スクリプトは、「/root/GETFILE」配下のtomcat.serviceを使います。


パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
# cp /root/GETFILE/tomcat.service /etc/systemd/system# yum install tomcat

2. 自動起動の設定

以下のコマンドで自動起動設定を有効にします。

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
# systemctl enable tomcat

補足:
以下のコマンドで自動起動設定を無効にすることができます。
# systemctl disable tomcat

”tomcat”ユーザで起動

"root"ユーザではなく、Tomcat起動用のユーザを使用することを推奨します。
ここでは、一般的な"tomcat"ユーザを作成します。(以降、"tomcat"ユーザを使用する事が前提で説明します。)

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
# useradd -r -d /usr/share/tomcat -s /sbin/nologin -c "Tomcat daemon" tomcat

以下のコマンドでその他Tomcat関連の設定ファイルやディレクトリの所有者、パーミッションを設定します。

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
# 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}

3JAVA_OPTSの設定 

以下のように/etc/sysconfig/tomcatを修正します

...

コード ブロック
languagebash
# /etc/profile.d/java-tomcat.sh - set Java and Tomcat stuff
JAVA_HOME=/usr/lib/jvm/jrejava
#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
borderStylesolid

<!-- Define an AJP 1.3 Connector on port 8009 -->
<!--
<Connector protocol="AJP/1.3"
address="::1"
port="8009"
redirectPort="8443" />
-->

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443"
           enableLookups
           secretRequired="false" enableLookups="false" tomcatAuthentication="false" address="127.0.0.1" maxPostSize="100000" />

...


...

アンカー
idpInst4
idpInst4

4. Shibbolethのインストール 

各ファイル名等の指定は,Version 34.20.1に準拠しています。

1.   インストール

Shibboleth IdPのパッケージは、「/root/PKG」配下にあります。

...

 shibboleth-identity-provider-34.?.?.tar.gz がすでに配置されているので、以下のコマンドを実行してください。

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid

# tar xzvf shibboleth-identity-provider-34.?.?.tar.gz
# cd shibboleth-identity-provider-34.?.?
# ./bin/install.sh -Didp.conf.filemode=640

...

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid

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-34.0.1.2] ?
[Enter] ←入力なし

Installation Directory: [/opt/shibboleth-idp]
[Enter] ←入力なし
Hostname: [ex-idp-test??.gakunin.nii.ac.jp]

[Enter] 入力なし ※表示されたホスト名が違う場合、設定してください。
SAML EntityID: [https://ex-idp-test??.gakunin.nii.ac.jp/idp/shibboleth]
[Enter] ←入力なし
Attribute Scope: [gakunin.nii.ac.jp]
nii.ac.jp [Enter] nii.ac.jpを設定してください。
Backchannel PKCS12 Password: backpass[Enter] ←任意のパスワード

Re-enter password: backpass[Enter]

Cookie Encryption Key Password: cookiepass[Enter] ←任意のパスワード
Re-enter password: cookiepass[Enter]
SAML EntityID: [https://ex-idp-test??.gakunin.nii.ac.jp/idp/shibboleth] ?
[Enter] ←入力なし
Attribute Scope: [
gakunin.nii.ac.jp]

nii.ac.jp [Enter] nii.ac.jpを設定してください。

 (省略)

BUILD SUCCESSFUL
Total time: 2 minutes 9 seconds

...

ヒント

IdPが実際に使用する証明書の秘密鍵はまだ配置されておりませんので、所有者・パーミッションは後の手順で設定します。

 

...



アンカー
jakarta-taglibs-core.jar_jakarta-taglibs-standard.jar
jakarta-taglibs-core.jar_jakarta-taglibs-standard.jar

...

ヒント
titleヒント

※catalina.{日付}.logにTomcat終了時(再起動時)のタイミングで以下のようなエラーが表示されることがありますが問題ありませんので無視してください。

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
致命的: A web application appears to have started a TimerThread named [Timer-0] via the java.util.Timer API but has failed to stop it. To prevent a memory leak, the timer (and hence the associated thread) has been forcibly cancelled.
パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
致命的: A web application created a ThreadLocal with key of type [null] (value [ch.qos.logback.core.UnsynchronizedAppenderBase$1@XXXXXXXX]) and a value of type [java.lang.Boolean] (value [false]) but failed to remove it when the web application was stopped. To prevent a memory leak, the ThreadLocal has been forcibly removed.

(関連するバグレポート)

 


...

アンカー
idpInst5
idpInst5

5. サービスの起動・停止方法

サービス起動コマンド停止コマンド再起動コマンド
httpdsystemctl start httpdsystemctl stop httpdsystemctl restart httpd
tomcatsystemctl start tomcatsystemctl stop tomcatsystemctl restart tomcat

...


...

インストールが完了したら,サイト情報等の設定を行って下さい.

...