Project

General

Profile

Actions

ProxyOnAlphaRacksVps

AlphaRack'sの768MB VPS(12ドル/年)にSquid(プロキシサーバ)をインストールしてみた記録です。

海外VPSサービスを使う狙いは、激安なのも理由の一つですが、www.nutaku.netのAigisを遊びたいからだったりします。

これを書いたときの各種ソフトのバージョン

仮想マシンイメージ centos7 64bit
OS CentOS Linux release 7.3.1611 (Core) cat /etc/redhat-release
Kernel 2.6.32-042stab113.17 uname -a
Squid 3.5.20
Cygwin(Windows10上) 2.7.0 x86_64

ログインして最初にやること

SetupAlphaRacksVps と、yum updateを行ってください。

あと、 http://mawatari.jp/archives/check-centos-version 等を参考にしてCentOSのバージョンの確認をします。結果が7.3.1611と異なるなら、このWiki記事(ProxyOnAlphaRacksVps)は適用できないかもしれません。

性能測定

ポートを開くことができるかどうかのチェックを兼ねて、性能測定用コマンドのiperfをインストールします。

sudo yum install epel-release
sudo yum install iperf

ポートを開くために、sudo vim /etc/sysconfig/iptables でiptablesを編集し、ssh向けの記述行をコピー&ペーストして、ポート番号を任意のポート(以下、仮に12345とします)にした行を追加して保存、終了します。

仮想マシン側で、たとえば iperf -s -p 12345 とします。終了はCtrl-Cです。

ローカル側はCygwinかLinuxマシンを使います。 iperf -c <仮想マシンのIP> -p 12345 とします。終了はCtrl-Cです。
私がLos Angelsの仮想マシンに接続したときは、Bandwidth 1.53Mbits/secと出ました。i-83.netのVPSと同じぐらいです。

プロキシを立てる前に

sudo yum install lynx

lynxをインストールして、www.nutaku.netに接続してもDMMに飛ばされないことを確認します(この時点でダメならプロキシサーバを立てる価値がないので)。

Squidの設定

sudo yum install squid

適当な箇所(たとえば~)に/etc/squid/squid.confをバックアップしておいてから、/etc/squid/squid.confを編集します。
http://qiita.com/pcnikki/items/404329f9ad9cb6e235d4 等を参考にしています。

  • 56行目の http_access deny all を#でコメントアウトします。
  • http_portを使用可能な番号(iperfで開けたやつ)に変更します。
  • ファイルの最後に以下を追記します。
visible_hostname ashidan.orz.hm

acl myacl src 61.24.222.152
http_access allow myacl
http_access deny all

forwarded_for off

request_header_access X-Forwarded-For deny all
request_header_access Via deny all
request_header_access Cache-Control deny all

visible_hostnameはVPSにつけた名前に直します。
acl myacl srcのIPアドレスは、プロキシを利用するホストのグローバルIPアドレスに直します。たとえばお使いのPCからhttps://www.cman.jp/network/support/go_access.cgi をアクセスすればグローバルIPがわかります。

編集を終了したら以下を打ち込みます。

sudo squid -z
sudo systemctl restart squid

この時点で、適当なブラウザからプロキシ接続が行えるようになっているはずです。
うまくいっていたら、以下を打ち込んで、仮想マシンが再起動したときにもSquidが自動的に起動するようにします。

sudo systemctl enable squid

Squidのキャッシュ動作を無効化する

ローカルなネットにあるプロキシサーバであればキャッシュの効果は期待できますが、VPSはインターネット上にあるので効果ないでしょう。
Squidのキャッシュ動作を向こうにしたい場合は、 http://qiita.com/bloodia/items/1162be5a441767c7c3ba を参考にしてください。

Chrome用拡張機能 Proxy Switcherでの設定例

すべてを遅いプロキシ経由にすると遅すぎてゲームにならないため、工夫が必要でした。
ユーザ認証と課金関係だけプロキシ経由、ゲーム情報はダイレクトにすれば十分快適にゲームが遊べます。
nutakuだけプロキシ経由であとはダイレクト接続する場合、PAC ScriptタブでInlineを選び、以下のように書き込みます。

function FindProxyForURL(url, host) {
  if ( isInNet(host, "10.0.0.1",  "255.0.0.0")
    || isInNet(host, "127.0.0.0", "255.0.0.0")
    || isInNet(host, "192.0.0.0", "255.0.0.0") )
    return "DIRECT";
  else if (shExpMatch(host, "*.nutaku.net")
    || shExpMatch(host, "*.nutaku.com"))
    return "PROXY <自分のVPSのIPアドレス>:<自分のVPSのプロキシポート番号>";
  else
    return "DIRECT";
}

FireFox用のProxy Swicherなら、ローカルディスクに上記内容のファイルを作って、Automaticタブでfile:///c:~と書いて読み込ませればokです。


Count of this page : 87

Updated by mole lord about 2 years ago · 1 revisions