独自ドメインのサーバー(CentOS 8)でGmailを使用する場合の設定

Date:

Share post:

CentOS8 で WebminとVirtualminが入ってる前提です。
サーバーの証明書がちゃんと設定されていなかったり、メールアドレスで使用する独自ドメインと設定されている送受信サーバーの証明書の
ドメインが異なる場合、Gmailの設定でエラーになるようです。

hogehoge.comの独自ドメインのメールアドレスをGmailで設定して使用するためにhogehoge.comのSSL証明書を発行して設定します。

POP(110番)のポートの接続を許可するために 10-ssl.confを編集

$ vi /etc/dovecot/conf.d/10-ssl.conf

ssl = requiredを変更

ssl = yes

ちなみに
ssl = required: SSL/TLS(995番)のみ接続
ssl = yes :SSL/TLS(995番)とPOP(110番)の接続
ssl = no :POP(110番)のみ接続

Virtualminで仮想サーバーを作成してSSLの証明書を発行。今回は無料のSSL、Let’s Encryptを使用。
サーバー構成->SSL証明書->暗号化しましょう ー>証明書をリクエストをクリックするだけ。

成功するとSSLの証明書フィルが以下に出力されます。(現在の証明書タブでファイルのパスは確認できます。)
SSL証明書:/home/hogehoge/ssl.cert
SSL秘密鍵:/home/hogehoge/ssl.key
この時、SSL証明書 + 中間証明書:/home/hogehoge/ssl.combined のファイルも出力されていますので、設定時にはssl.certではなくてssl.combinedを使用します。

Postfixのmain.cfを設定。証明書のパスを設定します。(virtualminの最新をインストールするとその他はデフォルトで設定されてる?ようです。)

$ vi /etc/postfix/main.cf
smtpd_tls_cert_file = /home/hogehoge/ssl.combined
smtpd_tls_key_file = /home/hogehoge/ssl.key

Dovecotの10-ssl.confも再度編集。証明書のパスを設定します。

$ vi /etc/dovecot/conf.d/10-ssl.conf
ssl_cert = </home/showahd/ssl.combined
ssl_key = </home/showahd/ssl.key

Postfixとdovecotを再起動

$ systemctl restart postfix
$ systemctl restart dovecot

SSLがちゃんと通ってるか確認します。私の場合は自分のMacから

$ openssl s_client -connect hogehoge.com:587 -starttls smtp

問題なければ、こんな感じになります。

略
depth=2 O = Digital Signature Trust Co., CN = DST Root CA X3
verify return:1
depth=1 C = US, O = Let's Encrypt, CN = Let's Encrypt Authority X3
verify return:1
depth=0 CN = hogehoge.com
verify return:1
---
Certificate chain
 0 s:/CN=showahd.co.jp
   i:/C=US/O=Let's Encrypt/CN=Let's Encrypt Authority X3
 1 s:/C=US/O=Let's Encrypt/CN=Let's Encrypt Authority X3
   i:/O=Digital Signature Trust Co./CN=DST Root CA X3
---
略

エラーの場合、例えば中間証明書が入ってなかったりすると

略
depth=0 CN = hogehoge.com
verify error:num=20:unable to get local issuer certificate
verify return:1
depth=0 CN = hogehoge.com
verify error:num=21:unable to verify the first certificate
verify return:1
---
Certificate chain
 0 s:/CN=hogehoge.com
   i:/C=US/O=Let's Encrypt/CN=Let's Encrypt Authority X3
---
略

これで、Gmailで独自ドメインのメールを設定する時にエラーで跳ねられないはず。。。

あとこれだとせっかくVirtualmin使ってるのにドメイン1つしか設定できないのはちょっとね〜。
Postfix3.7からSNI設定できるようなので(Dovecotもできるようです)、複数ドメインのPostfix,DovecotのSSL設定ができると嬉しいかも。

Related articles

EC-CUBE 4系のプラグイン開発について その...

前回、プラグインを一旦有効化させて管理...

EC-CUBE 4系のプラグイン開発について その...

以前から作成したいと考えていたのですが...

Laravel Filamentを使用した管理画面...

前回Breezeをインストールしたこと...

Laravel Filamentを使用した管理画面...

前回、filamentでのリソース作成...