. Ubuntu Server 22.04】Postfix SMTP-AUTH Dovecotでメールサーバを構築 | VPS Life
Ubuntu Server 22.04】Postfix SMTP-AUTH Dovecotでメールサーバを構築 | VPS Life
Ubuntu Server 22.04】Postfix SMTP-AUTH Dovecotでメールサーバを構築 | VPS Life

【Ubuntu Server 22.04】Postfix + SMTP-AUTH + Dovecotでメールサーバを構築

メールサーバが1台だけというシンプル環境での、送信側で行うSPFの設定方法をざっくりと説明します。メールサーバ構築手順 【Ubuntu Server 22.04】Postfix + SMTP-AUTH + Dovecotでメールサーバを構築.

vpslife.server-memo.net

ファイアウォール設定

通常のSMTPで使用する25番ポートの他に、Outbound Port25 Blocking(OP25B)用のポートして587番ポートも通信を許可しておきます。

$ sudo ufw allow 25/tcp $ sudo ufw allow 587/tcp $ sudo ufw allow 110/tcp $ sudo ufw allow 143/tcp

Postfixインストール

$ sudo apt update $ sudo apt install postfix

「General mail configuration type」を選択する画面が表示されます。

Dovecotインストール

$ sudo apt install dovecot-core dovecot-pop3d dovecot-imapd

Postfix設定

$ cd /etc/postfix/ $ sudo cp -p main.cf.proto main.cf $ sudo vi main.cf 設定内容 myhostname = vpslife.server-memo.net mydomain = vpslife.server-memo.net myorigin = $mydomain inet_interfaces = all mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases home_mailbox = Maildir/ smtpd_banner = $myhostname ESMTP unknown sendmail_path = /usr/sbin/postfix newaliases_path = /usr/bin/newaliases mailq_path = /usr/bin/mailq setgid_group = postdrop #html_directory = ### 行頭に#をつけてコメントにする #manpage_directory = ### 行頭に#をつけてコメントにする #sample_directory = ### 行頭に#をつけてコメントにする #readme_directory = ### 行頭に#をつけてコメントにする # SMTP AUTH用設定 以下の設定を最後に追加 smtpd_sasl_auth_enable = yes smtpd_sasl_type = dovecot smtpd_sasl_path = private/auth broken_sasl_auth_clients = yes # 2024-02-06 postfix 2.10以降からメールリレー制限の設定は新設された # smtpd_relay_restrictionsを使用するほうが良いとのことなので変更 smtpd_recipient_restrictions = permit_sasl_authenticated reject_unauth_destination permit_auth_destination permit_mynetworks smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated reject_unauth_destination smtpd_sasl_security_options = noanonymous smtpd_sasl_local_domain = $myhostname mydomainの設定ついて mydomain = vpslife.server-memo.net mydomain = server-memo.net master.cf $ sudo cp -p master.cf master.cf_$(date +%Y%m%d-%H%M%S) $ sudo vi master.cf submission inet n - y - - smtpd -o smtpd_sasl_auth_enable=yes -o smtpd_recipient_restrictions=permit_sasl_authenticated,reject 「-o」の前には空白が必要 設定反映

postfix check コマンドでmain.cfの書式に間違いが無いかの確認をします。

$ sudo postfix check warning: symlink leaves directory: /etc/postfix/./makedefs.out

Ubuntu Server 22.04 LTSでは発生しないのですが、Ubuntu Server 20.04 LTSでは下記のwarningが発生しますが、これは無視して構いません。

postfix/postfix-script: warning: symlink leaves directory: /etc/postfix/./makedefs.out newaliases $ sudo newaliases Postfix再起動 $ sudo systemctl restart postfix

Dovecot設定

  • /etc/dovecot/dovecot.conf
  • /etc/dovecot/conf.d/10-auth.conf
  • /etc/dovecot/conf.d/10-mail.conf
  • /etc/dovecot/conf.d/10-master.conf
  • /etc/dovecot/conf.d/10-ssl.conf
dovecot.conf $ cd /etc/dovecot/ $ sudo cp -p dovecot.conf dovecot.conf_$(date +%Y%m%d-%H%M%S) $ sudo vi dovecot.conf 設定内容 #listen = *, :: # 変更前 listen = *, :: # 変更後 10-auth.conf $ cd conf.d/ $ sudo cp -p 10-auth.conf 10-auth.conf_$(date +%Y%m%d-%H%M%S) $ sudo vi 10-auth.conf 設定内容 #disable_plaintext_auth = yes # 変更前 disable_plaintext_auth = no # 変更後 #auth_mechanisms = plain # 変更前 auth_mechanisms = plain login # 変更後 10-mail.conf $ sudo cp -p 10-mail.conf 10-mail.conf_$(date +%Y%m%d-%H%M%S) $ sudo vi 10-mail.conf 設定内容 mail_location = mbox:~/mail:INBOX=/var/mail/%u # 変更前 mail_location = maildir:~/Maildir # 変更後 10-master.conf $ sudo cp -p 10-master.conf 10-master.conf_$(date +%Y%m%d-%H%M%S) $ sudo vi 10-master.conf 設定内容 ### 変更前 # Postfix smtp-auth # unix_listener /var/spool/postfix/private/auth < # mode = 0666 #>### 変更後 # Postfix smtp-auth unix_listener /var/spool/postfix/private/auth 10-ssl.conf $ sudo cp -p 10-ssl.conf 10-ssl.conf_$(date +%Y%m%d-%H%M%S) $ sudo vi 10-ssl.conf 設定内容 ssl = yes # 変更前 ssl = no # 変更後 設定反映 $ sudo systemctl restart dovecot

Thunderbird(メールクライアント)の設定

メールアカウント追加 受信サーバ設定 IMAPの場合
  • プロトコル:IMAP
  • ホスト名:メールサーバ名
  • ポート番号:143
  • 接続の保護:自動検出
  • 認証方式:自動検出
  • ユーザ名:ユーザ名
POP3の場合
  • プロトコル:POP3
  • ホスト名:メールサーバ名
  • ポート番号:110
  • 接続の保護:自動検出
  • 認証方式:自動検出
  • ユーザ名:ユーザ名
送信サーバ設定
  • ホスト名:メールサーバ名
  • ポート番号:587
  • 接続の保護:自動検出
  • 認証方式:自動検出
  • ユーザ名:ユーザ名
ポート番号について

一般的なISPはスパムメール対策であるOutbound Port25 Blocking(OP25B)の設定がされていてるため、送信メールサーバ(Postfix)への接続は、サブミッションポート(587番ポート)を使用することになります。

設定の確認 警告画面が表示されます

今回の構築したPostfix + SMTP AUTH + Dovecotの環境は、メールクライアントとメールサーバ間の通信を暗号化していないので警告画面が表示されます。

tamohikoをフォローする

関連記事

【Ubuntu Server 22.04】PostfixとOpenDMARCでDMARC認証を行う方法

Ubuntu Server 22.04でPostfixとOpenDMARCを連携させて、メールを受信する際にDMARCの認証を行えるようにするための方法です。メールサーバ構築手順 【Ubuntu Server 22.04】Postfix +.

メールサーバのオープンリレー(第三者中継)確認方法 【Ubuntu Server 22.04】DovecotをSSL通信で暗号化

DovecotでSSL/TLS証明書を使用して、通信の暗号化を行う手順です。この他にもPostfix + Dovecotでメールサーバの構築手順を下記のページで説明しています。メールサーバ構築手順 【Ubuntu Server 22.04】.

Postfixの設定を確認する方法(postconf) 【Ubuntu Server 22.04】PostfixでTLSを有効化して通信を暗号化

PostfixでTLSを使用して通信の暗号化を有効化する方法です。この他にもPostfix + Dovecotでメールサーバの構築手順を下記のページで説明しています。メールサーバ構築手順 【Ubuntu Server 22.04】Postf.

【Ubuntu Server 22.04】Postfix + SMTP-AUTH + Dovecotでバーチャルメールボックス(仮想メールアドレス)を導入する方法

Postfix + SMTP-AUTH + Dovecotの環境で、バーチャルメールボックスを導入する方法です。バーチャルメールボックスについてバーチャルメールボックスとは、システムのユーザとは別にメールを送受信するための仮想アカウントを作.

rsync専用鍵ペアを作成してrsync+sshでデータバックアップをする 【Ubuntu Server 22.04】Nginx公式サイトのリポジトリを使用してインストール

コメント

コメントをどうぞ コメントをキャンセル このサイトについて 【Ubuntu】ConoHaのVPSを作成した時にはじめにやること

ConoHaのVPSでUbunutuサーバを作成したときにはじめにやったほうが良い事ConoHaのVPSでUbuntu Serverを作成した時に私が最初に行っている作業です。 一般ユーザの作成 SSHサーバ設定 (ポート番号変更・root…

vpslife.server-memo.net

Pythonの勉強で作成したWebサービス 猫の画像が時間で変わる時計 https://clock.server-memo.net

Mastodon
  1. Loading Mastodon feed.
最近の投稿
  • 【Astro入門】ブログとその他の記事を分ける!複数のコンテンツコレクションを作成・管理する方法
  • 【Astro入門】トップページに新着記事一覧を表示!getCollectionを使ったデータ取得と並び替え
  • 【Ubuntu】パッケージの依存関係を調べる方法(apt depends)
  • 【Astro入門】ブログ記事と画像の最適なディレクトリ構成!「1記事1フォルダ」管理とslug設定
  • 【Astro入門】コンテンツコレクションでMarkdown記事を管理・表示する方法とURL(パーマリンク)の最適化
人気記事(過去7日) 【Ubuntu】ユーザのパスワードを変更する方法 Ubuntuでパッケージを削除(アンインストール)する方法 Ubuntuを再起動・停止(シャットダウン)させる方法 Ubuntuでファイルやディレクトリを削除する方法(rmコマンド) 【Ubuntu】ファイルやディレクトリをコピーする方法(cp) 最近のコメント
  • 【Ubuntu】Nginx+MariaDB+PHP7.4+php-fpmでwordpressをインストール に tamohiko より
  • 【Ubuntu】Nginx+MariaDB+PHP7.4+php-fpmでwordpressをインストール に shin2 より
  • 【Ubuntu】Nginx+MariaDB+PHP7.4+php-fpmでwordpressをインストール に tamohiko より
  • 【Ubuntu】Nginx+MariaDB+PHP7.4+php-fpmでwordpressをインストール に shin2 より
  • 【Ubuntu】Nginx+MariaDB+PHP7.4+php-fpmでwordpressをインストール に tamohiko より
📎📎📎📎📎📎📎📎📎📎