自社メールで送信して信用力アップ
実現する機能
自宅にメールサーバーを構築するのは、受信だけなら問題ないのですが、送信するとなると困難です。危いメール扱いされるので、どこのメールサーバーも着信を拒否するからです。
こういう現状でも自宅にメールサーバーを構築するメリットは、
フリーメールだと身元を怪しまれるが、自社メールだと信用してもらえる
添付ファイルの制限も大幅に緩和できる
yahoo、gmail、レンタルサーバーに送られた自分宛のメールすべてを自宅サーバーに転送させて一度に確認できる
ことです。
構築するサーバーは、送信メールサーバー(SMTPサーバー)と受信メールサーバー(POP/IMAPサーバー)です。送信メールサーバーにはPostfix、受信メールサーバーにはDovecotを採用しています。
自宅のメールサーバーは、SMTP-Auth機能を構築してインターネットでメールを送信しています。
※SMTP-Auth機能とは、メール送信時にインターネットプロバイダのユーザ名とパスワードで認証を行なう機能で、迷惑メールの不正中継に利用されないためのものです。softbank光をプロバイダで使っていますが、SMTP-Auth機能が使えなかったので、Gmailを使って外部へメール送信できるようにしています。受信もGmailに来るので、メールの確認も便利です。
以下は、その備忘録です。
WebサーバーはNginxなので、Apacheご利用の方は別の設定が必要になります。ご注意ください。
1.導入の前提となる環境
1.Postfixの導入手順
GNOME端末でviコマンドを使う方法を理解しておくこと。以下の記述ではGNOME端末で表示された内容を表示しています。紫色はキーボードから入力するコマンド(コピペした方が楽ですが、コマンドは覚えられません)、緑はコマンドや処理内容の説明、白は自動表示する部分、赤は注意書きです。
tuは私のユーザー名、ufuso.dip.jpは私のドメイン名ですので、ご自分のものに置き換えて設定してください。
(1)Postfix設定
#ユーザーをrootに変更 [tu@ufuso ~]$ su – #rootのパスワードを入力(パスワードは表示されない) パスワード: #Postfixのインストール #Postfix設定ファイル編集。 # INTERNET HOST AND DOMAIN NAMES # The mydomain parameter specifies the local internet domain name. # SENDING MAIL # RECEIVING MAIL #… # STANDARD_CONFIGURATION_README). #自宅や自社のネットワークの範囲を明示し、迷惑メールなどに悪用されないようにする。(192.168.24.0/24部分はお宅用に変更のこと) # DELIVERY TO MAILBOX # SHOW SOFTWARE VERSION OR NOT #以下を最終行へ追加(SMTP-Auth設定) #postfixの自動起動設定&再起動 [root@ufuso ~]# systemctl enable --now postfix
Created symlink /etc/systemd/system/multi-user.target.wants/postfix.service → /usr/lib/systemd/system/postfix.service. |
2.Dovecotの導入手順
(1)Dovecotインストール
#Dovecotインストール [root@ufuso ~]# dnf -y install dovecot インストール済み: dovecot-1:2.2.36-5.el8_0.1.x86_64 clucene-core-2.3.3.4-31.20130812.e8e3d20git.el8.x86_64 完了しました! #dovecot.confの設定 #10-auth.confの設定 # Space separated list of wanted authentication mechanisms: #10-mail.confの設定 #10-master.confの設定 #10-ssl.confの設定 #Dovecot再起動と自動起動設定 [root@ufuso ~]# systemctl enable --now dovecot
Created symlink /etc/systemd/system/multi-user.target.wants/dovecot.service → /usr/lib/systemd/system/dovecot.service. |
3.ssl&tlsの設定(本サイトのssl証明書の取得方法はこちら)
#main.cfの編集
[root@ufuso ~]# vi /etc/postfix/main.cf
…
…
# The full pathname of a file with the Postfix SMTP server RSA certificate
# in PEM format. Intermediate certificates should be included in general,
# the server certificate first, then the issuing CA(s) (bottom-up order).
#
#下行の行頭にに#を付加して無効にする
#smtpd_tls_cert_file = /etc/pki/tls/certs/postfix.pem
# The full pathname of a file with the Postfix SMTP server RSA private key
# in PEM format. The private key must be accessible without a pass-phrase,
# i.e. it must not be encrypted.
#
#下行の行頭にに#を付加して無効にする
#smtpd_tls_key_file = /etc/pki/tls/private/postfix.key
…
…
#最下行に追記 (cert、keyファイルは自身が取得した証明書に置き換え)
smtpd_use_tls = yes
smtp_tls_mandatory_protocols = !SSLv2, !SSLv3
smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3
smtpd_tls_cert_file = /etc/ssl/certificate.crt
smtpd_tls_key_file = /etc/ssl/private.key
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
#master.cfの編集
[root@ufuso ~]# vi /etc/postfix/master.cf
# ==========================================================================
# service type private unpriv chroot wakeup maxproc command + args
# (yes) (yes) (yes) (never) (100)
# ==========================================================================
#以下のこの色の#を削除する
smtp inet n – n – – smtpd
#smtp inet n – n – 1 postscreen
#smtpd pass – – n – – smtpd
#dnsblog unix – – n – 0 dnsblog
#tlsproxy unix – – n – 0 tlsproxy
#submission inet n – n – – smtpd
#-o syslog_name=postfix/submission
# -o smtpd_tls_security_level=encrypt
#-o smtpd_sasl_auth_enable=yes
# …
#smtps inet n – n – – smtpd
#-o syslog_name=postfix/smtps
#-o smtpd_tls_wrappermode=yes
#-o smtpd_sasl_auth_enable=yes
#10-ssl.confの設定
[root@ufuso ~]# vi /etc/dovecot/conf.d/10-ssl.conf
# PEM encoded X.509 SSL/TLS certificate and private key. They’re opened before
# …
# certificate, just make sure to update the domains in dovecot-openssl.cnf
#行頭に#を付加
#ssl_cert = </etc/letsencrypt/live/ufuso.dip.jp/fullchain.pem
#行頭に#を付加
#ssl_key = </etc/letsencrypt/live/ufuso.dip.jp/privkey.pem
#Let’s Encrypt から取得したサーバ証明書の場所を明記
ssl_cert =</etc/ssl/certificate.crt
#Let’s Encrypt から取得した秘密鍵の場所を明記
ssl_key = </etc/ssl/private.key
#証明書に対するSELinuxポリシーの変更
[root@ufuso ~]# restorecon -v /etc/ssl/certificate.crt
[root@ufuso ~]# restorecon -v /etc/ssl/private.key
#postfixとdovecot再起動
[root@ufuso ~]# systemctl restart postfix dovecot
4.OP25B対策(SMTP-Auth機能)
(1)ポート465番(SMTP)、587番と993番(IMAP)のOPEN
ルーター側の設定でポート465番、587番と993番をOPENにします。
※ルーターの設定は各ルーターのマニュアルまたはソフトバンク光の場合はこちらを参照のこと。
a ここをクリックして、下図の画面を表示させ、赤枠1に構築したメールサーバーのドメイン名を入力し、赤枠2にポート番号「465」を入力して、赤枠3にチェックを入れ、赤枠4の「Portチェック実行」をクリック。図はクリックすれば拡大表示される。以下同じ
b 赤枠1でアクセスできていることを確認して、赤枠2の「前のページへ戻る」をクリック。587番と993番についても同じ手順を繰り返す。
(2)メールの送信テスト
#メールできるかをテストするため、mailxをインストール。 [root@ufuso ~]# dnf -y install mailx インストール済み: mailx-12.5-29.el8.x86_64 完了しました! #メールボックスに Maildir を設定 This is Test. |
(3)自社のアドレスでメールを送信する方法の設定
(イ)ここをクリックして自分のGmailを開き、画面右上にある赤枠1の歯車のアイコンをクリックし、表示される一覧から赤枠2の「設定」をクリック
(ロ)赤枠の「アカウントとインポート」をクリック
(ハ)赤枠の「他のメールアドレスを追加」をクリック
(ニ)赤枠1に自宅メールサーバーで使っている自分のメールアドレスを入力し、「エイリアスとして使います。」のチェックを外し、赤枠2の「次のステップ」をクリック。名前欄には、あなたのGmailに登録した名前が表示されます
(ホ)赤枠1に自宅のSMTPサーバー名、自宅サーバー上のあなたのユーザー名とパスワードを入力し、ポート番号は465を選択して、赤枠2の「アカウントを追加」をクリック
(ヘ)登録したメールアドレス宛に「確認コード」とリンク先が送られてくるので、コードをメモるかリンク先をクリック
(ト)赤枠1に従いリンク先をクリックするか、赤枠2に従い確認コードを入力して「確認」をクリックする
(チ)赤枠に送信に使ったメールアドレスが表示されていれば成功
(6)再度メールの送信テスト
#メールできるかをテスト。自分のヤフーメール宛てに送信してみた。「ufuso.dip.jp」はあなたのドメイン名に変更すること。 [root@ufuso ~]# echo “自宅サーバー万歳” | mail -s “自宅サーバーでメール送信” -r xx@ufuso.dip.jp xx@yahoo.co.jp |
以上