比較バージョン

キー

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

貴学にてSPをインストールする場合の構築手順

 


目次
maxLevel2
minLevel2
stylenone
 


...

アンカー
spInst1
spInst1

1. Shibboleth SP (version

...

3.

...

0以降) の動作要件

以下は本技術ガイドで構築する前提となる環境です。

    • Apache HTTP Server 2.

  • 2以上と
    • 4以上と mod_ssl

  • Apache 2.4を使う場合はShibboleth SP 2.5.2以降をお使いください。

  •  

他の環境および最新の情報はShibbolethのサイトでご確認ください:
全体Linux

...

macOS, WindowsJava Servlets

 

...

アンカー
spInst2
spInst2

2. OSをインストールする

1. OSでの設定

  • OS(CentOS 6)インストール7)インストール
    インストーラを起動してOSのインストールを行ってください。途中表示されるパッケージ選択画面では「Webサーバー」を選択してください。
    その他に必要なパッケージがある場合は、適宜インストールしてください。
    ※このテキストはSELinuxは無効化されているものとして書かれております。下記コマンドでSELinux設定を確認してください。

    パネル
    bgColor#eeeeee

    $ /usr/sbin/getenforce

  • ネットワーク設定
    環境に合わせ、ホスト名・ネットワーク・セキュリティを設定してください。
    SPでは shibd サービスが通信を行います。

...

 ntpサービスを用い、貴学環境のntpサーバと時刻同期をしてください。 
※Shibbolethでは、通信するサーバ間の時刻のずれが約5分を越えるとエラーになります。

 

 ※Shibbolethでは、通信するサーバ間の時刻のずれが約3分を越えるとエラーになります。



...

アンカー
spInst3
spInst3

3. Shibbolethのインストール

SPバージョン2.3からはrepositoryが用意され、yumに対応したのでインストールが大変楽になりました。
ここで説明するのは、以下のOSについてのインストール方法となります。

  • CentOS
  • 5
  • 7/
  • 6
  • 8, Red Hat Enterprise Linux
  • 5/6/7 (i386)
  • SUSE Linux Enterprise Server 10/11(無印/SP1/SP2/SP3) (i386)
  • OpenSUSE Linux 12.1/12.2/12.3 (i386)

 その他のOSについては、以下を参照してください。

  • 7/8 ※ただし7はOpenSSLのバージョンの関係で7.4以降向け
  • Rocky Linux 8/9, Amazon Linux 2

 その他のOSについては、以下を参照してください。

※上記OSでx86_64の場合
⇒下記の"yum install shibboleth"を"yum install shibboleth.x86_64"と読み替えてください。
※Linuxの他のディストリビューションの場合
こちら
※他のOSの場合
こちら

 


1. repositoryファイル追加

...

 

  Shibboleth用のrepositoryファイルをダウンロードします。
  (下記コマンドは、CentOS 6 7 の場合です。他のディストリビューションの場合はURLの "CentOS_CentOS-6" の部分を適宜読み替えてください。ただし、RHEL 7 の場合は "7" の部分を下記対応表を参考に適宜読み替えてください。特に RHEL 7/8 の場合は CentOS_7" /8 をご利用ください。)

...

title実習セミナー

対応表:

OS/バージョンURLの赤字部分

CentOS 7, RHEL 7

CentOS_7

RHEL 8CentOS_8

Rocky Linux 8

rockylinux8

Rocky Linux 9

rockylinux9

※ ここに掲載されていないOSについてはこちらを参照してください

...

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid

#

wget

http

'https://

download

shibboleth.

opensuse.org/repositories/security://shibboleth/CentOS_CentOS-6/security:shibboleth.repo

...

net/cgi-bin/sp_repo.cgi?platform=CentOS_7'

 yumにrepositoryファイルを追加します。(ファイル名も標準的なものに変更しています。)

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid

#

cp security\:shibboleth.repo

cp sp_repo.cgi\?platform=* /etc/yum.repos.d/shibboleth.repo


2. インストール

...

  yumコマンドを使用する為、依存関係のあるunixODBCなども同時にインストールされます。  yum コマンドの実行前に、まず※PGP鍵のインポートを参照してください。
  yumコマンドを使用する為、依存性のあるunixODBCなども同時にインストールされます。

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid

#

yum

install

shibboleth

  なお、OSインストール直後の状態でyum install shibbolethでインストールされるパッケージは以下の通りです。
  (2013年10月22日現在, CentOS 6にて)

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
 libcurl-openssl (*)
 libmemcached (*)
 libsaml8
 libtool-ltdl (*)
 libxerces-c-3_1
 libxml-security-c17
 libxmltooling6
 liblog4shib1
 opensaml-schemas
 unixODBC
 xmltooling-schemas
 shibboleth 2.5.2-1.1

(2012年11月14日注:CentOS 5の場合は libcurl-openssl, libmemcached, libtool-ltdl はインストールされません)
(2011年6月21日注:ここでliblog4shib1でなく古いlog4shibがインストールされた場合は
yum update liblog4shib1
を実行してアップデートしてください)

3. httpd 設定(★) 

ヒント
title実習セミナー

ここで設定するホスト名は、各自SPサーバのホスト名を設定してください。
例)1番を割り振られた場合   ex-sp-test01.gakunin.nii.ac.jp

 
/etc/httpd/conf.d/ssl.confにて、ServerNameを設定します。

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
ServerName example-sp.nii.ac.jp:443    ← ホスト名を設定

 

情報

加えて、SSL 3.0プロトコルに対する攻撃が発見されておりますので、当該プロトコルを無効化することをお勧めします。⇒SSLバージョン3の脆弱性について (CVE-2014-3566)

パネル

SSLProtocol all -SSLv2 -SSLv3

4. shibd 起動(★)

以下のコマンドでshibdを起動します。

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
# service shibd start

...

途中でPGP鍵のインポートに関して確認があります。

パネル

Retrieving key from https://shibboleth.net/downloads/service-provider/RPMS/repomd.xml.key
Importing GPG key 0x7D0A1B3D:
 Userid     : "security:shibboleth OBS Project

...

素の状態でyumコマンドにてインストールを実行すると、

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
Importing GPG key 0x7D0A1B3D "security:shibboleth OBS Project

<security:shibboleth@build.opensuse.org>"

from http


 Fingerprint: 6519 b5db 7c1c 8340 a954 ed00 73c9 3745 7d0a 1b3d
 From       : https://

download

shibboleth.

opensuse.org

net/

repositories/security:/shibboleth/CentOS_5/repodata/

downloads/service-provider/RPMS/repomd.xml.key


Is

this

ok

[y/N]:

と聞かれますが、PGP鍵を確認せずにインストールすることは大変危険です。
このPGP鍵を確認するためにあらかじめ以下の手順を実行してください。

...

Fingerprint: に表示されている文字列が上記と一致することを確認の上、y[ENTER] を入力してください。同様に2つ目のPGP鍵の確認がありますので、

パネル

Retrieving key from https://

...

shibboleth.net/downloads/

...

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
-----BEGIN PGP PUBLIC KEY BLOCK-----
(中略)
-----END PGP PUBLIC KEY BLOCK-----

...

service-provider/RPMS/cantor.repomd.xml.key
Importing GPG key 0x02277962:
 Userid     : "Scott Cantor <cantor.2@osu.edu>"
 Fingerprint: dcaa 1500 7bed 9de6 90cd 9523 378b 8454 0227 7962
 From       : https://shibboleth.net/downloads/service-provider/RPMS/cantor.repomd.xml.key
Is this ok [y/N]:

Fingerprint: に表示されている文字列が上記と一致することを確認の上、y[ENTER] を入力してください。

なお、OSインストール直後の状態でyum install shibbolethでインストールされるパッケージは以下の通りです。
  (2023年7月現在, CentOS 7にて)

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
vi KEYS

  次に

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
gpg --quiet --import KEYS ; gpg --fingerprint 0x7D0A1B3D

 を実行し、以下のフィンガープリント(指紋)と一致することを確認してください。

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
pub   1024D/7D0A1B3D 2008-06-30 [満了: 2014-01-23]
                 指紋 = 6519 B5DB 7C1C 8340 A954  ED00 73C9 3745 7D0A 1B3D
uid                  security:shibboleth OBS Project <security:shibboleth@build.opensuse.org>

 ※この鍵IDおよびフィンガープリントの値は今後変更になる可能性があります。値が異なっている場合は事務局までご連絡いただければ幸いです。

shibboleth 3.4.1-1
libcurl-openssl
liblog4shib2
libmemcached
libsaml12
libxerces-c-3_2
libxml-security-c20
libxmltooling10
opensaml-schemas
unixODBC
xmltooling-schemas


3. httpd 設定   
 

/etc/httpd/conf.d/ssl.confにて、ServerNameを設定します。

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
gpg: error reading key: 公開鍵が見つかりません

 と表示された場合はコピーした鍵もしくはgpgコマンドの引数の鍵IDが異なっておりますので、もう一度確認してください。

  下記コマンドで、このPGP鍵をインポートすれば完了です。

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
# rpm --import KEYS

 

このとき

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
エラー: KEYS: インポート読み込みに失敗しました(0)。

 とエラーが出る場合は改行コードの問題が考えられます(WindowsでKEYSを作成した場合など)。その場合は以下のコマンドでエラーが解消されるか確認してください。

...

borderColor#cccccc
bgColor#eeeeee
borderStylesolid

...

ServerName sp.example.ac.jp:443    ← ホスト名を設定

 

情報

加えて、SSL 3.0プロトコルに対する攻撃が発見されておりますので、当該プロトコルを無効化することをお勧めします。⇒SSLバージョン3の脆弱性について (CVE-2014-3566)

パネル
bgColor#eeeeee

SSLProtocol all -SSLv2 -SSLv3


4. shibd 起動 

以下のコマンドでshibdを起動し、自動起動設定も行います。

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
エラー:
# 
KEYS:
systemctl 
key 1 import failed.

 とエラーが出る場合はすでにPGP鍵がインポートされている可能性があります。以下のコマンドで

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
# rpm -qa gpg-pubkey

 次の出力が含まれる場合はすでにPGP鍵がインポートされていますので次に進んでください。

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
gpg-pubkey-7d0a1b3d-4ec20249

 

...

start shibd
# systemctl enable shibd


展開
titleCentOS 6の場合
パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
# 
grep
service 
gpgcheck /etc/yum.repos.d/shibboleth.repo gpgcheck=1 ← =1であれば署名検証が行われる

...

shibd start

 

...

アンカー
spInst4
spInst4

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

...

サービス

...

起動コマンド

...

停止コマンド

...

再起動コマンド

...

httpd

...

# service httpd start
systemctl start httpdsystemctl stop httpdsystemctl restart httpd
shibdsystemctl start shibdsystemctl stop shibdsystemctl restart shibd
展開
titleCentOS 6の場合
サービス
起動コマンド
停止コマンド
再起動コマンド
httpdservice httpd startservice httpd stopservice httpd restart
shibdservice shibd startservice shibd stopservice shibd restart

※shibdと同様、httpdもSPの設定ファイル(shibboleth2.xml等)を読み込みますので、設定ファイルを変更した際はhttpdの再起動もしくは再読み込み(reload)もあわせて行うようにしてください。httpdに含まれるShibbolethモジュール

shibd の起動方法

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
# service shibd start

httpd の停止方法

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
# service httpd stop

shibd の停止方法

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
# service shibd stop

httpd の再起動方法(停止→起動)

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
# service httpd restart

shibd の再起動方法(停止→起動)

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid
# service shibd restart

※shibdと同様、httpdもSPの設定ファイル(shibboleth2.xml等)を読み込みますので、設定ファイルを変更した際はhttpdの再起動もあわせて行うようにしてください。httpdに含まれるShibbolethモジュール(mod_shib)が当該ファイルを読み込みます。

...