サーバ証明書の取得とApacheの設定(★)
1.「UPKIオープンドメイン証明書自動発行検証プロジェクト」の利用の手引における加入者編をご覧いただき、サーバ証明書を申請します。機関の審査手続きによっては証明書の交付までには数日を要する場合がありますので、お早めに申請してください。
パネル | ||||||
---|---|---|---|---|---|---|
| ||||||
【実習セミナー】(★) ・証明書は、初期設定で「/root/GETFILE」に取得したファイルを使用します。 サーバ証明書:server.crt 秘密鍵:server.key 中間CA証明書:server-chain.crt 上記ファイルを使用して、以降の設定(ssl.conf、relying-party.xml)を 行ってください。 |
2.入手したサーバ証明書をもとに、以下のファイルに設定してください。(★)
■/etc/httpd/conf.d/ssl.conf(★)
パネル | ||||||
---|---|---|---|---|---|---|
| ||||||
【実習セミナー】(★) ・各証明書と秘密鍵を「/root/GETFILE」配下よりコピーしてください。 # cp /root/GETFILE/server*.crt /etc/pki/tls/certs/ # cp /root/GETFILE/server.key /etc/pki/tls/private/ |
/etc/httpd/conf.d/ssl.conf を以下のように編集してください。(★)
パネル | ||||||
---|---|---|---|---|---|---|
| ||||||
(省略) SSLCertificateFile /etc/pki/tls/certs/server.crt ←サーバ証明書の格納先 (省略) SSLCertificateKeyFile /etc/pki/tls/private/server.key ←秘密鍵の格納先 (省略) SSLCertificateChainFile /etc/pki/tls/certs/server-chain.crt ←中間CA証明書の格納先 |
詳しくは、サーバ証明書インストールマニュアルの Apache 2 + mod_ssl 編を参照してください。
■/opt/shibboleth-idp/conf/relying-party.xml(★)
参照先ディレクトリ(/opt/shibboleth-idp/credentials)に、サーバ証明書と秘密鍵をコピーしてください。(★)
パネル | ||||||
---|---|---|---|---|---|---|
| ||||||
【実習セミナー】(★) ・サーバ証明書と秘密鍵を「/root/GETFILE」配下よりコピーしてください。 # cp /root/GETFILE/server.crt /opt/shibboleth-idp/credentials/ # cp /root/GETFILE/server.key /opt/shibboleth-idp/credentials/ |
/opt/shibboleth-idp/conf/relying-party.xml を以下のように編集してください。(★)
パネル | ||||||
---|---|---|---|---|---|---|
| ||||||
(省略) <security:Credential id="IdPCredential" xsi:type="security:X509Filesystem"> <security:PrivateKey>/opt/shibboleth-idp/credentials/server.key</security:PrivateKey> ↑ssl.confと同一のものを左記のパスにも格納 <security:Certificate>/opt/shibboleth-idp/credentials/server.crt</security:Certificate> ↑ssl.confと同一のものを左記のパスにも格納 </security:Credential> (省略) |
メタデータの作成と提出(★)
パネル | ||||||
---|---|---|---|---|---|---|
| ||||||
【実習セミナー】(★) ・メタデータテンプレートは、初期設定で「/root/GETFILE」に取得したidp-metadata.xmlを使用 します。rootのホームディレクトリに「"ドメインなしホスト名".xml」のファイル名でコピーします。 例)1番を割り振られた場合 ホスト名:ex-idp-test01.ecloud.nii.ac.jpとなり、ファイル名:ex-idp-test01.xmlです。 以下のコマンドでファイルをコピーします。 # cp /root/GETFILE/idp-metadata.xml /root/ex-idp-test01.xml コピー後、IdPメタデータテンプレートを参考に必要な項目を変更します。 (証明書部分には、/opt/shibboleth-idp/credentials/server.crtの内容を使用します。) |
展開 | ||
---|---|---|
| ||
学認申請システム(テストFed)から登録を行います。入力したデータから自動的にメタデータが生成されますのでメタデータ作成の必要はありません。詳細は参加のページをご覧ください。 |
展開 | ||
---|---|---|
| ||
学認申請システムから登録を行います。入力したデータから自動的にメタデータが生成されますのでメタデータ作成の必要はありません。詳細は参加のページをご覧ください。 |
パネル | ||||||
---|---|---|---|---|---|---|
| ||||||
【実習セミナー】(★) ・作成したメタデータは学認申請システムではなく、実習セミナー内のDSサーバに転送します。 以下は、転送コマンドの例です。 メタデータファイル名を各自のファイル名に変更して実行してください。 例)ホスト名:ex-idp-test01.ecloud.nii.ac.jpの場合 # scp /root/ex-idp-test01.xml test@ex-ds.ecloud.nii.ac.jp:METADATA 転送したメタデータは、1分周期で他のメタデータとマージ処理を行い、実習セミナー内の フェデレーションメタデータが更新されます。 ※1分周期で行う為、最大約1分登録までに時間がかかります。 |
Back-Channelの設定
Shib1.3のSPにも接続する場合は、IdPとの通信時にTLS接続を行うため、下記にしたがいBack-Channelの設定を行ってください。 このTLS接続ではポート8443を利用します。
パネル | ||||||
---|---|---|---|---|---|---|
| ||||||
【実習セミナー】
・実習セミナーではShibboleth SPバージョン1.3は対象としていないため以下の設定は不要です。 |
1.キーストアの設定
サーバ証明書およびCA証明書を格納したキーストアを作成します。
サーバ証明書としてUPKIの証明書をご利用の場合は、
CA証明書: Security Communication RootCA1 Repositoryの中程にあるSCRoot1ca.cer
中間CA証明書: オープンドメイン認証局2リポジトリの中程にあるnii-odca2.crt
をダウンロードして設定してください。
パネル | ||||||
---|---|---|---|---|---|---|
| ||||||
# cd /opt/shibboleth-idp/credentials
# keytool -importcert -trustcacerts -alias ca -keystore keystore.jks \
-storetype jks -file CA証明書.crt -storepass キーストアパスワード
# keytool -importcert -trustcacerts -alias interca -keystore keystore.jks \
-storetype jks -file 中間CA証明書.crt -storepass キーストアパスワード
# openssl pkcs12 -export -out pkcs12.p12 -in サーバ証明書.crt -inkey サーバ秘密鍵.key -name サーバ名
(ここで聞かれるエクスポートパスワードにはキーストアパスワードと同じものを指定してください)
# keytool -importkeystore -srckeystore pkcs12.p12 -destkeystore keystore.jks \
-srcstoretype pkcs12 -deststoretype jks -srcalias サーバ名 -destalias サーバ名 \
-storepass キーストアパスワード |
2.SOAP設定
Tomcatインストール先/conf/server.xml ファイルに以下を追加します。
パネル | ||||||
---|---|---|---|---|---|---|
| ||||||
<Connector port="8443"
maxHttpHeaderSize="8192"
maxSpareThreads="75"
scheme="https"
secure="true"
clientAuth="want"
SSLEnabled="true"
sslProtocol="TLS"
keystoreFile="/opt/shibboleth-idp/credentials/keystore.jks"
keystorePass="キーストアパスワード"
truststoreFile="/opt/shibboleth-idp/credentials/keystore.jks"
truststorePass="キーストアパスワード"
truststoreAlgorithm="DelegateToApplication"/>
|
3.ライブラリのコピー
IdPのライブラリをJavaのディレクトリにコピーします。
パネル | ||||||
---|---|---|---|---|---|---|
| ||||||
cp /opt/shibboleth-idp/lib/shibboleth-jce-1.1.0.jar $JAVA_HOME/jre/lib/ext |
※2.3.4以降では当該ファイルが同梱されなくなっています。⇒情報交換ML:00414, 情報交換ML:00513