Nextcloudを導入する時に、快適に利用する為にはサーバーのチューニングや、configなどの初期設定に加えて、セキュリティ面の設定も最初に行うべきです。
今回は自分用メモとしてまとめます。
目次
Nextcloudのファイルを暗号化させる
ファイル暗号化をさせると転送スピードがやや落ち、ファイル容量もやや大きくなります。
その変わりにサーバー上のファイルが暗号化された状態になるので、セキュアに利用したい場合は一番最初に設定しておくことをおすすめします。
まずはアプリから「Default encryption module」を有効家しておきましょう。
次に設定のセキュリティから画像の状態にすれば完了です。メインストレージ暗号化にもきちんとチェックしましょう。
この設定が完了してからのアップロードするファイルが暗号化されます。
これ以前のファイルを暗号化するには、公式ドキュメントをどうぞ。
復号化キーをバックアップする
Nextcloudを暗号化すると、passwordを忘れてしまうと復号化が永遠にできなくなります。
永続的なデータ損失を防ぐために、すべての暗号化キーを定期的にバックアップする必要があります。
暗号化キーは次のディレクトリに保存されます。
ユーザーの秘密鍵およびユーザーのファイルを復号化するために必要な他のすべての鍵はここです。
システム全体の外部ストレージに保存されているファイルを復号化するために必要な秘密鍵とその他すべての鍵はここです。
暗号化を有効にすると、すべてのファイルがNextcloudアプリケーションによって暗号化および復号化され、暗号化されてリモートストレージに保存されます。これにより、外部でホストされているストレージ上のデータが保護されます。
Nextcloud管理者とストレージ管理者は、バックエンドストレージを閲覧するときに暗号化されたファイルのみを表示します。
つまりファイルを見れるのは復号化キーを管理しているあなたのみとなります。
(ただし、サーバー上に復号化キーを同時に保管する仕組みなので鉄壁とは言えないでしょう)
PHP.iniの設定
- max_execution_time = 3600
- max_input_time = 600
- memory_limit = 1024M
- post_max_size = 512M
- upload_max_filesize = 512M
PHPの処理をさせる最大時間です。タイムアウトまでの時間になります。大容量ファイルの取り扱いは数分かかるので、大きめに設定しておきましょう。
サーバー側でPHPが起動してからスクリプトの実行を開始するまでの時間です。
Nextcloudの最低推奨値は512MBになっているので、それ以上にしておきましょう。サーバーの余裕を見て設定しましょう。
POST送信する時の全体のデータサイズ上限です。
1つのファイルに対する最大ファイルサイズです。
Nextcloud Mail(メールアプリ)
config.phpは基本的にはデフォルトのままで大丈夫ですが、自分の利用したいアプリに応じて細かい設定をすることができます。
config.php
メールアプリで以下のSMTPエラーが出る場合
Creating account failed: Connection to SMTP at smtp.mail.xxxxx:465 failed. Error connecting to SMTP server.
config.phpに以下を追記で解決する場合があります。
'app.mail.smtp.timeout' => 20,
'app.mail.transport' => 'php-mail',
NextcloudのMailアプリにGmailを設定する方法
GmailのIMAPを設定しても弾かれてしまう場合は、Googleアカウントの設定を見直す必要がありました。
- 2段階認証を設定する
- アプリパスワードを発行する
- NextcloudのMailアプリの設定画面にてGmailのパスワードに「アプリパスワード」の方を利用する
Gmailをいくつも連携してみたところ、私の環境では10個ほどでも実用に耐えうるウェブメーラー環境が作れました。一元管理派の方には設定するまでが面倒ですがおすすめです。昨今流行中のSparkメーラーのような状況が自分で作れます。
Nextcloud RSSアプリ
RSSが登録し放題となります。FeedlyやInoreaderの登録上限に困っている場合には重宝するでしょう。使い勝手としても必要十分の性能があります。
RSSを定期的に読み取る為にサーバーでcronの設定などは必須となります。
また、NextcloudのRSSアプリはPlayストアでは有料アプリですが、F-Droidというクライアントアプリを経由してインストールすると無料になるようです。
Nextcloudのエラーについて
暗号化アプリの無効なプライベートキーです。あなたの暗号化されたファイルへアクセスするために、個人設定からプライベートキーのパスワードを更新してください。
何かの拍子にNextcloudから常に表示されるようになってしまったエラーです。
これを解決させた方法はconfig.phpのバックアップから古いインスタンスIDなどに全て置き換えることで解決しました。
'instanceid' => 'xxxxxxxxxxxxxx',
'passwordsalt' => 'yyyyyyyyyyyyyyyyyyyyyyyyyyyy',
'secret' => 'zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz',
この部分ですね。
かなりハマった部分なので、同じ現象に陥った方は覚えておいて下さい。
まとめ
Nextcloudは設定一つでかなり利便性が変わります。気がついた部分があれば今後も追記していきます。
今日も知識欲は止まらない。