ホーム > Network > gmailアクセスを会社から利用し続けるための方法

gmailアクセスを会社から利用し続けるための方法

世知辛い…

 
弊社でもgmailがアクセス規制対象になってしまったので、緊急用に穴をあけてみよう。

今回はLunarNight Laboratoryで公開されているweb proxy3をsakuraのレンタルサーバに設置し、コンテンツフィルタリングを回避してみる。

自宅サーバや管理権限をもっているレンタルサーバを使えばSSL-VPNで何とでもなるのだけど、現在借りているデーモン起動できないレンタルサーバ内で手軽にやってみようという趣旨である。


 

まずは現状の整理とやりたい事

 

  • 社内から社外へのアクセスは、proxyサーバ経由でhttp,httpsのみ許可されている。
  • その他のプロトコルはファイアウォールでアクセス制限されている
  • proxyサーバは用途別に複数設置されていて、proxy.pacを利用した制御をおこなっている
  • インターネットへ抜けるproxyサーバはコンテンツフィルタリングサーバと連携して、規制サイトへのアクセスを禁止する。

回避ルートとしては、インターネットへ抜けるproxyサーバを使って規制対象外のホストを踏み台とし、規制対象サイトへのアクセスを試みる。

通信経路は緑のルートとなる。一般的なコンテンツフィルタリングを回避する手段としては、ReverseProxyを用いることが多いのだが、Reverse Proxyを設置するには、一般のレンタルサーバでは権限の関係で敷居が高い。

その上、「絶対パス指定を埋め込んでいるサイト」「JavaScript等でリダイレクトされるサイト」等、対応できないサイトが多い。

20090324_0

緑のルートが、今回の回避ルートである。動作的には、fowarding Proxyと同じなので、絶対パスやリダイレクトの問題は解決する筈(期待値)

 

CGIプロキシのインストール方法

 
WebProxy3は3つのモジュールにわかれている。

  • ローカルプロキシとして動作するWindowsバイナリファイル(Windowsクライアント)
  • CGIプロキシとして動作するスクリプト(サーバ:perl)
  • プロキシとして動作するWindowsバイナリファイル(サーバ:win32専用)

今回はCGIプロキシを選択し、レンタルサーバとして借りているsakuraのサーバに設置した。

WebProxy3_CGI_Serverフォルダの中にある下記ファイル、フォルダ(+中身)をサーバの公開ディレクトリにアップロードする。

webproxy3.cgi
register.cgi
.htaccess
./lib
./sysdata/
./sysdata/log/

場合によっては、Perlのパスの変更をする必要がある。(同梱ドキュメントに記載)

上記ディレクトリを他人が踏み台として利用できないように.htaccessファイルにて認証およびアクセス制御の設定をする。 【参考

webproxy3.cgi および register.cgiは705か755あたりにパーミッションを変更する。
 

Windowsクライアントの設定

 
実行して接続ボタンをおせば、プロキシとして動作する。

webproxy3

サーバ設定

CGIを設置したサーバのURLを設定する。NativeサーバはWindows版のサーバを起動した時。

CGIサーバなので、今回はチェックボックスをはずしておく。ユーザ名、パスワードはCGIへのBASIC認証のパスワードにする。

パスワードを設定していない場合(セキュリティ上推奨せず)は、設定してもしなくてもよい。

プロキシ設定

社内プロキシのアドレスとポートを設定する。プロキシに認証が必要な場合は、適宜設定する。

直接インターネットに接続できる環境の場合は「proxyを使う」をはずしておく。

システム設定

特にデフォルトから弄くる必要なし。最大接続数やタイムアウトはもう少し短めにしておくと吉。

 

Firefoxで設定して使ってみる

 
Firefoxで利用するproxyをWebproxy3に変更してみる。

20090324_2

ねんがんの2chの画面をてにいれたぞ!

 

proxy.pacを改造でござる

 
さてと、このままだと社内の他のサーバが見れないので既存のproxy.pacに手をくわえる。

当然、サーバで配布しているproxy.pacの編集は管理者ではないとできないので、お手軽にローカルに保存しローカルのproxy.pacを読ませるようにする。

  • 今までどおりProxy(もしくはDIRECT)で閲覧したいサイトを指定
  • httpsはCGI-Proxyでは動作しない(と思う)ので既存のproxyを利用
function FindProxyForURL(url, host)
{

if  shExpMatch (host, "*.社内ドメイン.co.jp") <-- 社内網は直接接続
return "DIRECT";

else if shExpMatch (url, "*.google.com") <------- 特定URLは利用しない
return "PROXY 社内proxyアドレス:ポート";

else if (url.substring(0, 6) == "https:") <------ httpsも利用しない
return "PROXY 社内proxyアドレス:ポート";

else
return "PROXY localhost:8080";  <----------------それ以外はCGIプロキシを利用

}

こんな感じ。CGIプロキシと連携して通常のフォワーディングプロキシと同じように使えるのは便利かも。

 

追記

 

20090324_4

gmailはhttpであれば問題なく動作することを確認できた。あらら…(すぐに解決するとは思わなかった俺)

この記事に関連するエントリはまだ存在しません

コメント:0

コメントフォーム
入力した情報を記憶する

トラックバック:0

この記事のトラックバック URL
http://blog.moooi.jp/archives/24/trackback
トラックバックの送信元リスト
gmailアクセスを会社から利用し続けるための方法 - moiblog より

ホーム > Network > gmailアクセスを会社から利用し続けるための方法

RSS ntoh-Twitter
RSS aquaqu-Twitter
アクセスの多いページ

ページの上部に戻る