公開プロキシ

公開プロキシ(こうかいプロキシ、: open proxy)は、(外部に)開かれたプロキシ(プロクシ)を意味する。公開串(串はプロクシの俗称)と呼ばれるほか、匿名性が高いことから日本では匿名プロクシ匿名串などと呼ばれることも多い。

概要

通常、公開プロキシは匿名性を保証するためにHTTPのプロキシとして公開されている。本来は通信の自由のない国からの安全なアクセスを保証するため善意で設置されているものだが、個人情報が盗まれることを心配する人が使用したり、荒らしクラッキングを企図する者が身元追跡をかわすために使用することもある。

たいていの場合アクセス先のポート番号を制限していないため、HTTPで接続したのち CONNECT mailserver:25 などとCONNECTリクエストを行なうことでSMTPサーバへの匿名アクセスが可能となる。この穴を利用してスパムメールを配信するスパム業者に使用されることが多い。このためOpen ProxyとされるIPアドレスからのアクセスを拒絶するウェブサイトも多い。(2ちゃんねる,ウィキペディア(閲覧は可)など)

主要なISPではOP25B(Outbound Port25 Blocking - 25番ポートを閉じ、代わりに587番などを使用して自社の送信用サーバを通っていないメールはブロックする)が実施されるようになった。

なお日本でのインターネット最初期にあたる1990年代前半には、漢字などマルチバイト文字の文字コード(Shift_JISEUCUnicodeなど)を変換する公開プロキシサーバ(Delegate)が多く稼動していたが、クライアント側の多言語・多文字コード対応(i18n、m17n)が進んだためか、ほとんどが姿を消している。

匿名のプロキシと非匿名プロキシの違い

特有の環境変数による判別

プロキシは下記のようなプロキシ特有の環境変数をサーバ側へ通知するものがある。

  • HTTP_CACHE_CONTROL(キャッシュの制御情報)
  • HTTP_CACHE_INFO(キャッシュの情報)
  • HTTP_CLIENT_IP(接続元のIPアドレス)
  • HTTP_FORWARDED (プロキシのURI)
  • HTTP_MAX_FORWARDS(経由できるプロキシの最大数)
  • HTTP_PROXY_CONNECTION (プロキシの接続形態)
  • HTTP_SP_HOST(接続元のIPアドレス)
  • HTTP_TE(プロキシ等がサポートする転送エンコード方式)
  • HTTP_VIA(プロキシ種類,バージョン等の情報)
  • HTTP_X_FORWARDED_FOR(接続元のIPアドレス)(X-Forwarded-Forも参照)

このうち利用者のIPアドレス・ホスト名を含む環境変数をサーバ側に通知しないプロキシサーバは、匿名プロキシ(アノニ串、Anonymous proxy)と呼ばれ、IPアドレスを通知するプロキシは非匿名プロキシと呼ばれる。この環境変数をプロキシか否かの判定に使用しているサーバもあり、サーバ側にプロキシでの接続であることすら隠したい場合は、このような環境変数を通知しないプロキシを選択する必要がある。

ただし前述のほか、一部にはクラッキングや管理者の不注意などにより意図せず公開されていたプロキシも存在する上、書き込んだ者が複数のプロキシを使っていた場合(多段串と言われる)は特定に時間がかかるなど追跡がきわめて困難である。

関連項目

外部リンク

  • RFC 2817 (HTTP/1.1)
  • CyberSyndrome - The Proxy Search Engine