IdPのサービス動作状況を確認する
情報 |
---|
以前構築したIdPにて、以下のURLで 404 Not Found エラーが発生する場合は、まず 貴学にてIdPv3をインストールする場合の構築手順 の virtualhost-localhost80.conf の設定を確認してください。 |
...
1.Jetty と、httpd サービスを再起動
IdPの設定変更後に各サービスの再起動を行っていない場合は、行ってください。
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
titleBGColor | #ffffff |
---|
titleborderStyle | CentoOS7の場合solid |
---|
borderStyletitle | solidCentOS7の場合 |
---|
|
# systemctl stop tomcatjetty # systemctl restart httpd
# systemctl start tomcat |
展開 |
---|
|
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
| # service tomcat7 stop
# service httpd restart
# service tomcat7 start |
|
...
2.動作状況確認URLにアクセス
IdPサーバ自身から以下のようにアクセスして確認します。※ホスト名は必ず localhost(もしくは127.0.0.1)として下さい。
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
# wget -O - http://localhost/idp/status |
情報 |
---|
title | 外部からステータスページにアクセスしたい場合 |
---|
|
監視サーバからのアクセスなど、外部からアクセスしたい場合は、アクセス元のIPアドレスを許可する必要があります。 設定を変更した場合は、再度Tomcatの再起動を行ってください。 設定を変更した場合は、再度Jettyの再起動を行ってください。 /opt/shibboleth-idp/conf/access-control.xml ファイルにアクセス元となるIPアドレスを設定してください。 パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
| <util:map id="shibboleth.AccessControlPolicies">
<entry key="AccessByIPAddress">
<bean parent="shibboleth.IPRangeAccessControl"
p:allowedRanges="#{ {'127.0.0.1/32', '::1/128', 'xxx.xxx.xxx.xxx/xx'} }" /> ← アクセス元のIPアドレス範囲を追加
</entry>
</util:map>
|
以下のURLにアクセスします。 ※ホスト名を構築した環境に置き換えてアクセスしてください。 https://example-idp.nii.ac.jp/idp/status
上記のように変更した場合、同じルールを使用している他の機能(resolvertestとreload-*)へのアクセスも許可されます。 /idp/statusのみのアクセス制御を変更したい場合は、上述の<entry>要素を複製・適宜修正し、key属性にユニークな識別子を割り当てた後、idp.propertiesのidp.status.accessPolicyに当該keyを設定してください。 情報 |
---|
3.3.0のidp0以降のidp.propertiesにはidp.status.accessPolicyの行がありませんので、以下のような行を追加してください。 書式設定済み |
---|
idp.status.accessPolicy = AccessByIPAddressXXX |
|
|
...
...
3.結果の確認
各サービスの動作状況が確認できます。successfulという出力が含まれていれば、IdPの機能が正常に動作していることの確認が出来ました。各サービスの動作状況が確認できます。以下のようにShibboleth IdPのバージョンを含めて各種情報が表示され、以下と比較して大きな違いがなければ、IdPの機能が正常に動作していることの確認が出来ました。
情報 |
---|
機能に問題がある場合は当該機能(service)に"last failure cause:"という行が付与されエラー内容が表示されます。 ただし、明示的にエラーが表示されず、"last successful reload attempt:"の行が表示されないのみという場合もあるようですので、全ての機能(service)にこの行が存在して最近の日時であることを確認してください。 |
パネル |
---|
|
--2021-08-10 13:19:20-- http://localhost/idp/status Resolving localhost (localhost)... ::1, 127.0.0.1 Connecting to localhost (localhost)|::1|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 3021 (3.0K) [text/plain] Saving to: 'STDOUT'
0% [ ] 0 --.-K/s ### Operating Environment Information operating_system: Linux operating_system_version: 3.10.0-1160.36.2.el7.x86_64 operating_system_architecture: amd64 jdk_version: 11.0.12 available_cores: 1 used_memory: 201 MB maximum_memory: 1500 MB
### Identity Provider Information idp_version: 4.1.2 start_time: 2021-08-10T02:29:02.499Z current_time: 2021-08-10T04:19:20.805440Z uptime: PT1H50M18.306S
enabled modules: idp.authn.Duo (Duo Authentication) idp.authn.External (External Authentication) idp.authn.Function (Function Authentication) idp.authn.IPAddress (IPAddress Authentication) idp.authn.MFA (MFA Authentication) idp.authn.Password (Password Authentication) idp.authn.RemoteUser (RemoteUser Authentication) idp.authn.RemoteUserInternal (RemoteUserInternal Authentication) idp.authn.SPNEGO (SPNEGO Authentication) idp.intercept.ContextCheck (Context Checking Interceptor) idp.intercept.ExpiringPassword (Expiring Password Interceptor) idp.intercept.Impersonate (Impersonation Interceptor) idp.profile.CAS (CAS Protocol Suppport)
installed plugins:
service: shibboleth.LoggingService last successful reload attempt: 2021-08-10T02:27:01.300846Z last reload attempt: 2021-08-10T02:27:01.300846Z
service: shibboleth.AttributeFilterService last successful reload attempt: 2021-08-10T04:12:13.814714Z last reload attempt: 2021-08-10T04:12:13.814714Z
service: shibboleth.AttributeResolverService last successful reload attempt: 2021-08-10T02:27:13.460500Z last reload attempt: 2021-08-10T02:27:13.460500Z
No Data Connector has ever failed
service: shibboleth.AttributeRegistryService last successful reload attempt: 2021-08-10T02:27:07.803095Z last reload attempt: 2021-08-10T02:27:07.803095Z
service: shibboleth.NameIdentifierGenerationService last successful reload attempt: 2021-08-10T02:27:15.220310Z last reload attempt: 2021-08-10T02:27:15.220310Z
service: shibboleth.RelyingPartyResolverService last successful reload attempt: 2021-08-10T02:27:15.538725Z last reload attempt: 2021-08-10T02:27:15.538725Z
service: shibboleth.MetadataResolverService last successful reload attempt: 2021-08-10T02:27:09.317461Z last reload attempt: 2021-08-10T02:27:09.317461Z
metadata source: ShibbolethMetadata last refresh attempt: 2021-08-10T02:27:09.825031Z last successful refresh: 2021-08-10T02:27:09.825031Z last update: 2021-08-10T02:27:09.825031Z
metadata source: LocalMetadata last refresh attempt: 2021-08-10T02:27:09.825031Z last successful refresh: 2021-08-10T02:27:09.825031Z last update: 2021-08-10T02:27:09.825031Z
service: shibboleth.ReloadableAccessControlService last successful reload attempt: 2021-08-10T02:27:16.532224Z last reload attempt: 2021-08-10T02:27:16.532224Z
service: shibboleth.ReloadableCASServiceRegistry last successful reload attempt: 2021-08-10T02:27:16.619707Z last reload attempt: 2021-08-10T02:27:16.619707Z
service: shibboleth.ManagedBeanService last successful reload attempt: 2021-08-10T02:27:16.721063Z last reload attempt: 2021-08-10T02:27:16.721063Z
100%[======================================>] 3,021 --.-K/s in 0s
2021-08-10 13:19:20 (496 MB/s) - written to stdout [3021/3021] |
展開 |
---|
|
500 Internal Server Errorwgetコマンドの出力に以下のエラーが含まれます。 パネル |
---|
HTTP による接続要求を送信しました、応答を待っています... 500 Internal Server Error
2016-06-21 16:45:32 エラー 500: Internal Server Error。
|
→3.2.1およびそれ以前の場合、IdPの各種設定ファイルにて記述ミスの可能性があります。 ログファイル /opt/shibboleth-idp/logs/idp-process.log を確認して下さい。(直近の500エラーに対応するもの()は無視して、起動時にエラーが発生していないか確認してください) - 以下のエラーは無視してください。3.3.0で修正予定です。 書式設定済み |
---|
2016-06-27 12:34:56,760 - ERROR [org.apache.velocity:96] - ResourceManager : unable to find resource 'status.vm' in any resource loader.
2016-06-27 12:34:56,815 - ERROR [net.shibboleth.idp.profile:-2] - Uncaught runtime exception
java.lang.IllegalStateException: Exception occurred rendering view org.springframework.web.servlet.view.JstlView: name 'status'; URL [/WEB-INF/jsp/status.jsp]
at org.springframework.webflow.mvc.view.AbstractMvcView.render(AbstractMvcView.java:200)
Caused by: org.apache.jasper.JasperException: java.lang.NullPointerException
at org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:555)
Caused by: java.lang.NullPointerException: null
at org.apache.jsp.WEB_002dINF.jsp.status_jsp._jspService(status_jsp.java:250)
2016-06-27 12:34:56,826 - WARN [org.opensaml.profile.action.impl.LogEvent:76] - An error event occurred while processing the request: RuntimeException |
500 Internal Server Error (その2)wgetコマンドの出力に以下のエラーが含まれます。 パネル |
---|
HTTP による接続要求を送信しました、応答を待っています... 500 Internal Server Error
2016-06-21 16:45:32 エラー 500: Internal Server Error。
|
さらに、Tomcatの $CATALINA_BASE/logs/localhost.<日付>.log に以下のエラーが記録されます。 パネル |
---|
Jul 07, 2016 6:45:51 AM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet [idp] in context with path [/idp] threw exception [Handler processing failed; nested exception is java.lang.NoClassDefFoundError: javax/servlet/jsp/jstl/core/Config] with root cause
java.lang.ClassNotFoundException: javax.servlet.jsp.jstl.core.Config
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1722)
...
|
→ jstl.jar(jakarta-taglibs-core.jar と jakarta-taglibs-standard.jar)の配置に失敗している可能性があります。貴学にてIdPv3をインストールする場合の構築手順 > 4. jakarta-taglibs-core.jarとjakarta-taglibs-standard.jarの配置 を見直して、再度build.shを実行してみてください。 500 Internal Server Error (その3)wgetコマンドの出力に以下のエラーが含まれます。 パネル |
---|
HTTP による接続要求を送信しました、応答を待っています... 500 Internal Server Error
2016-06-21 16:45:32 エラー 500: Internal Server Error。
|
さらに、ログファイル /opt/shibboleth-idp/logs/idp-process.log に以下のエラーが出力されます。 書式設定済み |
---|
2016-06-27 12:34:56,861 - ERROR [net.shibboleth.utilities.java.support.service.AbstractReloadableService:231] - Service 'shibboleth.AttributeResolverService': Reload for shibboleth.AttributeResolverService failed
net.shibboleth.utilities.java.support.service.ServiceException: Failed to load [file [/opt/shibboleth-idp/conf/attribute-resolver.xml]]
at net.shibboleth.ext.spring.service.ReloadableSpringService.doReload(ReloadableSpringService.java:344)
Caused by: net.shibboleth.utilities.java.support.service.ServiceException: Unable to initialize attribute resolver for ApplicationContext:shibboleth.AttributeResolverService
at net.shibboleth.idp.attribute.resolver.spring.impl.AttributeResolverServiceStrategy.apply(AttributeResolverServiceStrategy.java:74)
Caused by: net.shibboleth.utilities.java.support.component.ComponentInitializationException: Attribute Resolver 'ShibbolethAttributeResolver': Plugin 'eduPersonPrincipalName' has a dependency on plugin 'myLDAP' which doesn't exist
at net.shibboleth.idp.attribute.resolver.impl.AttributeResolverImpl.checkPlugInDependencies(AttributeResolverImpl.java:501) |
このエラーが出力される場合は、/opt/shibboleth-idp/conf/attirbute-resolver.xmlでLDAPのコネクタが有効になっているか確認してください。 参考: IdPv3セッティング - attribute-resolver.xml ファイルの変更(IdPv3) - 2.利用するコネクタを設定します。 |