_著者はhttps://www.brightfunds.org/organizations/mozilla-foundation[Mozilla Foundation]を選択して、https://do.co/w4do-cta [Write for DOnations]プログラムの一環として寄付を受け取りました。

前書き

YunoHostは、ウェブメールクライアント、パスワードマネージャー、WordPressサイトなどの自己ホスト型ウェブアプリケーションのシームレスなインストールと設定を容易にするオープンソースプラットフォームです。 セルフホスティングWebメールおよびその他のアプリケーションは、プライバシーを提供し、個人情報を制御します。 YunoHostでは、設定を構成し、ユーザーを作成し、グラフィカルユーザーインターフェイスから独自のアプリケーションをセルフホストできます。 YunoHostを介してアプリケーションのマーケットプレイスを利用して、ホスティング環境に追加できます。 フロントエンドUIは、すべてのアプリケーションのホームページとして機能します。

このチュートリアルでは、Debian 9を実行しているサーバーにYunoHostをインストールして構成します。 これを実現するには、DigitalOceanを使用してDNSレコードを構成し、Let’s EncryptでYunoHostインスタンスを保護し、選択したWebアプリケーションをインストールします。

前提条件

ステップ1-YunoHostのインストール

この手順では、公式のインストールスクリプトを使用してYunoHostをインストールします。 YunoHostは、YunoHost操作に必要なすべてのインストールと構成をガイドするこのオープンソーススクリプトを提供します。

インストールスクリプトをダウンロードする前に、一時ディレクトリに移動します。 `+ / tmp +`ディレクトリを使用すると、再起動時にスクリプトが削除されますが、YunoHostをインストールした後は必要ありません。

cd /tmp

次に、次のコマンドを実行して、YunoHostから公式インストールスクリプトをダウンロードします。

wget -O yunohost https://install.yunohost.org/

このコマンドはスクリプトをダウンロードし、それを現在のディレクトリに `+ yunohost +`というファイルとして保存します。

これで、* sudo *を使用してスクリプトを実行できます。

sudo /bin/bash yunohost

構成ファイルを上書きするように求められたら、[はい]を選択します。

YunoHostのインストールを確認する[インストール後]画面が表示されます。

image:https://assets.digitalocean.com/articles/yunohost_deb9/step1.png [インストール後の画面:パッケージ化されたYunoHostが正常にインストールされました! インストール後のプロセスを開始するよう求められます。]

[はい]を選択して、インストール後のプロセスに進みます。

*メインドメイン*の入力を求められたら、YunoHostインスタンスへのアクセスに使用するドメイン名を入力します。 次に、管理者アカウントの安全なパスワードを選択して入力します。

これで、サーバーにYunoHostがインストールされました。 次の手順では、新しいYunoHostインスタンスにログインして、ドメインを構成および管理します。

ステップ2-DNSの構成

YunoHostをインストールしたら、管理パネルに初めてアクセスできます。 DNSレコードを設定して、YunoHostをホストするドメインを設定します。

開始するには、サーバーのIPアドレスまたは最後の手順で選択したドメイン名をWebブラウザーに入力します。 接続がプライベートではないことを警告する画面が表示されます。

image:https://assets.digitalocean.com/articles/yunohost_deb9/step2a.png [この接続はプライベートではありません]

YunoHostはデフォルトで自己署名証明書を使用するため、接続はまだ安全ではありません。 次のステップでLet’s Encryptを使用してサイトを保護するので、とにかくサイトにアクセスできます。

次に、前の手順で設定した管理者パスワードを入力して、YunoHostの管理パネルにアクセスします。

image:https://assets.digitalocean.com/articles/yunohost_deb9/step2b.png [管理パネル]

YunoHostが適切に機能するために、ドメイン名のDNS設定を構成します。 管理パネルから、*ドメイン*セクションに移動して、ドメイン名を選択します。 DNS構成設定にアクセスできる[操作]ページが表示されます。

image:https://assets.digitalocean.com/articles/yunohost_deb9/step2c.png [ドメインセクション]

[* DNS configuration *]ボタンを選択します。 YunoHostは、ドメインのサンプルゾーンファイルを表示します。 このファイルを使用して、ドメインのレコードを構成します。

画像:https://assets.digitalocean.com/articles/yunohost_deb9/step2d.png [サンプルゾーンファイル]

DNSレコードの構成を開始するには、ドメインホストにアクセスします。 このチュートリアルでは、DigitalOceanのコントロールパネルを介してDNSレコードを構成する方法を説明します。

DigitalOceanアカウントにログインして、メニューの[ネットワーキング]をクリックします。 * Domain フィールドにYunoHostドメインを入力し、 Add Domain *をクリックします。

ドメイン名の編集ページに移動します。 このページには、YunoHostレコードを追加できるフィールドが表示されます。

image:https://assets.digitalocean.com/articles/yunohost_deb9/step2n.png [DigitalOcean DNSレコード作成ページ]

DigitalOceanサーバーがドメインにDNSサービスを提供していることを指定する3つの* NS *レコードが既に設定されています。 YunoHostが提供するサンプルファイルを使用して、次のレコードを追加できるようになりました。

  • 2つの新しい* A *レコードを作成します。

  • * name に「+ @ +」を入力し、 Will Direct To *ボックスでドロップレットまたはIPアドレスを選択し、TTLを3600のままにします。

  • * name に「+ * +」を入力し、 Will Direct To *ボックスでドロップレットまたはIPアドレスを選択し、TTLを3600のままにします。

  • 2つの新しい* SRV *レコードを作成します。

  • ホスト名*に + _xmpp-client._tcp +、*ポート*に + 5222 + 優先度*、*重量*に ` 5 +`を入力し、TTLを変更します3600まで。

  • ホスト名*に + _xmpp-server._tcp +、*ポート*に + 5269 + 優先度*、*重量*に ` 5 +`を入力し、TTLを変更します3600まで。

  • 3つの新しい* CNAME *レコードを作成します。

  • *ホスト名*に「+ muc 」と入力し、「*はエイリアス*」に「 @ +」と入力し、TTLを3600に設定します。

  • *ホスト名*に「+ pubsub 」、「*はエイリアス*」に「 @ +」を入力し、TTLを3600に設定します。

  • *ホスト名*に「+ vjud 」と入力し、「*はエイリアス*」に「 @ +」と入力し、TTLを3600に設定します。

メール構成については、次のレコードを作成します。

  • ホスト名*に + @ +、*優先度*に+10+を加えたメールサーバー*のドメイン名、およびTTLが3600の MX *レコード。

  • 3つの新しい* TXT *レコード:

  • サンプルゾーンファイルから、二重引用符を含むTXT文字列を、「」v = spf1 “`で始まる* value ボックスにコピーし、 hostname *に `+ @ +`を追加して、 3600のTTL。

  • 二重引用符を含む長いTXT文字列をサンプルゾーンファイルから* value ボックスにコピーし、 `+ mail._domainkey +`を hostname *に追加し、TTLを3600のままにします。

  • 二重引用符を含むTXT文字列をサンプルゾーンファイルから* value ボックスにコピーします。例: " v = DMARC1; p = none " hostname *に `+ _dmarc +`を追加します。 TTLを3600のままにします。

最後に、Let’s Encryptで次のレコードを構成します。

  • 新しい* CAA *レコードを作成します。

  • * hostname *に `+ @ `を入力し、letsencrypt.orgを* authority grant for *ボックスに追加し、* tag *を ` issue `に、* flags *を ` 128 +`に設定し、TTLを3600。

すべてのDNSレコードを追加すると、ドメインのコントロールパネルにリストが表示されます。 DigitalOceanコントロールパネルを使用したレコードの管理の詳細については、このhttps://www.digitalocean.com/docs/networking/dns/how-to/manage-records/ [ガイド]を読むこともできます。

image:https://assets.digitalocean.com/articles/yunohost_deb9/step2e_rev.png [セットアップされたレコードのリスト]

YunoHostサービスが機能するために必要なすべてのDNSレコードを構成しました。 次のステップでは、Let’s Encryptをインストールして接続を保護します。

ステップ3-Let’s Encryptのインストール

この手順では、Let’s Encryptを使用してSSL証明書を設定し、ユーザーまたはユーザーがサイトにログインするたびに、暗号化されたHTTPSによって接続が保護されるようにします。 YunoHostには、ユーザーインターフェースを介してLet’s Encryptをドメインにインストールする機能が含まれています。

管理パネルの[ドメイン]セクションで、ドメイン名をもう一度選択します。 * Operations セクションに移動します。 ここから、 SSL証明書の管理*の下で、* SSL証明書*を選択します。 * Let’s Encrypt証明書をインストールする*オプションが表示されます。これを選択して、証明書をインストールできます。

これで、ドメインにLet’s Encrypt証明書がインストールされました。 ドメインまたはIPアドレスにアクセスしても、警告メッセージは表示されなくなります。 Let’s Encrypt証明書はデフォルトで自動的に更新されます。 Let’s Encrypt証明書を手動で更新するか、将来的に自己署名証明書に戻すには、この*操作*ページを使用できます。

image:https://assets.digitalocean.com/articles/yunohost_deb9/step3.png [SSL証明書の管理]

ドメインを構成して保護しました。 次のセクションでは、YunoHostオペレーションへのアプリケーションのインストールを開始するために、新しいユーザーとメールアカウントを設定します。

ステップ4-アプリケーションのインストール

YunoHostは、事前にパッケージ化された多数のWebアプリケーションを互いにインストールする機能を提供します。 アプリケーションのインストールと使用を開始するには、管理者以外の通常のユーザーアカウントとメールアカウントを作成する必要があります。 これは、管理パネルから実行できます。

管理パネルのルートから、*ユーザー*セクションに移動します。

画面の右側にある緑色の[新しいユーザー]ボタンを選択します。 提供されたフィールドに新しいユーザーに必要な資格情報を入力します。

image:https://assets.digitalocean.com/articles/yunohost_deb9/step4.png [ユーザー名、メールアドレスなどのフィールドがある新しいユーザーページ]

ユーザーの作成が完了しました。 既定では、このユーザーには既に関連付けられた電子メールアドレスがあり、IMAP電子メールクライアントからアクセスできます。 または、YunoHostにWebメールクライアントをインストールしてこれを達成することもできます。これは、このチュートリアルの一部として行います。

YunoHostのすべての基本機能を設定し、メールアカウントを備えたユーザーを作成しました。 これで、インストールの準備ができた管理パネルからアプリケーションにアクセスできます。 このチュートリアルでは、軽量のウェブメールアプリであるRainloopをインストールしますが、これらの手順に従って利用可能なアプリケーションをインストールできます。

管理パネルの*アプリケーション*セクションに移動します。 ここから、任意の公式アプリケーションを選択してインストールできます。

image:https://assets.digitalocean.com/articles/yunohost_deb9/step5a.png [アプリケーションページ。 インストールの準備ができているアルファベット順のアプリケーションのリスト。]

リストから* Rainloop *を選択します。 アプリケーションのいくつかの構成オプションが表示されます。

image:https://assets.digitalocean.com/articles/yunohost_deb9/step5b.png [Rainloop Configuration Options]

  • * Rainloopのラベル*:ここで何を入力するかを選択できます。アプリケーションはこれをYunoHostのホーム画面でユーザーに表示します。

  • * Rainloopのドメインを選択*:アプリケーションをホストするドメイン名を入力します。

  • * Rainloopのパスを選択*: `+ / rainloop `のように、アプリケーションのURLパスを設定します。 ドメインのルートに配置する場合は、「 / +」と入力します。 その場合、そのドメインで他のアプリケーションを使用することはできません。

  • 公開アプリケーションですか?:アプリケーションが公開されているか、ログインしているユーザーのみがアクセスできるようにするかを選択します。

  • 「admin」ユーザーの強力なパスワードを入力します:アプリケーションの管理ユーザーのパスワードを入力します。

  • * YunoHostユーザーを受信者の提案に追加しますか?*:ここで「はい」を選択すると、アプリケーションは、電子メールの作成時に他のユーザーの電子メールアドレスと名前を受信者として提案します。

  • デフォルト言語の選択:優先言語を選択します。

完了したら、緑色の[インストール]ボタンをクリックします。

Rainloopをインストールしました。 新しいブラウザタブを開き、アプリケーションに選択したパス(/ rainloop)に移動します。 Rainloopのメインダッシュボードが表示されます。

image:https://assets.digitalocean.com/articles/yunohost_deb9/step5new.png [Rainloopメイン画面。]

ステップ4を繰り返して、さらにユーザーを作成し、必要に応じてさらにアプリケーションをインストールできます。

管理パネルの*アプリケーション*セクションでは、GitHubリポジトリからプルすることにより、サードパーティからカスタムアプリケーションをインストールすることもできます。

これで、サーバーに安全なYunoHostインスタンスが構成されました。

結論

このチュートリアルでは、サーバーにYunoHostをインストールし、電子メールアカウントを作成し、アプリケーションをインストールしました。 電子メールをチェックするウェブメールクライアントを含む、すべてのアプリケーションを相互にホストする中心的な場所があります。 公式および非公式の両方のアプリケーションの完全なリストについては、https://yunohost.org//apps [YunoHost website]を参照してください。 YunoHostのサービス、構成、およびアップグレードに関する情報を提供する公式のhttps://yunohost.org//troubleshooting_guide [トラブルシューティングガイド]も参照してください。