2016-08-10 8 views
0

私はhttpsアクセスを許可したいが埋め込みJetty 9を使用していますが、httpは使用しません。HTTPSでの埋め込みJetty 9の使用

私はJetty web.xmlで簡単にリダイレクトを設定できますが、そのファイルは埋め込みバージョンにはありません。私は、任意のファイルを使用して、埋め込みバージョンからそのファイルを指すことができることを知っていますが、これは簡単であるはずです。

私はこれをここで検索して見つけました。http://blog.anvard.org/articles/2013/10/05/jetty-ssl-server.html著者は「もちろん、HTTPコネクタを取り外すだけでHTTP/Sの使用を強制できます」と述べています。

だから私は、まさにこのでした:

Server server = new Server(); 

    SslContextFactory sslContextFactory = new SslContextFactory(); 
    sslContextFactory.setKeyStorePath(keystoreFile.getAbsolutePath()); 
    sslContextFactory.setKeyStorePassword(Keys.DOMAIN_CERTIFICATE_JKS_KEYSTORE_PASSWORD); 
    sslContextFactory.setKeyManagerPassword(Keys.DOMAIN_CERTIFICATE_KEY_MANAGER_PASSWORD); 

    HttpConfiguration httpsConfiguration = new HttpConfiguration(); 
    SecureRequestCustomizer secureRequestCustomizer = new SecureRequestCustomizer(); 
    httpsConfiguration.addCustomizer(secureRequestCustomizer); 

    ServerConnector serverConnector = new ServerConnector(server, 
      new SslConnectionFactory(sslContextFactory, HttpVersion.HTTP_1_1.asString()), 
      new HttpConnectionFactory(httpsConfiguration)); 
    serverConnector.setHost("192.168.0.5"); 
    serverConnector.setPort(9443); 
    serverConnector.setIdleTimeout(15000); 

    server.setConnectors(new Connector[] { serverConnector }); 

問題:それが動作するようには思えません。 httpsは正常に動作していますが、httpにアクセスすると、予期されるjson応答ではなく、200 OKの応答が返されます。したがって、サーバーはリクエストを処理しているように見えますが、何かを間違って暗号化します。それとも私は何かを見落としてしまったのですか?

-

http wireshark response

+0

「私はhttpにアクセスします」と言うと、9443以上の平文httpを使用していますか? –

+0

はい。私は 'http:// ... 'をブラウザに入力し、何かを暗号化して戻しました。非httpポートへのリダイレクトがないと正常ですか? –

+0

それは 'http:// xxxxx:9443'ですか?これは、暗号化ハンドシェイクを受け取ること、またはプレーンテキストがサポートされていないという通知を受けることが完全に予想されるためです。 –

答えて

1

私の知る限り、あなたは正確にすべてをしました。 SSLポートに接続し、通常のHTTP(SSLハンドシェイクなし)を送信すると、SSL警告メッセージが返されます。あなたのHTTPクライアントは(何らかの理由で)HTTP応答を受け取っていなくても200 OKメッセージを表示しています。

受け取ったのはSSLアラートメッセージです。

15 03 03 00 02 02 50 // response 

15 = ALERT 
03 03 = SSL version (TLS 1.x) 
00 02 = Message Length 
02 50 = Message 
関連する問題