XiaomiカメラNAS不要ソリューション
アイデア
RcloneとOpenListのWebDAV APIを使って、123Openドライブ(またはOpenListがサポートする他のクラウドドライブ)をローカルディレクトリにマウントし、Sambaでそのディレクトリを共有します。XiaomiカメラCW500はOpenWrtと同じLAN内に配置し、XiaomiカメラはSambaプロトコルでOpenWrtの共有ディレクトリに接続して監視動画をアップロードします。
このアイデアは、適切なNASがないが、監視カメラのクラウドストレージサービスを購入したくないユーザーに適しています。
デバイス情報
OpenWrt
| モデル | Octopus Planet(章魚星球 S912) |
| アーキテクチャ | AArch64 Processor : Cortex-A53 * 8(Arm64) |
| ファームウェアバージョン | OpenWrt R2024.11.05 / LuCI Master (git-24.283.20555-a1e6216) |
| カーネルバージョン | 6.1.114-flippy-92+o |
Docker
| Docker バージョン | 27.2.0 |
REPOSITORY TAG IMAGE ID CREATED SIZEopenlistteam/openlist latest 6c11957205f7 2 weeks ago 136MBXiaomiカメラCW500
NAS転送機能:対応(メモリーカードが必要)
NASプロトコル:SMB1.0/SMB2.0
現在はLAN内のNAS転送のみ対応(2025-07-26)
前提条件
123ドライブのAPIキーを入手
https://www.123pan.com/developer
OpenList設定
OpenListのデプロイ
docker-compose.ymlを作成
vim docker-compose.yml以下を記入
version: '3.8'
services: alist: image: openlistteam/openlist:latest container_name: openlist restart: unless-stopped network_mode: host volumes: - OpenList:/opt/openlist/data environment: - PUID=0 - PGID=0 - UMASK=022
volumes: OpenList:コンテナを起動
docker-compose -f docker-compose.yml up -dコンテナの状態を確認
docker logs openlist
コンテナが正常に起動し、パスワードが docker logs openlist の出力に表示されています。
クラウドドライブの追加
http://<OpenWrtIP>:5244 にアクセスし、ログインします(パスワードは docker logs openlist の出力を参照)

ログイン後、Manage をクリック

Storages セクションで Add ボタンをクリックしてストレージを追加

123Open を選択

Mount Path、ClientID、ClientSecret を入力
メイン画面に戻ると、ディレクトリが表示され、正常にアクセスできることを確認

右下のツールバーにあるファイル作成をクリックし、クラウドドライブにアクセスできるかテストし、ついでにテストファイル test を作成

注:監視録画を暗号化してアップロードしたい場合は、Cryptストレージを追加で設定し、WebDAVユーザーのルートディレクトリを暗号化ストレージに指定してください。詳細はOpenListのドキュメントを参照。
WebDAVユーザーの追加
WebDAVユーザーを追加し、権限を設定

アクセスできるかテスト
curl -v http://127.0.0.1:5244/dav/
401 Unauthorized が表示されれば正常です
注:ついでに管理者アカウントのパスワードも変更することをお勧めします。
Rclone設定
設定の作成
以下のコマンドを入力
rclone config
ここに n を入力
次に、この設定に名前を付けます(私は WebDAV-123Open としました)

WebDAV の番号を見つけて入力(私の場合は 46)

WebDAVのURLを入力(これはOpenListが提供するWebDAVインターフェース:http://Openlist-IP:5244/dav/)
http://127.20.10.1:5244/dav/
認証方式を選択。ここでは 5(その他の認証方式)を選択

先ほどOpenListで作成したユーザー名を入力


パスワードを2回入力(パスワードは表示されません)

ここはEnterキーを押す

ここは n またはそのままEnter

y またはEnter

これで完了

次にアクセスできるかテスト
rclone ls WebDAV-123Open:先ほど作成したテストファイルが表示される

マウント
マウントディレクトリを作成
mkdir -p /mnt/webdav手動でマウントをテスト
rclone mount WebDAV-123Open: /mnt/webdav --allow-other --vfs-cache-mode writes &マウント成功を確認
df -h | grep webdavls /mnt/webdav
私の環境では明らかにマウント成功しています
アンマウント
fusermount -uz /mnt/webdav自動起動マウントの設定
/etc/rc.local ファイルを編集(exit 0 の前にスクリプトを挿入すると、システム起動時に実行されます)
vim /etc/rc.localコマンドを挿入
sleep 15
mkdir -p /mnt/webdavchmod 777 /mnt/webdav
/usr/bin/rclone \ --config /root/.config/rclone/rclone.conf \ mount WebDAV-123Open: /mnt/webdav \ --allow-other \ --dir-perms 0777 \ --file-perms 0777 \ --umask 000 \ --vfs-cache-mode writes \ --buffer-size 256M \ --vfs-read-chunk-size 32M \ --vfs-read-chunk-size-limit off \ --vfs-cache-max-age 5m \ --dir-cache-time 1h \ --no-modtime \ --no-checksum \ --contimeout 5m \ --timeout 10m \ --retries 10 \ --low-level-retries 20 \ --log-level DEBUG \ --log-file /tmp/rclone-mount.log \ --daemon &手動で実行し、マウントできるか確認(/etc/rc.local に他の特別なコマンドがある場合、先ほど挿入したコマンドを直接コピーして実行してください)
/etc/rc.local
df -h | grep webdavls /mnt/webdav先ほどと同じように text.txt が表示されれば問題ありません
デバイスを再起動し、自動マウントを確認
reboot再接続後、以下を実行
sleep 30df -h | grep webdavls /mnt/webdav
問題ありません。
rcloneの設定は以上です。次にsambaの設定を行います。
Samba設定
Sambaのインストール
luci-app-samba4 をインストール
opkg updateopkg luci-app-samba4以下のパッケージが自動でインストールされるはずです
- samba4-libs
- samba4-server
- autosamba
- luci-app-samba4
- luci-i18n-samba4-zh-cn
ユーザー設定
shadow-useradd をインストール
opkg updateopkg install shadow-useraddインストールに失敗した場合は、リポジトリを変更してみてください(バックアップを忘れずに)
rootユーザーにsambaパスワードを追加:
smbpasswd -a root新しいLinuxユーザー sambashare を作成し、ホームディレクトリを設定:
opkg updateopkg install shadow-useradd
useradd sambashare -g rootpasswd sambasharemkdir /home/sambasharechown sambashare /home/sambashare/sambashareユーザーにsambaパスワードを追加:
smbpasswd -a sambashare共有ディレクトリ
OpenWrtのパネルで直接設定します(NetBIOSを無効にしないでください。無効にするとXiaomiカメラがデバイスを見つけられなくなります)

確認
再起動と自動起動の設定
/etc/init.d/samba4 restart/etc/init.d/samba4 enable状態を確認
/etc/init.d/samba4 statuslogread | grep smbnetstat -tuln | egrep '137|138|139|445'リモート接続のテスト

ファイルの読み書きテスト(ファイルをドラッグ&ドロップ)

XiaomiカメラCW500設定
カメラの設定画面で、設定 -> ストレージ設定 -> NASネットワークストレージ に移動し、そのまま追加

マウントポイントを確認:

ファイルが正しく保存されています。
OpenListでも確認可能:

遭遇した問題
Q0:XiaomiカメラがOpenWrtデバイスを見つけられないのはなぜ?
A0:まず同じネットワークセグメントかどうかを確認し、次にOpenWrtのsamba設定でNetBIOSが無効になっていないか確認してください(無効にしないでください)
Q1:Xiaomiカメラが共有ディレクトリに書き込めないのはなぜ?
A1:rcloneのマウントパラメータにある権限設定 --dir-perms 0777、--file-perms 0777 を確認してください。この方法ではrcloneマウントディレクトリを使用しているため、chmod 777 で権限を設定するのではなく、rcloneのマウントパラメータで権限を設定する必要があります。
Q2:権限がないと表示されるのはなぜ?
A2:Q1&A1を参照
補足
もしパブリックネットワークからこの内部「NAS」デバイスにアクセスしたい場合は、内部ネットワークトンネルを設定してください:
参考
最も完全なrcloneでクラウドドライブをローカルにマウント(Alist編)ソリューション
OpenWRTのsamba共有設定