• ベストアンサー

JSSEを使用したProxy経由のHTTPS通信について

yujiの回答

  • yuji
  • ベストアンサー率37% (64/169)
回答No.2

私は「Java World 2000/4月号」を見て HTTPSを使った通信のクライアントを作成しました。 Proxyを通すことも可能です。 仕事で作ったので、ソースを公開することはできませんが バックナンバーが手に入るなら、 「Java World 2000/4月号」を入手してみてください。

関連するQ&A

  • HTTPS(SSL)通信とサーブレットについて

    ショッピングサイトなどで、買い物カゴに入れたあと、支払いするときにHTTPS(SSL)通信になりますが、この場合の仕組みがよくわかりません。 (1)これは、WebサーバをHTTP用とHTTPS(SSL)用の2台構成として、買い物カゴにいれるまでは、HTTP用のWebサーバでアクセスしておいて、支払いするときにHTTPS(SSL)用のWebサーバにアクセスさせることで実現してるのでしょうか? (2)ショッピングサイトを見ると、URLはHTTP://がHTTPS://に変わるだけで、サーバが変わっているようには見えませんが、これは、apacheなどのWebサーバが持つバーチャルホスト機能で実現してるのでしょうか? (3)アプリケーションを開発する側としては、HTTP通信を行うサーブレットはHTTP用のサーバに配置して、HTTPS(SSL)通信を行うサーブレットはHTTPS(SSL)用のサーバに配置しておいて、HTTPS(SSL)通信をしたいときは、HTTP用のサーバに配置したサーブレットから、HTTPS(SSL)用のサーバに配置したサーブレットを呼びだすだけでOKでしょうか? (4)また、(3)が正しい場合、サーブレットの配置さえ気にしていれば、特にHTTPS(SSL)用のプログラムを組む必要はないでしょうか? 調べたのですが、最初からHTTP(SSL)通信する場合の方法しか記載がなくて困っています。

  • proxy経由とは?

    「http://www.kent-web.com/bbs/wforum/wforum.cgi」にあるようなフォーラムタイプの掲示板に書き込みしようとしたら「proxy経由での投稿はご遠慮下さい」とエラーになりました。 その掲示板には3ヶ月ほど前に1度だけ書き込みしたことがありますが、その時は何も問題なかったのに、なぜこのようなエラーが出てしまったのでしょう? パソコンで何か設定を変えた覚えはありません・・・と言うか初心者なのでproxy経由の意味が全くわかりませんから変えようがないのです。 どこが、どうなってしまったのでしょうか。 ご指導頂けたら助かります。 パソコン:DELL製、OS:XP Home Edition SP2、接続:ADSL です。よろしくお願い致します。

  • 透過型プロキシのHTTPS通信

    現在,自作の透過型HTTP/HTTPSプロキシを開発中です. プロキシとしての動作は単にクライアント・サーバ間のデータ受け渡しを行うだけなのですが,現在,透過型の実現で困っております. 透過型の実現には,iptablesを利用し,宛先ポート80番のデータの宛先ポート番号を3128番(本プロキシ)に変換し,本システムにデータを送信しています.HTTPの場合はこれで問題ないのですが,HTTPSの場合が問題です. HTTPSの場合はSSLハンドシェイク等,通常のHTTPとは違う手順を行わなければならないので,HTTP,HTTPSどちらで通信するのかをあらかじめ知る必要があります. クライアントのWebブラウザでプロキシの指定を行う場合(透過型ではない)のHTTPS通信は,クライアントからCONNECTリクエストが実行された場合のみ,HTTPS通信処理へ分岐させればいいのですが,透過型の場合は,クライアントからそのメソッドが実行されず,さらにiptablesによって宛先ポート番号も3128番に書き換えられているため,HTTP通信なのかHTTPS通信なのかを判別することができません. これを実現するためには,どのような方法があるのでしょうか? 透過型プロキシでHTTPS通信をサポートする製品(Webフィルタリングソフト等)はたくさん存在しているため,実現は可能だと考えられるのですが,どのように実現されているのでしょうか? 考えられるひとつの方法としては,HTTP用を3128番,HTTPS用を3129番ポートで実行しておいて,iptablesで80ならば3128,430ならば3129等と振り分ける方法が挙げられますが,どうでしょうか. よろしくお願いいたします.

  • Proxy経由でサイトにアクセスする方法を教えてください

    サイバーシンドロームなどで取得したproxyとポート番号を用いて、サイトにアクセスする方法(もちろんPHPのプログラム上で)を教えてください。 具体的には、linkでプロキシ経由のURLを指定したいです。 例えば、以下のリンクを叩くと、proxy経由でリンクされたことにしたいです。 <a href="http://www.yahoo.co.jp">ヤフー</a>  hrefの指定の方法にoptionを指定するだけなのか、それとも通信関連の関数を使用しなければいけないのか、実装方法も分からない状態で苦戦しております。 よろしくお願いいたします。

    • 締切済み
    • PHP
  • PROXY経由で特定のWebページにアクセスできない

    2台のPROXYを利用しています。PROXY1とPROXY2とします。PROXY1から特定のWebページにアクセスできないのですが、PROXY2からはアクセス可能です。 また、PROXY1は特定のWebページ以外はアクセス可能です。 アクセスできないときのブラウザの表示は以下の通りです。 ERROR The requested URL could not be retrieved While trying to retrieve the URL: http://www.~ The following error was encountered: Connection Failed The system returned: (10060) WSAETIMEDOUT, Connection timed out. The remote host or network may be down. Please try the request again. Your cache administrator is webmaster. 何が原因なのでしょう?

  • URLConnectionを用いたHTTPS通信時のタイムアウト設定

    現在java1.4.2.10を用いて、 指定のIDに紐づいたURLをDBから取得し、URLConnectionを用いて、取得したURL接続するといったプログラムを作成しております。 今回困っておりますのが、取得したURLがHTTPS通信だった場合のタイムアウト設定方法となります。 HTTPの場合は、下記のサイト http://www.slayers.nu/~kumasaka/Gyoumu/timeout.html を参考にさせていただき、なんとかなりましたが、HTTPSの場合には対応しておらず、困っております。 java1.5にはタイムアウト設定があるのですが、都合上1.5にはできず、 1.4.2で対応したく考えております。 System.setProperty に sun.net.client.defaultReadTimeout を設定することで getInputStream から抜けるまでの時間を制御できるようなのですが、これだと、1接続ごとにタイムアウト設定できません。 socket通信も考えたのですが、socket通信を用いた場合の、HTTPS通信の仕方もわからず、どなたかご教授のほどよろしくお願いいたします。

  • ■HTTPS通信の時の証明書について。■

    <構成図> 端末PC----WAN----Server(SSL,CA,WEB) <条件> 自己認証局(CA)により、https通信を検討しています。 認証方法としては、 1.サーバ証明書を利用する(URLのSection1)方法と 2.クライアント証明書を利用する(URLのSection2)があります。 <参考URL> http://park15.wakwak.com/~unixlife/practical/openssl.html ■質問1 端末PCから、Serverに通信するとき、 1.サーバ証明書の方法ですと、端末PCにサーバ証明書を入れなくても、 警告がでるが、通信はできそうですが、 2.クライアント証明書の方法も、端末PCにクライアント証明書をいれなくても、 警告がでるが、通信はできますか? ■質問2 上記の例だと、自己認証局(CA)による<条件>ですが、 外部CA認証局を利用する場合も、 1.サーバ証明書、2.クライアント証明書の方法ともに、 警告がでるが、通信はできるのでしょうか? 宜しくお願いします。

  • PROXY環境下で自動updat を実行する

    会社でネットワークを管理している者です。 proxy サーバーを設置しており、インターネットへアクセスする場合は proxyサーバーを経由する通信のみ許可するようにfirewall で制御しています。 社内パソコンには、 adobe reader や、java がインストールしているのですが、 自動で更新確認をするアプリケーションは、proxy サーバーを経由しないため、 更新確認ができなくて困っています。 皆様は、どのような対応をされているのでしょうか。

  • SSL/TLS通信を行う上で必要なサービス

    OS:Windows Server 2008 R2 以下について、ご教示ください。 Windows Server 2008 R2おいて、他のサーバーとSSL/TLS通信を行うために必要なサービスは「WinHTTP Web Proxy Auto-Discovery Service」であっていますでしょうか。 その認識であっている場合、「WinHTTP Web Proxy Auto-Discovery Service」が起動していないとSSL/TLS通信はできないでしょうか。 某D社でSSL-VPN装置のサポートデスク業務につく際の教育でSSL-VPN装置とSSL接続する場合、「WinHTTP Web Proxy Auto-Discovery Service」の起動が必要と聞いた気がしていますが、うる覚えなところがあるため、ご教示頂きたいと考えております。

  • 古いブラウザでインターネット

    お世話になります。 完全に趣味の世界の話です。 古いブラウザでインターネットをする方法を検討しています。 古いパソコンにインストールされているブラウザ、 SSL2.0、SSL3.0、TLS1.0にしか対応していないようなブラウザだと、 昨今のhttpsのウェブサイトは表示されず、httpの非暗号サイトしかアクセスできません。 以前、squidによるリバースプロキシで、80番のHTTPサーバに対して外部からのアクセスは、https化しているように見せかける…という方法が取れるというのは知っていたのですが、 proxyなどの中継サーバーを自宅内に立ち上げて、 通常のインターネット通信は、Proxyサーバー経由、 ローカル側のブラウザ-Proxyサーバー間は、ssl2.0や、もしくはhttpsリクエストを、proxy側でhttp化してアクセス。 (ローカル端末からはhttpアクセスでproxyサーバにキャッシュされたhttps(tls1.2→ssl2.0化)のWebサイトを見る。) といった事は現実的に可能でしょうか。 よろしくお願いいたします。