User Tools

Site Tools


Sidebar

vps:firefox_sync_server

現在はpythonで配布されているとのこと。 以下、内容が古くなったので参照しないこと。

Firefox Sync サーバ

prisoner web上にFirefox Syncサーバを構築する。

weabve minimalの展開

weave minimalを入手して、展開する。

# cd /usr/local/www
# fetch http://people.mozilla.org/~telliott/weave_minimal.tgz
weave_minimal.tgz                          100% of   10 kb    10 MBps
# tar xfvz weave_minimal.tgz
x weave_minimal/
x weave_minimal/create_user
x weave_minimal/index.php
x weave_minimal/README
x weave_minimal/weave_basic_object.php
x weave_minimal/weave_storage.php
x weave_minimal/weave_utils.php
#

所有者、アクセス権を他のディレクトリと併せる。

# chown -R www:www weave_minimal
# chmod 755 weave_minimal

Apache設定

READMEに従い、Aliasを設定する。httpsで接続したいので、/usr/local/etc/apache22/extra/httpd-ssl.confの該当するServerにAliasを追加する。

Alias /weave /usr/local/www/weave_minimal/index.php

設定後、apacheをリスタートする。

# service apache22 restart

接続確認

READMEに従い、ブラウザにて https://<設置先サーバ>/weave/1.0/blah/info/collection にアクセスする。ファイルとしてcollectionをダウンロードした場合は中身を確認する。

<br />
<b>Fatal error</b>:  Class 'PDO' not found in <b>/usr/local/www/weave_minimal/weave_storage.php</b> on line <b>60</b><br />

この場合、PDOが足りないことが判る。

追加導入

databases/php5-pdo_sqlite1)とdevel/php5-jsonを導入する。

# portupgrade -N databases/php5-pdo_sqlite
# portupgrade -N devel/php5-json

導入後、再度Apacheを再起動する。

接続確認(再)

再度、ブラウザにて https://<設置先サーバ>/weave/1.0/blah/info/collection にアクセスする。ユーザ名とパスワードを訊ねられるので、ユーザ名はblah、パスワードは空(もしくは適当な文字)で認証を進める。認証に失敗して再度ユーザ名とパスワードを訊ねられるので、キャンセルで中止する。

データベースの確認

weave_dbが生成されていることを確認する。

# cd /usr/local/www/weave_minimal
# ls -l | grep weave_db
-rw-r--r--   1 www  www   8192  Sep 30 21:51 weave_db
#

ユーザの作成

ユーザを登録する。

# pwd
/usr/local/www/weave_minimal
# php create_user
(c)reate, (d)elete or change (p)assword: c
Please enter email: <アカウント名となるメールアドレスを入力>
Please enter password: <パスワード>
at9asdf9ewetetet9ew9tq34396u4u934dadlzhgap created
#

Firefox側設定

設定のマスタにしたいFirefox での作業

今回Firefox Syncサーバ(weave server)を導入したサイトは自己署名証明書で構築している。そのため、接続すると「This Connection is Untrusted」と警告が出るが、例外として登録しておく。その後以下の手順でセットアップを行う。

  1. [Edit] - [Preferences] で [Sync]を選択し、[Set Up Firefox Sync]を押下する。
  2. [I already have have a Firefox Sync account.]の[Connect]を押下する。
  3. [Add a Device]の[I don't have the device with me]リンクを押下する。
  4. [Sign In]にて、作成したユーザ名、パスワードを入力する。
  5. [Server]は[Use a custom server…]を選択し、https://<設置先サーバ>/weave/を入力する。
  6. [Sync Key]に任意の文字列を入力する。ここで入力した文字列は預けるデータの暗号化と復号化に使用する。
  7. [Setup Complete]となるので、[Finish]を押下する。
  8. 別タブで「お使いのデバイスでFirefox Sync のセットアップが完了し、ブラウザデータへアクセスできるようになりました。」が表示される。(Mozillaが用意したFirefox SyncサーバとSyncした訳ではない。)

設定を取り込みたいFirefox での作業

初回のSync時のみ、「設定のマスタにしたいFirefox での作業」に以下の手順を追加する。2)

  1. [Sign In]にて[Sync Options]を押下し、[Replace all data on this computer with my Sync data]を選択する。

注意点

  1. 環境によってはFirefox Syncサーバ側で databases/php5-pdo_sqlite, devel/php5-json以外に導入が必要となるソフトがある。
  2. ブラウザからsign inする際、情報がすべて正しいのにも関わらず、サーバに接続できない場合がある。この場合、何度か[Next]を押下すると接続される事もある。
1)
prisoner webの場合、sqliteも併せて導入された。
2)
マスタにしたいFirefoxと同じ設定にする場合のみ。通常はMergeでも問題なさそう。
vps/firefox_sync_server.txt · Last modified: 2019/06/16 15:16 (external edit)