🔄

Remotely Save で Obsidian を S3 経由で同期

に公開

Remotely Save で Obsidian の同期を S3 経由で設定する

概要

Obsidian の同期はオフィシャルサブスクで課金する方法がありますが、コスト最小限で従量課金で使いたい願望があるので、Remotely Save という Community Plugin を使って異なるデバイスで Obsidian のコンテンツを同期できるようにする。ストレージを AWS の S3 を利用する。

利用する Plugin: Remotely Save

https://github.com/remotely-save/remotely-save

流れ

  • AWS で S3 バケットを作成する
  • S3 バケットの権限を持つ IAM ユーザーを作成する
  • ユーザーのクレデンシャルを取得する
  • 取得したクレデンシャルを Remotely Save に渡す

AWS 側

AWS CLI 設定済み前提で CLI の方法を書きます。

1. Obsidian sync 用の S3 Bucket を作る

aws s3 mb s3://your-bucket-name

your-bucket-name の部分はあなたの Bucket name に置き換えてください。グローバルで一意である必要があります。
aws cli のプロファイルで設定したデフォルトのリージョンでバケットが作られる。どこのリージョンで作ったか意識する必要がある。

2. IAM ユーザーを作る

# ユーザー作成
aws iam create-user --user-name s3-sync-user

3. IAM ポリシーをアタッチする

セキュリティ的に最小権限にするため、先ほど作ったバケットにだけ権限を付与するようなポリシーをユーザーにアタッチ。
your-bucket-name は先ほど作った Bucket name に置き換えてください

aws iam put-user-policy --user-name s3-sync-user --policy-name ObsidianS3Access --policy-document '{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:GetObject",
        "s3:PutObject", 
        "s3:DeleteObject",
        "s3:ListBucket"
      ],
      "Resource": [
        "arn:aws:s3:::your-bucket-name",
        "arn:aws:s3:::your-bucket-name/*"
      ]
    }
  ]
}'

4. クレデンシャルを発行する

そのユーザーの権限を持つアクセスキーとシークレットキーを発行する。

aws iam create-access-key --user-name s3-sync-user

下記のようにクレデンシャルが発行される。

{
    "AccessKey": {
        "UserName": "s3-sync-user",
        "AccessKeyId": "your-access-key-id",
        "Status": "Active",
        "SecretAccessKey": "your-secret-access-key",
        "CreateDate": "2025-07-21T08:39:23+00:00"
    }
}

Obsidian 側

※ 同期したいデバイスPC/スマホそれぞれ同じ設定をする必要がある。

1. Community Plugin を有効にして、Remotely Save をインストールする

Preference - Community Plugins - Browse
community-plugins

2. Remotely Save を有効化する

remotely-save

3.Remotely Save の設定をする

remotely-save-setting

エンドポイントとリージョンは先ほど作ったバケットのリージョンと一致する必要がある。

  • Choose A Remote Service: S3 or compatiable
  • Endpoint: s3.ap-northeast-1.amazonaws.com
  • Region: ap-northeast-1
  • Access Key ID:先程取得した Access key ID
  • Secret Access Key: 先程取得した Secret access key
  • Bucket Name: 先程作成したバケット名
  • S3 URL style: Path-style

残りの設定は好みです。

4. 接続確認

Check Connectivity を押して、接続できるか確認する。
問題なければ特に保存する必要がないので、Window を閉じて設定画面終了する。
完了したら左側にSyncのアイコンが新しく出てくるので、押して実際Syncできるかを試してみる。

5. 他のデバイスも同様の設定

デバイス間同期が必要であればスマホ/ほかのPCで同じ設定をして、Syncできるようになったことがわかる。

まとめ

この記事では、AWSのIAMを使用してクレデンシャルを発行し、ObsidianのRemotely Saveプラグインを利用してS3バケットと同期する方法を説明しました。

GitHubで編集を提案

Discussion