数ヶ月前にNextcloud Hubが発表され、そのなかで割と大々的に宣伝していたNextcloud Mail。
自分のNextcloud環境にも入れられるようになったので、入れてみました。
こんな感じで、複数のメールアカウントを一画面で見られるようになります。
自分は以下のアカウントを利用しています。
・Gmail
・Yahoo
・Outlook

Nextcloud Mailとは何か
この記事に来たということは皆さんご存知と思いますが、一応軽く触れておくと、
複数メールクライアントの一元管理を行えるメーラー
というのが私の理解です。
アプリの説明書きにあります通り、GmailやYahoo、Outlookといった有名なアカウントなら問題なく連携させることができますし、自前のメールサーバーも同じように連携させることができます。

この記事では、Nextcloud Mailのセットアップ方法を紹介します。
導入手順
まずいつもどおり管理者でアプリ一覧に移動。

Social & communicationにあります。

インストールが終わると、Mailのアイコンが追加されました。

メールクライアント連携の設定
アプリを入れただけですと、メールアカウント情報がないので、設定していきます。
Gmail
Nextcloud Mailに入力するIMAP/SMTPサーバーの情報はここにあります。
まずアプリ専用のパスワードが必要ですので、作ります。
Googleログイン時のパスワードは拒絶されます。
自分のGoogle AccountにあるSecurityにApp passwordsがあるので、クリック。

アプリ名を適当に入れてGENERATEします。

なんかそれらしいランダム文字列っぽいパスワードが作られましたので、コピーします。
たぶんこの画面でコピーしておかないと、以降はコピーできなくなりそうなので、ご注意。

DONEをクリックすると、パスワード一覧に追加され、無事生成されたことがわかります。

↑で生成されたパスワードをNextcloud Mailの設定画面に入力すれば、うまくいくと思います。
Yahoo! Japan
こちらはアプリ専用のパスワードを作らずにいけました。
このページを参考に。
Outlook
こちらもアプリ専用のパスワードが必要で、さらに二要素認証を有効にしていないとアプリ専用パスワードを作ることができません。
二要素認証の有効化
自OutlookアカウントのProfileでSecurityに移動します。

Advanced security optionsに移動します。

Two-step verificationをTurn onします。

ここからは認証アプリを使うなり他の方法なりで二要素認証を設定します。
アプリ用パスワード作成
二要素認証の設定が終わると、App passwordsという項目が出現しています。
Create a new app passwordをクリック。

あっけなくパスワードが発行されます。
例によってこのパスワードもここでコピーしておきましょう。

IMAP/SMTPサーバーの設定はここにあります。
設定後
アカウントが追加されましたが、最初はサーバーから情報を取りに行ったり、DBに入れたり、とで忙しいためか、なかなか表示されません。

30分くらい経過して、やっと表示されました。

設定直後は、一部自Nextcloudサーバーに置いてある画像が表示されていませんでした。

本来はこのようにNextcloudのロゴが表示されています。

調べた結果、自宅LANで動かしているdnsmasqがSOAレコードをサポートしていないためでした。
Nextcloudのなかでは以下でSOAレコードを参照しています。
– lib/private/Http/Client/DnsPinMiddleware.php

/etc/dnsmasq.confに以下を追加して対応できました。
各フィールドの値はご自身で設定してみてください。
auth-server=yasufumi-yokoyama.gq,eth0 auth-zone=yasufumi-yokoyama.gq,192.168.1.0/24 auth-soa=202008168030,www.yasufumi-yokoyama.gq,1200,120,604800
ちなみにSOAレコードの問合せは以下でやれました。
dig yasufumi-yokoyama.gq SOA
また、↓のコードでも例外を投げているようでした。
– /lib/private/Http/Client/DnsPinMiddleware.php

これはこちらに解決方法がありました。
指定のとおり、config.phpにてallow_local_remote_serversをtrueに設定して解決です。

ここまで対応してだいたいうまく動くようになりました。
メールを選択してから本文が表示されるまで数秒かかるのが気になりますが、まあ良しとします。
終わりに
いかがでしたか。
複数のメールアカウントを使っている方にはいいソリューションになる、かも?
Comments