Dropboxなどのサービスを使用すると、複数のデバイスでファイルに簡単にアクセスできます。ただし、それらをより細かく制御したい場合があります。 30分以内に、独自のクラウド同期サービスを、制御するサーバー上で稼働させることができます。 Nextcloud 。
Nextcloudとは何ですか?
Nextcloudは、Dropbox、Onedrive、またはGoogleドライブの場合と同じように、PCと他のデバイス間でファイルを同期できるようにするオープンソースソフトウェアです。さらに、Nextcloudには活気に満ちたアプリエコシステムがあり、ファイルを同期するだけではありません。 Nextcloudをカレンダーと連絡先の管理に使用したり、WebベースのIMAP電子メールクライアントを実行したりできます。あなたとあなたのサーバーにアクセスできる他の人のためだけにライブチャットプログラムを設定することもできます。
ただし、詳細に入る前に、警告があります。 Nextcloudの使用を開始したら、サーバーを保守するのはあなた次第です。つまり、Nextcloudソフトウェアの管理に加えて、基盤となるサーバーのオペレーティングシステムがパッチで最新の状態に保たれていることを確認する必要があります。 Nextcloudサーバーは一般的に問題がありませんが、何か問題が発生した場合は、それを修正するのはあなた次第です。
良いニュースは、ブログが山ほどあることです。 フォーラム 、および ヘルプページ トラブルシューティングを支援します。問題が発生した場合、それは他の誰かに起こった可能性が高く、そこに解決策があります。
必要なもの
Nextcloudを使い始めるには、次の3つのアイテムが必要です。
- Ubuntu18.04を実行している仮想サーバー
- コンピューターのデスクトップ上のBashシェル。
- ドメイン名。
この例では、次のようないくつかのユーザー名とパスワードを作成します。
- サーバーのルートユーザー名とパスワード。
- 管理者権限を持つ通常のサーバーのユーザー名とパスワード。
- Nextcloudのユーザー名とパスワード。
このチュートリアルでは、DigitalOceanのUbuntu18.04を実行している仮想サーバーを使用しています。ただし、次のような任意のプロバイダーを使用できます。 Linode または AWS 。どちらのサービスを選択する場合でも、潜在的な問題を回避するために重要なのは、Ubuntu 18.04(この記事の執筆時点での現在の長期サポートリリース)を実行することです。
すべての仮想サーバープロバイダーは少し異なりますが、それらはすべて、マウスを数回クリックするだけでサーバーを起動して実行することを目的としています。まず、Nextcloudに慣れるまで、基本レベルのサーバーを試用することをお勧めします。 Digital Ocean’s 5ドルのドロップレットは、1 GBのRAM、1つのCPUコア、1 TBのデータ転送、および25GBのストレージを提供します。 Linodeは同じ価格で同様のVPSを提供しています。
SSHキーに慣れていない場合は、開始するためにパスワードベースのルートログインの詳細をプロバイダーに問い合わせてください。サーバーが稼働し、コマンドラインに慣れたら、より安全なログインのためにSSHキーを追加する方法についてプロバイダーのヘルプページを確認できます。
コンピューターがWindows10を実行している場合は、インストールする必要があります
Linux用のWindowsサブシステムとLinuxユーティリティを備えたBashシェルを入手する
続ける。 LinuxまたはmacOSを使用している場合、必要なのはターミナルプログラムだけです。ほとんどのBash端末にはSSHがインストールされていますが、そうでない場合は、「
sudo apt-get install ssh
ターミナルウィンドウでインストールします。
あなたが ドメイン名を購入する 、.COMアドレスである必要はありません。あなたとあなたの親しい友人や家族だけがそれを使うでしょう。たとえば、.XYZドメイン名は年間わずか1ドルで、問題なく機能することがわかりました。
サーバーの準備
サーバーを実行できるようにするには、管理者権限を持つ通常のユーザーアカウントを設定する必要があります。初期設定後に強力なrootユーザーとしてログインするのはひどい、ひどい考えです。
これで、サーバープロバイダーからのIPアドレスとrootパスワードを入手できるはずです。 IPアドレスはサーバーへの接続方法であり、パスワードを使用するとアクセスできます。
開始するには、次のように入力し(XをサーバーのIPアドレスに置き換えます)、Enterキーを押します。
IPアドレスは165.22.81.172なので、コマンドに入力しました。すべてが計画どおりに進んだ場合、リモートサーバー(Nextcloudを配置する場所)がパスワードを要求します。サーバープロバイダーから提供されたパスワードを入力します。
次に、rootの新しいパスワードを設定するように求められます。好きなものを選んでください。置き忘れたり忘れたりしないでください。
これでリモートサーバーの内部にいるので、仕事に取り掛かる時が来ました。この記事の各コマンドの後でEnterキーを押して実行します。
まず、次のように入力して、サーバーに新しいユーザーを追加します。
adduser ian
「ian」を使用するユーザー名に置き換えます。このコマンドを実行すると、新しいユーザーにパスワードを入力するように求められます。それを行った後、サーバーが要求する残りの情報はオプションです。提供したくない場合は、Enterキーを押し続けてください。
次に、次のように入力して、新しいユーザーに管理者権限を付与します。
usermod -aG sudo ian
ここでも、「ian」を前に選択したユーザー名に置き換えます。
次に、2番目のターミナルウィンドウを開き、次のように入力して、新しいユーザーアカウントが機能することを確認します。
繰り返しますが、上記をユーザー名とサーバーのIPアドレスに置き換えます。プロンプトが表示されたら、このユーザーアカウント用に作成したパスワードを入力します。動作する場合は、rootとしてログインしているターミナルウィンドウに戻ります。
ここで、次のように入力して、 Ubuntuファイアウォール 正常に動作しています:
ufwはOpenSSHを許可します
ufw enable
ufwステータス
最後のstatusコマンドは、ファイアウォールがSSHをブロックしないことを確認して、次の画像のようなものを返すはずです。
「80,443 / tcp」の部分はまだ表示されませんが、後で説明します。それでは、ルートウィンドウを閉じて、通常のユーザーと一緒に2番目のターミナルウィンドウに戻りましょう。
Nextcloudのインストール
Nextcloudソフトウェア、PHP、Webサーバーソフトウェア、データベースをすべて個別に構成してインストールする必要があった時期がありました。
1つのコマンドですべてを処理する公式のSnapパッケージを使用する方がはるかに簡単です。データベースをいじったり、ApacheまたはNginxがサイトにサービスを提供しているかどうかを心配する必要はありません。
Snapパッケージが何をインストールするかを正確に確認したい場合(ネタバレ:残りの部分 LAMPスタック 、およびRedis)、チェックしてください GitHubのNextcloudスナップリポジトリ 。
次のように入力します。
sudo snap install nextcloud
最初の「sudo」は通常のユーザーアカウントを昇格させるため、一時的な管理者権限があります。これを実行するには、パスワードの入力を求められます。すべてがうまくいけば、1、2分でNextcloudがインストールされ、(ほぼ)アクションの準備が整います。
次に、次のように入力して、サイトにログインできる新しいNextcloudユーザーアカウントを作成します。
sudo nextcloud.manual-ianpaulcorrectHorseBatteryStapleをインストールします
「ianpaul」の代わりに、Nextcloudへのログインに使用するユーザー名を入力します。 「correctHorseBatteryStaple」ビットは私たちのパスワードです。使用しないでください—非常に有名なものです XKCDコミック ほんの一例です。
ドメインの取り扱い
作業を楽にするために、サーバーへのアクセスに常にIPアドレスを使用することは望ましくありません。代わりに、ドメイン名を使用します。これも、年間わずか1ドルで取得できます。この例では、HowToGeekTest.xyzを使用しています。
ドメインを取得したら、ドメイン登録事業者(ドメインを購入した場所)からDNS設定を管理し、サーバープロバイダーにポイントする必要があります。たとえば、DigitalOceanを選択した場合、それらの設定はns1.digitalocean.com、ns2.digitalocean.com、およびns3.digitalocean.comになります。
次に、サーバープロバイダー(たとえば、DigitalOcean、Linode、または選択したもの)に移動し、新しいドメインをアカウントに追加します。 IPアドレスを指すAレコード、常に「www」を使用したくない場合はCNAMEレコード、自動的に追加されなかった場合はNSレコードを追加する必要があります。
以下の画像は、DigitalOceanの例を示しています。
技術的には、ドメインが利用可能になるまでに最大24時間かかる場合がありますが、通常は数分以内に機能を開始します。
Nextcloudに戻る
ドメインを設定したら、ターミナルでNextcloudの仕上げに戻ることができます。通常のユーザーアカウント(この例では[email protected])でサーバーからログアウトした場合は、再度ログインします。
ここで、次のように入力して、新しいドメインをNextcloudに追加します。
sudo nextcloud.occ config:system:set trusted_domains 1 --value = howtogeektest.xyz
「–value =」の後に、 きみの 私たちのドメインではなくドメイン(howtogeektest.xyz)。
次に、次のように入力して、新しいドメインが正しく追加されたことを確認します。
sudo nextcloud.occ config:system:get trusted_domains
ターミナルは下の画像のようなものを印刷するはずです。
次に、次のように入力して、ファイアウォールを通過させて必要なポートを使用できることを確認します。
sudo ufw allow 80,443 / tcp
ポート80は暗号化されていないHTTPトラフィックによって使用され、443はSSL / TLS用です。
そういえば、Let’sEncryptからの無料のSSL / TLS証明書が必要になるので、次のように入力します。
sudo nextcloud.enable-httpslets-encrypt
Let’s Encryptジェネレーターが実行を開始すると、メールアドレスとNextcloudドメイン名を要求されます。指示に従うだけで、すぐに安全なWebサイト証明書を取得できます。 Let’s Encryptがうまくいったら、セットアップをテストします。
新しいドメインに移動します(howtogeektest.xyzなど)。アドレスバーに鍵のアイコンが付いたNextcloudログインページ(以下を参照)が表示されます。
ログインページが表示されたら、準備は完了です。そうでない場合は、数時間待ってから再試行してください。すぐにトラブルシューティングを行う場合は、サーバーがIPアドレスを介して応答するかどうかを確認できます。
これを機能させるには、次のように入力して、信頼できるドメインにIPアドレスを追加する必要があります。
sudo nextcloud.occ config:system:set trusted_domains 2 --value = 165.22.81.172
「trusted_domains1」ではなく「trusted_domains2」を使用したことに注意してください。 「trusted_domains1」を繰り返すだけでは、信頼できるドメインのリストにある実際のドメイン名が上書きされ、使用できなくなります。
それが完了したら、ブラウザのアドレスバーにIPアドレスを入力すると、上のログインページが表示されます。そうでない場合は、インストールに問題があります。
IPアドレスのSSL証明書がないため、安全にログインできません。そのため、サーバーが機能していることを確認した後、信頼済みドメインリストからIPを削除することをお勧めします。これを行うには、次のように入力します。
sudo nextcloud.occ config:system:delete Trusted_domains 2
パフォーマンスの向上
Nextcloudサーバーのパフォーマンスが低い場合は、メモリ制限を増やす必要があるかもしれません。デフォルトでは、128MBです。これを512MBに増やすには、ターミナルを使用してサーバーにログインし、次のように入力します。
sudo snap set nextcloud php.memory-limit = 512M
。
Nextcloudが稼働しているので、ログインして利用可能なアプリを閲覧し、他の人とファイルを共有し、デスクトップとモバイルデバイスにNextcloudをインストールしてマルチデバイス同期を行うことができます。 Nextcloud デスクトップ同期ツールとモバイルアプリを提供します Windows、Mac、Linux、iPhone、iPad、およびAndroid用。
あなた自身の個人的なドロップボックスへようこそ!