2017-08-31 7 views
0

新しいバージョンのwso2-iot(3.1.0)をインストールしました。wso2-IoTでIPと証明書を変更するときのエラー

リモートで使用するには、localhostから/scripts/change-ip.shスクリプトで自分のサーバーのIPアドレスにIPを変更しました。

すべてがうまく動作しているようですが、私はhttps://IP:9443/devicemgrにログインしたとき、私は怒鳴るメッセージが表示されました:

An Error Occurred! 
HTTP Status : 500 

org.wso2.carbon.apimgt.integration.client.exception.APIMClientOAuthException: failed to retrieve oauth token using jwt 

は、誰かが同じ問題を経験していますか? 解決策はありますか?

  • それはOpenJDKのバージョンではDebian 9.1上で動作する "1.8.0_141"
  • を私が失敗した:私は3台のサーバ上WSO2-IOTをインストールしようとした

    おかげ


    Debian 8.8でopenjdkのバージョンが「1.8.0_141」の場合

  • Java版「1.8.0_144」のDebian 8.7で失敗する場合

答えて

0

問題の原因の1つは、IoT_Home/conf/identity/identity-providers/iot_default.xmlに正しい証明書がないことです。それを正しく追加してください。 その理由は、change-ip.shスクリプトの "sed -e"が一部のLinux OSで動作しないことがあります。

+0

回答ありがとうございます。しかし、証明書はconf/identity/identity-providers/iot_default.xmlファイルで正しいです。 –

0

私はio-server.shスクリプトを実行すると、私は10.5.0.68での名前私のサーバーとducky.domaine-mairie.lanのIPである

[2017-09-04 09:25:05,244] [IoT-Core] INFO - {org.wso2.carbon.ui.internal.CarbonUIServiceComponent} Mgt Console URL : https://10.5.0.68:9443/carbon/ 
[2017-09-04 09:25:11,654] [IoT-Core] ERROR - {org.apache.synapse.transport.passthru.TargetHandler} I/O error: Host name verification failed for host : ducky.domaine-mairie.lan 
javax.net.ssl.SSLException: Host name verification failed for host : ducky.domaine-mairie.lan 
    at org.apache.synapse.transport.http.conn.ClientSSLSetupHandler.verify(ClientSSLSetupHandler.java:171) 
    at org.apache.http.nio.reactor.ssl.SSLIOSession.doHandshake(SSLIOSession.java:308) 
    at org.apache.http.nio.reactor.ssl.SSLIOSession.isAppInputReady(SSLIOSession.java:410) 
    at org.apache.http.impl.nio.reactor.AbstractIODispatch.inputReady(AbstractIODispatch.java:119) 
    at org.apache.http.impl.nio.reactor.BaseIOReactor.readable(BaseIOReactor.java:159) 
    at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(AbstractIOReactor.java:338) 
    at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(AbstractIOReactor.java:316) 
    at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:277) 
    at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:105) 
    at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:586) 
    at java.lang.Thread.run(Thread.java:748) 
[2017-09-04 09:25:11,726] [IoT-Core] WARN - {org.apache.synapse.endpoints.EndpointContext} Endpoint : AnonymousEndpoint with address https://{uri.var.hostname}:{uri.var.portnum}/oauth2/token will be marked SUSPENDED as it failed 
[2017-09-04 09:25:11,728] [IoT-Core] WARN - {org.apache.synapse.endpoints.EndpointContext} Suspending endpoint : AnonymousEndpoint with address https://{uri.var.hostname}:{uri.var.portnum}/oauth2/token - current suspend duration is : 30000ms - Next retry after : Mon Sep 04 09:25:41 CEST 2017 
Exception in thread "Thread-36" org.wso2.carbon.apimgt.integration.client.exception.APIMClientOAuthException: failed to retrieve oauth token using jwt 
    at org.wso2.carbon.apimgt.integration.client.OAuthRequestInterceptor.apply(OAuthRequestInterceptor.java:118) 
    at feign.SynchronousMethodHandler.targetRequest(SynchronousMethodHandler.java:158) 
    at feign.SynchronousMethodHandler.executeAndDecode(SynchronousMethodHandler.java:88) 
    at feign.SynchronousMethodHandler.invoke(SynchronousMethodHandler.java:76) 
    at feign.ReflectiveFeign$FeignInvocationHandler.invoke(ReflectiveFeign.java:103) 
    at com.sun.proxy.$Proxy40.apisGet(Unknown Source) 
    at org.wso2.carbon.apimgt.webapp.publisher.APIPublisherServiceImpl.publishAPI(APIPublisherServiceImpl.java:53) 
    at org.wso2.carbon.apimgt.webapp.publisher.APIPublisherStartupHandler.publishAPIs(APIPublisherStartupHandler.java:97) 
    at org.wso2.carbon.apimgt.webapp.publisher.APIPublisherStartupHandler.access$500(APIPublisherStartupHandler.java:30) 
    at org.wso2.carbon.apimgt.webapp.publisher.APIPublisherStartupHandler$1.run(APIPublisherStartupHandler.java:69) 
    at java.lang.Thread.run(Thread.java:748) 
Caused by: org.wso2.carbon.identity.jwt.client.extension.exception.JWTClientException: Error when parsing the response <am:fault xmlns:am="http://wso2.org/apimanager"><am:code>101500</am:code><am:type>Status report</am:type><am:message>Runtime Error</am:message><am:description>Error in Sender</am:description></am:fault> 
    at org.wso2.carbon.identity.jwt.client.extension.JWTClient.getTokenInfo(JWTClient.java:169) 
    at org.wso2.carbon.identity.jwt.client.extension.JWTClient.getAccessToken(JWTClient.java:79) 
    at org.wso2.carbon.apimgt.integration.client.OAuthRequestInterceptor.apply(OAuthRequestInterceptor.java:99) 
    ... 10 more 
Caused by: Unexpected character (<) at position 0. 
    at org.json.simple.parser.Yylex.yylex(Unknown Source) 
    at org.json.simple.parser.JSONParser.nextToken(Unknown Source) 
    at org.json.simple.parser.JSONParser.parse(Unknown Source) 
    at org.json.simple.parser.JSONParser.parse(Unknown Source) 
    at org.json.simple.parser.JSONParser.parse(Unknown Source) 
    at org.wso2.carbon.identity.jwt.client.extension.JWTClient.getTokenInfo(JWTClient.java:153) 
    ... 12 more 

怒鳴るJavaのメッセージが表示されましたサーバ。明らかに、スクリプトはIPの代わりにDNS名を使用しようとしています。 これが解決に役立つことを願っています。

+0

/change-ip.shスクリプトで入力した値を変更し、IPをDNSで置き換えます。今、IoTサービスはうまく機能します。 –

0

change-ip.shは私の味が確定されていません。情報

0

の欠如があり、同様の問題が議論された問題のhere

一つの理由は、/ etc/hostsファイルには、ホスト名にマシンのIPを指しているのエントリを持っていることができました。 IPでもlocalhostがこの問題を引き起こす可能性があります。 これは、証明書の共通名が検証されているときに発生し、ホスト名を指しています。証明書の共通名はローカルIP(changeip.shスクリプトで作成)であり、同じIPを持つ/ etc/hostsファイルからホスト名が見つかった場合、ホスト名の検証に失敗します。これにより、上記の問題が発生し、JWTトークンを取得できなくなります。同様の問題が報告されましたhere

関連する問題