序章

ownCloudのフォークであるNextcloudは、Dropboxのように一元化された場所に、ドキュメントや写真などの個人コンテンツを保存できるファイル共有サーバーです。 Nextcloudとの違いは、そのすべての機能がオープンソースであるということです。 また、機密データの制御とセキュリティをユーザーに戻すため、サードパーティのクラウドホスティングサービスを使用する必要がなくなります。

このチュートリアルでは、Debian9サーバーにNextcloudインスタンスをインストールして構成します。

前提条件

このガイドの手順を完了するには、次のものが必要です。

  • サーバーに設定されたsudoユーザーとファイアウォール Debian 9初期サーバーセットアップガイドに従って、sudo権限を持つユーザーを作成し、基本的なファイアウォールをセットアップできます。 。
  • (オプション)サーバーを指すドメイン名:TLS/SSLを使用してNextcloudインストールへの接続を保護します。 Nextcloudは、サーバーにドメイン名がある場合、 Let’sEncryptから無料の信頼できるSSL証明書を設定および管理できます。 そうでない場合、Nextcloudは接続を暗号化できる自己署名SSL証明書を設定できますが、Webブラウザーではデフォルトで信頼されません。 DigitalOceanを使用している場合、Let’s Encryptを使用する場合は、サーバーのドメイン名の設定方法に関するガイドに従ってください。

上記の手順を完了したら、サーバーにNextcloudをセットアップする方法を学び続けます。

ステップ1-Nextcloudをインストールする

snappyパッケージシステムを使用してNextcloudをインストールします。 このパッケージングシステムは、デフォルトのリポジトリを介してDebian 9にインストール可能であり、組織は、関連するすべての依存関係と構成とともに、自動更新機能を備えた自己完結型のユニットでソフトウェアを出荷できます。 つまり、Webサーバーとデータベースサーバーをインストールして構成し、そのサーバーで実行するようにNextcloudアプリを構成する代わりに、基盤となるシステムを自動的に処理するsnapパッケージをインストールできます。

snapパッケージをインストールして管理するには、最初にsnapdパッケージをサーバーにインストールする必要があります。 aptのローカルパッケージインデックスを更新してから、次のように入力してソフトウェアをインストールします。

  1. sudo apt update
  2. sudo apt install snapd

次に、ログアウトして再度ログインするか、/etc/profile.d/apps-bin-path.shスクリプトを使用して、セッションのPATH変数に/snap/binを追加します。

  1. source /etc/profile.d/apps-bin-path.sh

snapdがインストールされたら、Nextcloud snapパッケージをダウンロードして、次のように入力してシステムにインストールできます。

  1. sudo snap install nextcloud

Nextcloudパッケージがダウンロードされ、サーバーにインストールされます。 snapに関連する変更を一覧表示することで、インストールプロセスが成功したことを確認できます。

  1. snap changes nextcloud
Output
ID Status Spawn Ready Summary 1 Done today at 20:18 UTC today at 20:18 UTC Install "nextcloud" snap

ステータスと概要は、インストールが問題なく完了したことを示しています。

NextcloudSnapに関する追加情報の取得

Nextcloud snapについてさらに情報が必要な場合は、役立つコマンドがいくつかあります。

snap infoコマンドは、説明、利用可能なNextcloud管理コマンド、インストールされているバージョン、追跡されているスナップチャネルを表示できます。

  1. snap info nextcloud

スナップは、サポートするインターフェイスを定義できます。これは、スロットとプラグで構成され、一緒に接続すると、特定の機能またはアクセスレベルへのスナップアクセスを提供します。 たとえば、ネットワーククライアントとして機能する必要があるスナップには、networkインターフェイスが必要です。 このスナップが定義するスナップ「インターフェース」を確認するには、次のように入力します。

  1. snap interfaces nextcloud
Output
Slot Plug :network nextcloud :network-bind nextcloud - nextcloud:removable-media

このスナップが提供するすべての特定のサービスとアプリについて学ぶには、次のように入力してスナップ定義ファイルを確認できます。

  1. less /snap/nextcloud/current/meta/snap.yaml

これにより、デバッグのヘルプが必要な場合に、スナップに含まれる個々のコンポーネントを確認できます。

管理者アカウントの構成

Nextcloudスナップを設定する方法はいくつかあります。 このガイドでは、サーバーのIPアドレスまたはドメイン名にアクセスするすべてのユーザーが管理者登録ページにアクセスできる小さなウィンドウを回避するために、Webインターフェイスを介して管理ユーザーを作成するのではなく、コマンドラインで管理ユーザーを作成します。

新しい管理者アカウントでNextcloudを設定するには、nextcloud.manual-installコマンドを使用します。 ユーザー名とパスワードを引数として渡す必要があります。

  1. sudo -i nextcloud.manual-install sammy password

次のメッセージは、Nextcloudが正しく構成されていることを示しています。

Output
Nextcloud is not installed - only a limited number of commands are available Nextcloud was successfully installed

Nextcloudがインストールされたので、Nextcloudがサーバーのドメイン名またはIPアドレスを使用してリクエストに応答するように、信頼できるドメインを調整する必要があります。

信頼できるドメインの調整

コマンドラインからインストールする場合、Nextcloudはインスタンスが応答するホスト名を制限します。 デフォルトでは、サービスは「localhost」ホスト名に対して行われた要求にのみ応答します。 サーバーのドメイン名またはIPアドレスを介してNextcloudにアクセスするため、これらのタイプのリクエストを受け入れるようにこの設定を調整する必要があります。

trusted_domains配列の値を照会すると、現在の設定を表示できます。

  1. sudo -i nextcloud.occ config:system:get trusted_domains
Output
localhost

現在、localhostのみが配列の最初の値として存在します。 次のように入力して、サーバーのドメイン名またはIPアドレスのエントリを追加できます。

  1. sudo -i nextcloud.occ config:system:set trusted_domains 1 --value=example.com
Output
System config value trusted_domains => 1 set to string example.com

信頼できるドメインを再度クエリすると、次の2つのエントリがあることがわかります。

  1. sudo -i nextcloud.occ config:system:get trusted_domains
Output
localhost example.com

Nextcloudインスタンスにアクセスする別の方法を追加する必要がある場合は、config:system:setコマンドを増分インデックス番号(最初のコマンドの「1」)で再実行し、[X229X ]