しょ〜うぃん広場

おもにTech系なブログ、ときどき個人的なブログ

さくらVPSにBitTorrent Syncを導入した

1ヶ月前ぐらいからRebuild.fmの存在を知って、#1から順に気になるもの(全体の7割ぐらい)を聞いている。

#30BitTorrent Syncの話をしてて、これは使えそうだなーと思ったから環境構築をしてみる。 BitTorrent Syncというのは、DropBoxP2Pバージョンみたいなやつで、つながっている端末同士でファイルを同期することができる。 要は ・高速 ・メインサーバーなし(全てが同等の扱い) ・容量無制限 なDropBoxだと思ったらいい。 しかもReadOnlyの設定とかできて、共有した相手に消されないようにもできたりするから優秀。 悪い点は、電源が入っていないと同期が取られないという点。

どうやって使うかはまだ決めてないけど、とりあえず常に電源が入っているサーバーをP2Pネットワークに含めると随分と使いやすくなるから(弱点克服)、まずはさくらVPSに入れる。

下の2つのサイトを参考にして導入した。
[参考]CentOSにBittorrent Syncを導入する
[参考]How to install and configure a BitTorrent Sync server

まず、どちらともroot権限で実行したと書いているけど、別にroot権限にしなくても問題なくできた。

$ cd 
$ mkdir btsync
$ cd btsync
$ wget http://btsync.s3-website-us-east-1.amazonaws.com/btsync_x64.tar.gz
$ tar -xvzf btsync_x64.tar.gz

HOME以下にbtsyncディレクトリを作って、そこにBitTorrent Syncを持ってくる。そして解凍。 さくらVPSの場合には64bitなので上のURLから。 32bitの場合にはhttp://btsync.s3-website-us-east-1.amazonaws.com/btsync_i386.tar.gzから持ってくるらしい。 (32bitの方は試してないので、間違っていたらゴメンナサイ)

$ ./btsync --dump-sample-config > btsync.conf

このコマンドでbtsync.confにサンプルの設定を書き込む。 コマンドの説明をしておくと、[./btsync --dump-sample-config]のコマンドを打つとサンプル設定がダラダラ流れてくるから、それをbtsync.confに書き込むというコマンド。

設定ファイルの中身を書き直す btsync.conf

{
   "device_name": "showwin VPS in Japan",
   "listening_port" : 55555,  // 0にするとランダムになる。固定したかったので適当な値を決めた

   "storage_path" : "/home/showwin/.sync",  //ログとかがたまるらしい。よく分かってない…笑

   "check_for_updates" : true,
   "use_upnp" : true,

   "download_limit" : 0,     //ダウンロード時の回線速度制限。0なら無制限
   "upload_limit" : 0,       //アップロード時の回線速度制限。0なら無制限

   "webui" :          //WebUIの設定
   {
     "listen" : "0.0.0.0:8888",  //8888ポートで使えるようにする。適当な値でOK
     "login" : "********",        //ページにアクセスした際の認証に必要
     "password" : "********"      //同上
   }
 }

こんな感じ。 どんなオプションがあるのか、まだよく分かってないから、これからもうちょっと調べてみる。

あとはiptablesの設定。 /etc/sysconfig/iptables

# BitTorrent Sync 
-A OUTPUT -p tcp --dport 55555 -j ACCEPT
-A OUTPUT -p udp --dport 55555 -j ACCEPT
-A INPUT -p tcp --dport 55555 -j ACCEPT 
-A INPUT -p udp --dport 55555 -j ACCEPT 
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8888 -j ACCEPT

を追加した。

$ /etc/init.d/iptables restart

iptablesを再起動。

$ ./btsync --config btsync.conf

最後にbtsync.confの設定でbtsyncを起動させればOK! これでxxx.xxx.xxx.xxx:8888にアクセスすればGUIのコントロールパネルが見れるはず。

Screen Shot 2014-04-29 at 13.51.17 (クリックで拡大)

次は使ってみた感想を書くつもり。