NextCloud導入後に設定すべきこと

NextCloudを導入後に実施した設定についてまとめます。

我が家ではNextCloudはDockerで動かしているので、Dockerコンテナでの設定を前提としています。

NextCloudをDockerで実行する方法は下記を参考にしてください。

Androidのアプリからアクセスする

AndroidのアプリからNextCloudにログインするためには、管理者画面上の下記の警告を修正する必要があります。

リバースプロキシヘッダーの構成が正しくないか、信頼できるプロキシからNextcloudにアクセスしています。そうでない場合、これはセキュリティに問題があり、攻撃者がNextcloudを表示できるようにIPアドレスを偽装することができます。詳細については、ドキュメント↗をご覧ください。

下記をconfig/config.phpに追加します。(デフォルトで、/var/www/html以下)

'overwriteprotocol' => 'https'

追加したらコンテナを再起動します。

Docker Composeを利用した特定のサービスの停止・起動方法は下記を参考にしてください。

Memoriesのインストールと初期設定

写真のViewerアプリであるMemoriesを、アプリストアからインストールします。

Memoriesで利用される位置情報であるGeometryを利用するためには、再イデックスが必要になります。Memoriesを導入したら最初におこないましょう。

公式ドキュメント:https://memories.gallery/config/

Geometry Tableの作成

我が家ではNextCloudはDockerで動いているので、起動済みのDockerコンテナに入ります。下記のappdocker-composeファイルのアプリケーション名を指定してください。

docker compose exec app bash

コマンド実行します。写真の量によっては時間がかかります。

./occ memories:places-setup
./occ memories:index

ffmpegのインストール

動画を表示するためには、ffmpegパッケージが必要です。自分はDockerイメージにインストールしていますが、手動でインストールする場合は下記を実行します。

sudo apt-get install -y --no-install-recommends \
        ffmpeg \
        ghostscript \
        libmagickcore-6.q16-6-extra \
        procps \
        smbclient \

画像ファイル等を手動で追加後のインデックス処理

NextCloudでデータを保存しているファイルシステムに直接画像ファイルや動画ファイルをコピーした時にはインデックスを作成する必要があります。下記コマンドでインデックスを計算します。

./occ files:scan --all

# memoriesを利用している場合
./occ memories index

日本語ファイルでエラー

インデックスを作成中、日本語の濁点が原因でエラーが発生することがあります。

will not be accessible due to incompatible encoding

convmvというパッケージを導入することで、修正が可能です。

sudo apt install convmv

# 返還対象をリストアップ。実際には変換されない
convmv -r -f utf8 --nfd -t utf8 --nfc *

# --notestオプションで、実際に実行される
convmv -r -f utf8 --nfd -t utf8 --nfc * --notest

ログイン制限の解決方法

NextCloudでは、ログインに連続で失敗するとログイン制限がかかってしまいます。ログイン制限にかかった時に無理やり突破する方法です。

まず、DBにアクセスします。下記では、dockerコンテナに入って、PostgreSQLにログインしています。

docker compose exec db bash
psql -U nextcloud

DB内にあるログから、ログイン制限にかかっているIPアドレスを特定します。

select * from oc_bruteforce_attempts limit 100;

IPアドレスを特定したら、NextCloud本体が動いているコンテナ上で下記のコマンドを実行します。下記の例では、一度appサービスにログインしています。

docker compose exec app bash

./occ security:bruteforce:reset {ipaddress}

  • この記事を書いた人

たかさん

犬と暮らすクラウドエンジニア。GCPが好きだけど良く触るのはAWSとAzureです。

-NextCloud
-, ,