Nextcloudの設定

提供:dococo.jp

初期画面

うまくインストール出来れば

https://(自分のサーバーのIPアドレス)/nextcloud/

で以下の画面が出ると思います。

設定内容

●設定後の処理

①管理者アカウントを新規作成します。

ログイン:******** ← 好きな名前

パスワード:******** ← 好きなパスワード

③ストレージとデータベースを選択

④データーベースは「MySQL/MariaDB」を選択

⑤データベースのアカウント: ←  CREATE USER 'nextcloud'@'localhost' IDENTIFIED BY '******';で設定したパスワード(nextcloudの部分)

 データベースのパスワード: ←  CREATE USER 'nextcloud'@'localhost' IDENTIFIED BY '******';で設定したパスワード(*******の部分)

 データベース名:     : ← CREATE DATABASE [nextcloud] DEFAULT CHARACTER SET utf8mb4;で設定した [nextcloud] の名前

 データベースのホスト名 : localhost:3306  ← MariaDBのポートは3306ですのでこのままの値

一気に設定の説明

セキュリティ&セットアップ警告

●サーバーにはメンテナンスウィンドウの開始時間が設定されていません。これは、リソースを多く使用する日常のバックグラウンドジョブが、メインの利用時間中にも実行されることを意味します。利用者がこれらの重いタスクによる負荷の影響を受けにくくするために、低い利用時間に設定することをおすすめします。

config.phpをorgとしてコピー
[root@dell ~]# cp -pi /var/www/html/nextcloud/config/config.php{,.org}
************************************************************************************************
以下の文をconfig.php最後尾に追記

[root@dell ~]# vi /var/www/html/nextcloud/config/config.php

  'default_timezone' => 'Asia/Tokyo',
  'maintenance_window_start' => 1,

Apache再起動
[root@dell ~]# systemctl restart httpd

セキュリティ&セットアップ警告2

●1つ以上のMIMEタイプの移行が利用可能です。特定のファイルタイプをより適切に処理するために、新しいMIMEタイプが追加されることがあります。大規模なインスタンスではMIMEタイプの移行に時間がかかるため、アップグレード中には自動的に実行されません。移行を実行するには、コマンド「occ maintenance:repair --include-expensive」を使用します。

One or more mimetype migrations are available. Occasionally new mimetypes are added to better handle certain file types. Migrating the mimetypes take a long time on larger instances so this is not done automatically during upgrades. Use the command `occ maintenance:repair --include-expensive` to perform the migrations.

以下のコマンドを実行
[root@dell ~]# sudo -u apache php /var/www/html/nextcloud/occ maintenance:repair --include-expensive

セキュリティ&セットアップ警告3

●インスタンスの一部のヘッダーが正しく設定されていません - `Strict-Transport-Security` HTTPヘッダーが設定されていません

(少なくとも `15552000` 秒に設定する必要があります)。セキュリティを強化するために、HSTSを有効にすることを推奨します。

[root@dell ~]# vi /etc/httpd/conf.d/ssl.conf

最終行に以下を追加
Header always set Strict-Transport-Security "max-age=15552000"

セキュリティ&セットアップ警告4

●いくつかの欠落しているオプションのインデックスを検出しました。データベースのパフォーマンスを向上させるために、(Nextcloudまたはインストールされたアプリケーションによって)新しいインデックスが追加されることがあります。インデックスの追加には時間がかかり、一時的にパフォーマンスが低下することがあるため、アップグレード時には自動的には行われません。インデックスが追加されると、それらのテーブルへのクエリが速くなるはずです。インデックスを追加するには、`occ db:add-missing-indices` コマンドを使用してください。インデックスが不足: "systag_by_objectid" テーブル内の "systemtag_object_mapping".

以下のコマンドを実行
[root@dell ~]# sudo -u apache php /var/www/html/nextcloud/occ db:add-missing-indices

セキュリティ&セットアップ警告5

●PHP OPcacheモジュールが正しく設定されていません。 OPcache のインターン化文字列バッファがほぼいっぱいです。繰り返しの文字列を効果的にキャッシュするために、PHPの設定に "opcache.interned_strings_buffer" を "8" よりも高い値で設定することをおすすめします。

[root@dell ~]# vi /etc/php.d/10-opcache.ini

コメント解除して値を16に設定
opcache.interned_strings_buffer=16

セキュリティ&セットアップ警告6

データベースがトランザクションファイルロックに使われています。パフォーマンスをあげるには、可能であればメモリーのキャッシュを設定してください。

[root@dell ~]# dnf install -y redis php-redis
[root@dell ~]# systemctl status redis.service
[root@dell ~]# systemctl is-enabled redis.service
disabled ←こういう場合は自動起動状態では無い(システムを再起動するとサービス停止する)
自動起動を有効化
[root@dell ~]# systemctl enable redis.service

[root@dell ~]# vi /var/www/html/nextcloud/config/config.php

// セクション内の最終行に追記
// [default_phone_region] には自身の国コードを指定 (ISO 3166-1) 
  'installed' => true,
  'memcache.local' => '\OC\Memcache\APCu',
  'default_phone_region' => 'JP',
  'maintenance_window_start' => 1,
  'memcache.locking' => '\OC\Memcache\Redis',
  'memcache.distributed' => '\OC\Memcache\Redis',
  'redis' => array(
    'host' => 'localhost',
    'port' => 6379,
    'timeout' => 0.0,
  ),