Webmail(Rainloop)をインストールしてメールの送受信をテストする

それでは、RAINLOOPを入れていきま〜す。

こんな感じのオシャレなWEBMAILクライアントです。

https://www.rainloop.net/

オープンソースでも、roundcubeとかありますが、ちょいダサいので;

これからプログラムを入れることになるので、この辺で、一旦サーバー環境をアップデート。

apt-get -y update && apt-get -y upgrade

apt-getに-yオプションがつくと、インストールの途中で、続けていいのね?と質問があったら全部yesでヨロシクやっちゃって!ということです。気になる方は、-yはつけずに、確認しながら進めましょう。

終わったら、一応サーバーを再起動。

それでは、やっていきます!
ターミナルで下記を打ち込んで、必要なphpのモジュール等を追加しておいてください。

sudo apt-get install python-software-properties
apt install software-properties-common
sudo apt install php7.0-curl php7.0-xml
sudo apt-get install unzip
php -m | egrep 'odbc|mcrypt|mysqli|iconv|imap|openssl|pdo|SPL'

RAINLOOPの動作に必要なphp関係のモジュールも確認したところ、imap,mcrypt,odbcが足りてなかったので追加します。

apt-get -y install php-imap
apt-get -y install php-mcrypt
apt-get -y install php-odbc

さて、では、ついにRAINLOOPのインストールと設定をやっていきます。
ターミナルからやっていくほうが楽だったりもするんですが、今回は、せっかくなのでAjentiの画面からインストールしてみましょう。

NGINXは、基本の仕様として、静的コンテンツのみに対応していますので、WEBサイトでphpを利用できるようにするためには、先にインストールしておいたfastCGIのモジュールをphp-7.0 FPM経由で動作するように、そのサイトのconfigファイルに組み込んでやる必要があります。(※今回はインストール時からphp7.0で進めています)

環境を準備してRAINLOOPをインストールします。

  1. 最初に、サーバーのメールの送受信をSSL対応にしておきます。
    Ajentiの管理パネルで「メール」メニューを開きます。「高度な設定」タブを開き、「TLS」の有効にチェックを入れ、「新しい証明書の生成」ボタンをクリック。すると、その上の証明書とプライベートキーのフォームに、exim4の.crtと.keyがそれぞれセットされます。一番下の「APPLY CHANGES」ボタンをクリックして、変更を保存しておきましょう。
  2. メールアドレスを1つも作成していない場合は、1つ作成しておきます。「一般設定」タブから作成します。(ここまでで、先にwebadmin@example.comのメールアドレスを作成していたと思いますので、そのアドレスで、後ほどメールテストを行います。)
  3. 「WEBサイト」メニューから、webmail.example.comの管理画面を開きます。
  4. 「content」タブで、”PHP 7.0 fastCGI”を選んで「+作成」ボタンをクリック。下の「APPLY CHANGES」ボタンをクリックして適用します。


  5. PHPが動作できるようになったかを確認します。
    「ファイルマネージャー」メニューから、/var/www/webmail.example.com/html/へ移動し、「新しいファイル」を作成します。”new file”という名前のテキストファイルができますので、それをクリックして開き、下記の内容に変更していきます。

    • 名前: phpinfo.php
    • アクセス:644(所有者のみReadとWriteにチェック、グループとその他は、Readのみチェック)
    • 所有者:www-data(rootあるいはログインしたユーザー名になっていると思いますので、WEBサイトの実行ユーザーであるwww-dataに変更します)


    • 真ん中あたりの「編集」ボタンをクリックして、メモ帳でファイルを開き、下記の内容を打ち込み、保存します。
      <?php
      phpinfo();
      ?>


    • ブラウザで、https://webmail.example.com/phpinfo.phpへアクセスし、phpinfoの画面が表示されていればOKです。


  6. 次に「WEBサイト」メニューに戻り、管理画面の「一般設定」タブの、「AUTOMATIC DOWNLOADER」の項目に、下記を入力し、「 DOWNLOAD AND UNPACK」ボタンをクリックします。
    ファイルがダダーッとwebmailのルートディレクトリにダウンロード&展開されます。

    https://www.rainloop.net/repository/webmail/rainloop-community-latest.zip

    完了したら、念のため、その上の「 FIX FILE PERMISSIONS」ボタンをクリックして、ファイルとディレクトリのパーミションを修正しておきましょう。

  7. お約束の確認です。(笑)
    「ファイルマネージャー」メニューから、再び、/var/www/webmail.example.com/html/の中を覗くと、こんな感じになってますかね。

  8. 問題なければ、ブラウザで、
    https://webmail.example.com/?admin
    へアクセスしてみましょう。
    RAINLOOPでは、URLの後ろに/?adminと打ち込んでアクセスすると、管理者メニューのログイン画面が表示されます。/?adminなしの場合は、ユーザーのWEBMAILのクライアント画面へのログインウインドウが表示されます。
  9. 初期のログインアカウントは、下記です。ログインできたら、インストールは一旦完了です。
    アカウント:admin
    パスワード:12345

RAINLOOPでEメールの送受信ができるように管理者として初期設定をする

  1. 管理者ログインします。まずは、セキュリティのために、パスワードを変更し、言語を日本語にします。
    「Security」メニューからパスワードを変更。


    「General」メニューから言語を変更。



    日本語になりました!


  2. 「ドメイン」メニューを開きます。
    「+ドメインを作成」ボタンをクリック。


  3. メールサーバーの設定を入力していきます。
    こんな感じで、(example.comは、自分のドメイン名に置き換えてくださいよ!)設定ができたら、左下の「接続テスト」ボタンをクリックします。ちゃんと設定ができたら、IMAPとSMTPのタイトルがグリーンに変わります。
    何かがおかしい場合は、赤に変わりエラーメッセージが出てきます。ここまでで必要なものは用意できているはずですので、赤くなったら場合は、順に設定を見直していってください。
    SSL環境のみがおかしい場合は、この画面のセキュリティの項目を”なし”にすると、タイトルが緑になります。まずは、そこから確認して問題の切り分けを行いましょう。(これで緑になる場合は、9割がた、SSLの設定かファイアウォールのポートが開いてないかの問題です)これでも赤い場合は色々問題の可能性がありますが・・・)


  4. 設定ができたら、右下の「更新」ボタンをクリックして設定を保存しましょう。
  5. 色々オプションの設定はあるのですが、とりあえずこれでメールを安全なTSLで暗号化して送受信する準備ができました。
  6. 実際にWEBMAIL経由で送受信テストをしてみます。
    ブラウザで、
    https://webmail.example.com/
    へアクセスし、先ほど作成したEメールアドレスとメールのパスワードでログインします。メールのクライアントが開きますので、新規メールを作成し、どこか自分が受信できるメールアドレス宛にテストメールを送ってみましょう。
    送られたメールを相手のメールアドレスで受信したら、今度は返信で、WEBMAIL画面で、メールの受信もできるかどうか確認します。
    送信も受信もできたらメールの設定は全て完了です。
    オススメは、Gmailとのやりとりです。というのは、Gmailはスパムフィルターやメールの送受信の規制が厳しいので、Gmailにきちんとメールが届いているようなら、CONOHAのDNSで一番最初に設定したSPFレコードなどもきちんと通用していると考えられるからです。

お疲れ様でした。ここまでで、一通りのサーバー設定は完了しました!

次は、やや応用的な追加編として、MySQLのデータベースをphpMyAdminを入れて管理できるようにしようと思います。

<やること一覧>