«前の日記(2009-04-30) 最新 次の日記(2009-05-07)» 編集

meta's blog - The Power To Serve

筆者について

FreeBSDを通じてOSSにささかな貢献を。

OSS活動をご支援いただける方を募集しています


2009-05-02 Xmarks

Xmarks で自分のサーバを使う

Xmarks はFirefox のブックマークを同期し、複数の PC で同じブックマークを使えるようにする拡張機能です。

以前は Foxmarks という名前で、Xmarks と改名したタイミングでパスワードの同期機能なども追加されたようです。

パスワードの同期には暗号化のためのパスワードが必要で、生のデータは Xmarks のサーバには渡りません。しかし、暗号化されているとはいえパスワードを第三者に預けるのには不安があるので自分のサーバでブックマークとパスワードを同期させることにしました。

技術的には単に WebDAV をしているだけなので、Apache でサーバーを立ててやるだけです。

/usr/local/etc/apache22/extras/httpd-vhost.conf に以下の様に記述。

<VirtualHost *:80>
  ServerAdmin meta@vmeta.jp
  ServerName kephir.vmeta.jp
  DocumentRoot "/usr/local/www"
  ErrorLog "/home/meta/log/www-kephir/error_log"
  CustomLog "/home/meta/log/www-kephir/access_log" combined

  DavLockDB /var/tmp/DavLock

  Alias /xmarks /home/meta/xmarks
  <Location /xmarks>
    Dav On
    AuthType Digest
    AuthName Xmarks
    AuthUserFile /home/meta/xmarks/.htdigest
    Require user meta
  </Location>
</VirtualHost>

既に動作している Web サーバを設定する場合は WebDAV と認証関連の設定だけでOK。

認証用の .htdigest ファイルの作成も一緒に。

$ cd /home/meta/xmarks
$ htdigest -c .htdigest Xmarks meta
Adding password for meta in realm Xmarks.
New password:
Re-type new password:

WebDAV は Web サーバの権限でファイルの読み書きを行うので、適切に権限を設定しておく必要があります。 権限を設定したらブックマークとパスワードを記録するためのファイルを作成しておきます。

$ cd /home/meta/xmarks
$ chown -R :www /home/meta/xmarks
$ umask 007
$ touch bookmarks passwd

これで動くはずなので、あとは Xmarks 側を設定します。 詳細の自分のサーバの設定で、「自分のサーバを使う」にチェックを入れ、URL とパスワード URL のところに、さっき作成したファイルの URL をそれぞれ入力してやれば OK です。