「メールサーバー」というフレーズは、ほぼMicrosoft Exchangeと同義です。Microsoft Exchangeを選ぶ必要はありません。代わりに、hmailserverという無料のメールサーバーを設定することができます。
そして、それを試してみたいと思っているなら、運が良いです!なぜなら、この記事では、hMailServerの基本的な要件とインストール方法、およびメールボックスとSMTPサーバーとしての設定方法について学ぶことができます。
この記事の最後までに、ドメインの追加、ユーザーの追加、SSL証明書の使用、外部メールの配信にSMTPスマートホストを使用するなど、基本的な設定タスクの実行方法を学ぶことができます。
環境の準備
この記事では、単一のサーバー上にhMailServerをインストールおよび設定する手順を説明します。例に従って進む予定の場合、いくつかの要件を準備する必要があります。
- A Windows Server 2016 computer.
- このリンクから最新版のhMailServerをダウンロードしてください。
- メールアカウントにアクセスするために使用されるメールクライアント。この記事では、Mozilla Thunderbirdが使用されます。
- (オプション) Active Directory。これは、Active Directoryユーザーを基にしてhMailServerのメールユーザーを作成する場合にのみ必要です。それ以外の場合は、Active Directoryなしでもメールユーザーを作成することができます。
- (オプション)メールクライアント接続を暗号化するための有効なSSL証明書。無料でSSL証明書を取得できます。Let’s Encryptから入手できます。証明書はPEM形式である必要があります。これがなくても、hMailServerは暗号化なしで動作します。
データベースの要件
hMail Serverは、組み込みデータベース(Microsoft SQL Server Compact Edition(CE))を使用してインストールできます。これは、テスト、小規模展開、または個人用インストールに適しています。
ただし、hMailServerを商用または本番環境で使用する場合は、外部データベースが必要です。外部データベースを使用する場合、hMailServerでサポートされている次のデータベースエンジンを使用することができます。
- Microsoft SQL Server 2000以降
- MySQL
- PostgreSQL
この記事では、組み込みデータベースのみを使用します。
ネットワークおよびポートの要件
ネットワークには、以下のポートを許可する必要があります。使用予定によっては(IMAPのみでPOP3を使用しない場合など)、使用されないいくつかのポートを残すこともできます。
- 25(SMTP)
- 465(SMTP SSL/TLS)
- 587(SMTP Submission)
- 110(POP3)
- 995(POP3 SSL/TLS)
- 143(IMAP)
- 993(IMAP SSL/TLS)
DNSレコードの要件
メールシステムは、正しく機能するためにはDNSに大きく依存しています。したがって、内部および外部の解決のために適切なDNSレコードが必要です。
簡単にするため、この記事では次のようになります:
- 内部DNSには1つのDNS(A)レコードのみが使用されます – それはhMail ServerがインストールされるサーバーのFQDNです。この記事では、サーバーアドレスはhmail1.lzex.cfです。

(オプション)外部DNSには2つのDNSレコードが使用されます。

- hMailServerの外部アドレスを指すメール配信用のMXレコード。

- A CNAME record that will be used for client connection (IMAP, POP3, SMTP), also pointed to the external address of the hMailServer.
システム要件の完全なリストについては、hMailServerのシステム要件ページをご覧ください。
hMailServerのインストール
hMailServerのインストールは非常に簡単なプロセスです。ウィザードベースのインストールタイプであり、ボタンをクリックするだけです。
- ダウンロードしたインストールファイルを見つけ、それを起動します。次に、ウェルカムページで次へをクリックします。
- ライセンス契約ページでは、利用規約に同意する必要があります。次へをクリックしてください。
- 次に、カスタムパスを選択するか、hMailServerがインストールされるデフォルトパスをそのままにするかを選択します。次に、次へをクリックします。
- 2つのオプションが表示されます。完全なインストールまたはカスタム。サーバーと管理ツールの両方をインストールするには、完全なインストールを選択してください。次に、次へをクリックします。
- 次に、データベースサーバータイプを選択します。この記事では、組み込みのデータベースエンジンが使用されます。次に、次へをクリックします。
- 次へをクリックして、開始メニューフォルダの選択ページをデフォルト値のままにしておきます。
- 次に、インストール中のhMailServerインスタンスにパスワードを指定する必要があります。このパスワードを覚えておいてください。
- 選択したインストールオプションの概要が表示されます。インストールプロセスを開始するために、インストールボタンをクリックしてください。
- インストールが完了するまでお待ちください。その後、完了をクリックしてください。
- 接続ウィンドウで、hMailServerのインスタンスを選択し、接続をクリックしてください。パスワードを求められた場合は、入力してからOKをクリックしてください。

以上です!hMailServerのインストールが成功しました。

hMailServerへのドメインの追加
hMailServerのインストールだけでは使えるようになりません。ドメイン、ユーザー、ポート、リレー設定などを設定する必要があります。
ユーザーを追加する前に、まずメールドメインを追加する必要があります。これは、メールアドレスに使用する準備ができたメールドメインである必要があります。
hMailServer管理者(管理コンソールウィンドウ)で、ドメインをクリックして新しいドメインを追加します。ドメインのリストが空であることに注意してください。追加をクリックしてください。

次に、ドメインボックスにドメインを入力します。有効のチェックボックスがオンになっていることを確認し、保存をクリックしてください。
ドメインの他の設定オプションも利用できることに注意してください。メッセージサイズ制限やデフォルトの署名なども自由に設定できます。

保存をクリックした後、以下のように新しいドメインが作成され、ドメインリストに追加されました。

Hmailserverへのユーザーの追加
ドメインが追加されたので、そのドメインの下にメールアカウントを追加することができます。
新しいアカウントを追加するには、ドメインの下のアカウントフォルダをクリックし、右側の追加ボタンをクリックします。

詳細タブに移動し、新しいユーザーの名前と姓を指定します。

次に、一般タブに移動し、作成するアカウントのアドレスとパスワードを入力します。また、ユーザーのメールボックスの最大サイズを設定することも推奨されています。完了したら、保存をクリックします。

以下の画像から新しいメールアカウントが作成されたことがわかります。

Active Directoryとのユーザーの統合
既存のユーザーを変更するか、新しいユーザーを作成してActive Directoryと接続することができます。hMailServerのユーザーをActive Directoryと統合すると、ユーザーはドメインの資格情報を使用してhMailServerアカウントにログインすることができます。
アカウントをすでに作成しており、それをADと統合したい場合は、以下の手順に従ってください。
まず、hMailServer管理コンソールでアカウントを見つけて編集します。次に、Active Directoryタブに移動します。
次に、Active Directoryアカウントのチェックを入れます。 ドメインボックスにActive Directoryのドメインを入力し、ユーザー名ボックスにユーザー名を入力します。編集が完了したら、保存をクリックしてください。

上の画像からわかるように、hMailServerユーザーには対応するActive Directoryアカウントがあります。ユーザーはADドメインの資格情報を使用して、hMailServerのメールアカウントにアクセスできるようになります。
Active Directoryからユーザーを追加する
ユーザーを作成し、それをActive Directoryと統合する代わりに、既存のActive Directoryユーザーオブジェクトから直接hMailServerのユーザーを作成するオプションもあります。
管理コンソールから、アカウントフォルダを右クリックして、ADアカウントの追加をクリックします。

次に、ドロップダウンリストからドメインを選択します。この例では、利用可能なドメインは1つだけです。次に、ユーザーのリストから、メールアカウントを作成するユーザーを選択します。 OKをクリックします。

以下のスクリーンショットからわかるように、hMailServerにはActive Directoryユーザーアカウントvmadminを基にした新しいユーザーが作成されました。

メールクライアントの設定とメールボックスへのアクセスのテスト(暗号化されていない)
これまでに行ったhMailServerの設定は、内部および外部のメールアクセスに十分なものです。
この例では、使用されている特定のメールクライアントはMozilla Thunderbirdです。IMAP、POP3、およびSMTPの設定をサポートしている他のメールクライアントを自由に使用してください。
以下のメールクライアントの設定は、この例に特定されています。サーバーのホスト名、ポート番号、およびSSLの値に注意してください。

上のスクリーンショットからわかるように、受信および送信メールサーバーのSSL値はなしです。 完了をクリックすると、受信および送信設定が暗号化を使用していないことを警告メッセージで確認できます。以下の画像に示されています。

アカウントのセットアップを続けるには、リスクを理解していますというボックスにチェックを入れます。 完了をクリックします。
アカウントのセットアップが完了したら、次に同じアカウントにテストメールを送信し、メールが送受信できることを確認します。以下のスクリーンショットには、テストメールが配信されたことが示されています。

SSL証明書を使用したクライアント接続のセキュリティ強化
前のセクションでは、現在のhMailServerの設定ではIMAP、POP3、SMTPのクライアント接続に暗号化が含まれていないことがわかりました。セキュリティと保護のため、メールクライアントの接続に暗号化を追加する必要があります。
このセクションでは、認証および暗号化のためのSSL証明書を追加し、POP3、IMAP、SMTPに証明書を割り当てる方法を学びます。
進む前に、PEM形式の証明書ファイルとキーが利用可能である必要があります。この例では、証明書ファイルはc:\certsにあります。

SSL証明書のインポート
管理コンソールに戻り、設定 -> 詳細 -> SSL証明書に移動します。証明書のリストが空であることが予想されます。 追加をクリックします。

次に、証明書の識別名として使用する名前を指定してください。任意の名前を使用できますが、証明書のサブジェクト名を使用することをお勧めします。その後、証明書ファイルと秘密鍵ファイルの場所を指定してください。保存をクリックします。

新しいSSL証明書は、hMailServerの使用可能な証明書のリストに追加されます。

SSL証明書が追加されたので、プロトコルポートに割り当てることができます。
TCP/IPポートにSSL証明書を割り当てる
TCP/IPポートフォルダに移動します。すでに設定されているポートのリストが表示されます。新しいTCP/IPポートバインディングを作成するには、追加をクリックします。

以下の設定でIMAPの新しいエントリを作成します。
- プロトコル:IMAP
- TCP/IPアドレス:0.0.0.0
- TCP/IPポート:993
- 接続セキュリティ:SSL/TLS
- SSL証明書:リストから証明書を選択
新しいエントリは、以下のスクリーンショットに表示されるものに似ているはずです。

hMailServerを再起動するように促される場合がありますが、まだ再起動しないでください。なぜなら、まだPOP3およびSMTPのエントリを作成する予定だからです。
次に、POP3 TCP/IPのセキュリティポートを作成するために、上記の手順を繰り返してください。
新しいPOP3 TCP/IPポートには、以下の値を使用します。
- プロトコル:POP3
- TCP/IPアドレス:0.0.0.0
- TCP/IPポート: 995
- 接続のセキュリティ: SSL/TLS
- SSL証明書: リストから証明書を選択

最後に、以下の設定で新しいSMTPポートを作成してください。
- プロトコル: SMTP
- TCP/IPアドレス: 0.0.0.0
- TCP/IPポート: 465
- 接続のセキュリティ: SSL/TLS
- SSL証明書: リストから証明書を選択

次に、hMailServerを再起動するよう求められたら、はいをクリックしてください。

SSL証明書で保護された新しいTCP/IPポートが正常に作成されました。以下のスクリーンショットと同様のリストが表示されるはずです。

この段階では、古いTCP/IPポートのエントリを削除するかどうかはあなた次第です。
メールクライアントのセットアップとメールボックスのアクセス(暗号化)のテスト
hMailServerにSSL証明書がインストールされたので、メールクライアントに戻り、以下のスクリーンショットに表示されている設定に再構成してください。
新しいTCP/IPポートの構成によってポートとSSLの値が変更されたことに注意してください。以下では、受信(IMAP)と送信(SMTP認証)の両方を設定します。

メールアカウントの設定が完了したら、新しいIMAPおよびSMTPポートを使用してメールボックスにアクセスし、メールの送受信ができるはずです。
また、受信メールサーバーと送信メールサーバーの設定が暗号化されていないことに関する警告メッセージは表示されなくなりました。
Hmailserverで外部メール配信のためのSMTPスマートホストを設定する
デフォルトでは、hMailServerは外部ドメインへのメールの配信先を決定するためにDNS-MXルックアップを使用します。これは、ネットワーク/ファイアウォールでポート25が許可されている場合、hMailServerが外部メッセージを意図した宛先に配信しようと試みることを意味します。
このデフォルトの設定は、一部の組織には十分かもしれませんが、ほとんどの組織ではパーミタSMTPサービスを使用しています。パーミタメールサーバーはクラウドホストまたはオンプレミスに配置される場合があります。これらのパーミタメールサービスは、ほとんどの場合、メールのハイジニスサービスも提供しています。
このようなサービスを利用したい場合は、hMailServerを外部メッセージの配信先としてパーミタメールサーバーをスマートホストとして設定することができます。
hMailServerにSMTPリレーサーまたはスマートホストを設定するには、次の手順に従ってください。
hMailServer管理コンソールで、設定 —> プロトコル —> SMTPに移動します。次に、メールの配信タブに移動します。
その後、公開されているDNSレコードに掲載されているhMailServerの名前を入力します。この例では、メールサーバーの公開ホスト名はhmail1.lzex.cfです。
次に、SMTPリレーエージェントの設定をSMTPリレーエージェントの値で入力してください。この例では、hMailServerはSendGridメール配信サービスをスマートホストとして使用するように設定されます。

必要な値を入力したら、保存をクリックすることを忘れないでください。
外部メールの配信のテスト
SMTPスマートホストの設定が機能しているかをテストするために、最も簡単な方法は
SMTPスマートホストの設定が機能しているかを確認する最も簡単な方法は、
- 外部ドメイン(例:gmail.com)にメールを送信し、メッセージが配信されたことを確認することです。
- メールに返信し、返信が受信されたことを確認します。
この例では、hMailServerのユーザー[email protected]からgmail.comの受信者にメッセージが送信されます。

以下のメールのスクリーンショットからわかるように、メッセージはgmail.comの受信者によって受信され、返信はhMailServerのユーザーメールボックスに配信されました。

まとめ
おめでとうございます、最後までお疲れさまでした!
この記事では、成功するhMailServerメールシステムの基本的な要件について学びました。それから、単一のマシンにhMailServerをインストールする方法を学びました。
hMailServerの新しいドメインの設定方法や、ゼロから新しいユーザーを追加する方法、または既存のActive Directoryアカウントから追加する方法について、ステップバイステップの手順をご覧いただきました。さらに、暗号化されたサーバー接続と非暗号化されたサーバー接続の違い、およびSSL証明書を使用してPOP3、SMTP、およびIMAPのTCP/IPポートを保護する方法について学びました。
ここで学んだのは、機能的なhMailServerメールサーバーの設定の基本です。この記事ではカバーしきれなかった、hMailServerで行うことができるさまざまなカスタマイズや設定があります。
高度な設定の一部には、スパムフィルターの添付、Webメールサーバーのインストール、およびスクリプトの使用が含まれます。hMailServerについてさらに学び、スキルを向上させるかどうかはあなた次第です。